我最近在我的服务器上屏蔽了来自中国的整个 IP 地址范围,但我必须允许一个或几个。然而,我对 iptables 规则优先级不太熟悉。
针对这种特殊情况,我的规则如下:
Chain num pkts bytes target prot opt in out source destination
ALLOWIN 1 0 0 ACCEPT all -- !lo * 223.252.213.134 0.0.0.0/0
ALLOWOUT 1 0 0 ACCEPT all -- * !lo 0.0.0.0/0 223.252.213.134
CC_DENY 5 251 15060 DROP all -- * * 223.252.192.0/18 0.0.0.0/0
这会按照我期望的方式发挥作用吗?
首先允许 223.252.213.134,然后拒绝范围 223.252.192.0/1?
答案1
是的,iptables 规则是根据第一次匹配来应用的。
答案2
它会按照你希望的方式运作吗?是的..如果您已按正确的顺序排列链条等等 - 看起来您已经这样做了。
但是你可以测试一下,这样你就可以更确定了,通过临时更改 DENY,这样就不会说 223.252.192.0/18 而是说 0.0.0.0/0
一旦您完成了临时更改,如果您允许的 IP 有效,而其他 IP 无效,您就会知道您做对了!
一旦确定,就将其改回来。