iptables, 규칙 순서-올바르게 이해합니까?


17

sshd가 수신하는 포트 22 외부의 연결과 ICMP 요청 만 수락하도록 VPS를 구성하고 싶습니다. 외부로부터의 모든 것은 거절되어야한다. 서버 내부에서 모든 것이 허용되어야합니다. 다음 규칙이 원하는 행동을합니까?

iptables -A INPUT --jump ACCEPT --protocol all   --source 127.0.0.1
iptables -A INPUT --jump ACCEPT --protocol tcp   --dport 22
iptabels -A INPUT --jump ACCEPT --protocol icmp
iptables -A INPUT --jump ACCEPT --match state    --state ESTABLISHED,RELATED
iptables -A INPUT --jump REJECT --protocol all

수락 규칙이 마지막 전체 거부보다 ​​"승리"될지 확실하지 않습니다.


1
--source 127.0.0.1패킷을 수락해도 안전한지 확인하는 데 사용해서는 안됩니다 .
Bruno Bronosky

답변:


20

당신이 올바른지.

규칙은 파일의 라인 순서로 처리됩니다. 규칙과 일치하는 경우 귀하의 경우 해당 IP 패킷에 대해 다른 규칙이 처리되지 않습니다.

http://en.wikipedia.org/wiki/Iptables

체인의 각 규칙에는 일치하는 패킷 사양이 포함됩니다. 또한 대상 (확장에 사용됨) 또는 평결 (내장 결정 중 하나)이 포함될 수 있습니다. 패킷이 체인을 통과함에 따라 각 규칙이 차례로 검사됩니다. 규칙이 패킷과 일치하지 않으면 패킷이 다음 규칙으로 전달됩니다. 규칙이 패킷과 일치하면 규칙은 대상 / 판정에 의해 표시된 조치를 취하여 패킷이 체인을 따라 계속 허용되거나 그렇지 않을 수 있습니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.