我的 CSF 上有一个重定向规则,如下所示;
17.1.1.13|80|27.5.5.22|80|tcp
17.1.1.13
是我的防火墙 (csf),也是27.5.5.22
我的网络服务器地址。因此每个人都可以通过防火墙访问我的网站。阻止 CSF (iptables) 上的重定向规则
我一直尝试阻止50.30.0.0/16
CIDR 块,它已添加到我的csf.deny
文件中。
44.5.6.7
现在,如果我尝试使用IP 地址访问网站,我可以。虽然50.30.0.1
被阻止,但我可以使用 IP 地址访问网站。我想50.30.0.1
在任何情况下都阻止。
我的 iptables 相关行如下所示。我该怎么办?
Chain DENYIN (1 references)
num pkts bytes target prot opt in out source destination
1 0 0 LOGDROPIN all -- !lo * 50.30.0.0/16 0.0.0.0/0
Chain DENYOUT (1 references)
num pkts bytes target prot opt in out source destination
1 0 0 LOGDROPOUT all -- * !lo 0.0.0.0/0 50.30.0.0/16
Chain PREROUTING (policy ACCEPT 7 packets, 336 bytes)
num pkts bytes target prot opt in out source destination
1 0 0 REDIRECT tcp -- !lo * 50.30.0.0/16 0.0.0.0/0
2 0 0 REDIRECT tcp -- !lo * 50.30.0.0/16 0.0.0.0/0
3 0 0 DNAT tcp -- !lo * 0.0.0.0/0 17.1.1.13
4 0 0 DNAT tcp -- !lo * 0.0.0.0/0 17.1.1.13
Chain POSTROUTING (policy ACCEPT 6 packets, 699 bytes)
num pkts bytes target prot opt in out source destination
1 0 0 SNAT tcp -- * !lo 0.0.0.0/0 27.5.5.22
2 0 0 SNAT tcp -- * !lo 0.0.0.0/0 27.5.5.22
答案1
当您使用 -A(用于APPEND
)iptables 命令时,您的规则将添加到表的末尾。
规则的评估方式是从第一个到最后一个,任何导致决策(ACCEPT
,REJECT
,DENY
)的匹配规则都会停止对任何后续规则的评估。
所以在这里,发生的情况是,你的DROP
规则永远不会重要,因为如果iptables
评估它,它无论如何都会进入DROP
政策。
ACCEPT
您需要在您希望相应 IP 地址无法访问的任何规则之前添加您的规则。我猜您的情况是第一条规则。
这将是类似
iptables -I INPUT -s 5.254.0.0/16 -j DROP
它会将规则添加到表的开头,因此会先考虑该规则,而忽略任何匹配 IP 的其余规则,这些数据包将被丢弃。
请注意,如果您需要更精确地说明规则插入的位置,您可以在 后指定位置编号-I
。