2016-10-18 3 views
0

세션 저장을 위해 웹 서버 (Debian/Nginx/Gunicorn)에서 Redis를 실행 중이며 Redis 서버가 해킹 당했다고 생각하는 이유가 있습니다. 웹 서버에 대해 다른 컴퓨터에서 "redis-cli -h (HOST IP)"명령을 실행하면 콘솔에 들어가 명령을 실행할 수 있기 때문에 가능합니다. 두 가지 질문이 있습니다. 첫째, 아래에 표시된 것처럼 iptables 파일에 새 섹션을 추가하면 웹 서버 자체를 제외한 모든 시스템에서 Redis 서버에 대한 액세스를 올바르게 차단할 수 있습니까? 위가 올 경우 레디 스 나는 여전히 내의 iptables의 IPv6 버전에서 127.0.0.1을 사용하거나 내가 ":: 1"을 사용할 필요가 할 수있는, 6379.로컬 호스트에서만 연결 허용을 허용 하시겠습니까?

*filter 

-A INPUT -i lo -j ACCEPT 
-A INPUT ! -i lo -s 127.0.0.0/8 -j REJECT 

# Allow pings, SSH, and web access 
-A INPUT -p icmp -m state --state NEW --icmp-type 8 -j ACCEPT 
-A INPUT -p tcp --dport 22 -m state --state NEW -j ACCEPT 
-A INPUT -p tcp --dport 80 -m state --state NEW -j ACCEPT 
-A INPUT -p tcp --dport 443 -m state --state NEW -j ACCEPT 

# NEW SECTION... 
# IS THIS CORRECT? 
-A INPUT -p tcp --dport 6379 -j DROP 
-A INPUT -p tcp -s 127.0.0.1 --dport 6379 -m state --state NEW -j ACCEPT 
# END NEW SECTION 

-A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT 
-A INPUT -j REJECT 
-A FORWARD -j REJECT 

COMMIT 

두 번째 기본 포트에서 실행?

감사합니다.

답변

2

당신은 Redis configuration file을 통해이 작업을 수행 할 수 있어야한다 :

# By default Redis listens for connections from all the network interfaces 
# available on the server. It is possible to listen to just one or multiple 
# interfaces using the "bind" configuration directive, followed by one or 
# more IP addresses. 
# 
# Examples: 
# 
# bind 192.168.1.100 10.0.0.1 
# bind 127.0.0.1 
+0

내가 또 다른 문제를 해결 붙어 있지만 최대한 빨리 그것을 해결했습니다, 나는 답을 구현하는 것, 그것이 작동 테스트하는 것이, 그리고 당신에게 신용을 줘. 당신의 도움을 주셔서 감사합니다! – William

관련 문제