如何从 iptables 中删除指定的 IP 地址?

如何从 iptables 中删除指定的 IP 地址?

我可以从指定的IP地址访问我的CentOS服务器,当我使用VPN时,一切正常。

当我跑步时iptables-save | grep ip.add.re.ss

-A INPUT -s ip.add.re.ss/32 -j ACCEPT
-A DENYIN -s ip.add.re.ss/32 ! -i lo -j DROP

但是,当删除具有该行的链中的规则时,输出行为:

iptables -L -n --line | grep "ip.add.re.ss"

我得到了行号,但无法删除该 DROP 规则:

30   ACCEPT     all  --  ip.add.re.ss         0.0.0.0/0
201  DROP       all  --  ip.add.re.ss         0.0.0.0/0

和:

iptables -D INPUT -s ip.add.re.ss -j DROP

我得到这个作为输出:

Bad rule (does a matching rule exist in that chain?).

如何从 iptables 防火墙中删除 DROP 规则?

答案1

问题是规则不在链中INPUT。如果您在输出中注意到iptables-save它在链中DENYIN。另外,您还缺少! -i lo规则的一部分。要删除它,请使用

iptables -D DENYIN -s ip.add.re.ss ! -i lo -j DROP

相关内容