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

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

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

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

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



답변

이것은 올바른 방법입니다.

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

예로서. 여기에 출처 .


답변

잘못 썼지 만 (잊어 버렸습니다 --dport) 당신이들은 것은 옳습니다 .

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

-m multiport --dports예를 들어 열려는 범위가 연속적이지 않은 경우에만 필요합니다. 예를 들어 -m multiport --dports 80,443, 사이에있는 범위가 아닌 HTTP와 HTTPS 열립니다 .

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


답변

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

푼다.