iptables阻止单端口exception的端口范围

我有两个规则。 首先阻止范围内的所有端口:

-A INPUT -m状态 – 状态新-m tcp -p tcp – 匹配多端口–dport 200:65535 -j DROP

然后在这个范围内打开一个:

-Ainput-i eth0 -p tcp –dport 5901 -m状态 – 状态NEW,ESTABLISHED -j ACCEPT

但它不起作用。 任何人知道为什么

IIRC iptables规则是依赖于顺序的:如果第一条规则匹配,它不会再parsing。 颠倒顺序,你应该达到你想要做的。

扩展:并不总是如此,一些规则(fe -j LOG )允许数据包处理进一步进行。 但是常见的ACCEPTREJECT等规则不是。 最好的,如果你看到iptables就好像它是一种过程式编程语言:规则被尝试匹配,并且总是以线性顺序执行。