iptables에서 다양한 포트를 여는 올바른 방법은 무엇입니까

iptables에서 다양한 포트를 여는 올바른 방법은 무엇입니까

나는 다음과 같은 조언을 하는 기사를 보았습니다.

iptables -A INPUT -p tcp 1000:2000 -j ACCEPT

그리고 위의 방법은 작동하지 않으며 iptables는 옵션을 사용하여 여러 포트 선언만 지원한다고 말하는 사람들도 있습니다 --multiport.

iptables로 많은 포트를 여는 올바른 방법이 있습니까?

답변1

올바른 방법은 다음과 같습니다.

iptables -A INPUT -p tcp --match multiport --dports 1024:3000 -j ACCEPT

예로서. 원천여기.

답변2

비록 당신이 잘못 썼더라도 당신이 들은 것은 옳습니다(잊었습니다 --dport).

iptables -A INPUT -p tcp --dport 1000:2000TCP 포트 1000부터 2000까지의 인바운드 트래픽을 엽니다.

-m multiport --dports열려는 범위가 연속적이지 않은 경우에만 필요합니다(예 -m multiport --dports 80,443: HTTP 및 HTTPS가 열립니다).오직- 그 사이에는 없습니다.

규칙의 순서는 중요하며 (Iain이 다른 곳에서 언급했듯이) 추가한 규칙이 효과적인 위치에 있는지 확인하는 것이 귀하의 임무입니다.

답변3

TL; DR 하지만...

다중 포트 모듈이 없는 순수 포트 범위: iptables -A INPUT -p tcp --dport 1000:2000 -j ACCEPT

동등한 다중 포트 예: iptables -A INPUT -p tcp -m multiport --dports 1000:2000 -j ACCEPT

...그리고 다중 범위의 다중 포트에 대한 변형(예, 이것도 가능합니다): iptables -A INPUT -p tcp -m multiport --dports 1000,1001,1002:1500,1501:2000 -j ACCEPT

...그리고 부정이 포함된 동등한 다중 포트 다중 범위의 예: iptables -A INPUT -p tcp -m multiport ! --dports 0:999,2001:65535 -j ACCEPT

푼을 드세요.

답변4

Iptables 파일에 항목을 직접 추가하는 다른 방법이 있습니다. 위치/etc/sysconfig/iptables

-A INPUT -p tcp -m multiport --dports 1024:3000 -m state --state NEW -j ACCEPT

그 후 iptable 서비스를 다시 시작하십시오.

관련 정보