我正在尝试从我们的服务器中删除一个被阻止的 IP。
405 35964 DROP all -- !lo * IP ADDRESS 0.0.0.0/0
19 988 DROP all -- * !lo 0.0.0.0/0 24.7.56.95
root@host01 [~]# iptables -D INPUT 35964
iptables: Index of deletion too big
root@host01 [~]# iptables -D INPUT 405
iptables: Index of deletion too big
root@host01 [~]# iptables -D INPUT -s IPADDRESS -j ACCEPT
iptables: Bad rule (does a matching rule exist in that chain?)
发生了什么事?!Google 没有帮助,因为我一直发现相同的行给出了相同的错误。
答案1
运行iptables-save|grep 24.7.56.95
以获取用于启用该块的确切规则命令。它将类似于:
-A INPUT ! -i lo -s 24.7.56.95 -j DROP
采取此命令,将 替换-A
为-D
并运行它iptables
:
iptables -D INPUT ! -i lo -s 24.7.56.95 -j DROP
等一下!
答案2
用于iptables -D INPUT 1
删除列表中的第一条规则,或iptables -F INPUT
删除全部規則。
405 和 35964 分别是数据包数和字节数。正如标头所示。
$ sudo iptables -v -L 链输入(策略接受 1 个数据包,155 字节) pkts 字节数 目标 协议 选择加入 退出 源 目标
用于iptables -L --line-numbers
查看实际的规则编号。
答案3
检查 csf 中是否有针对该 IP 地址的阻止
/etc/csf 目录
如果找到,删除该 csf 规则
脑脊液
它还将自动删除 iptable 规则。
您可以使用命令 csf -g 检查 IP 状态
如果Ip表中没有规则,则结果如下:
链数 数据包字节数 目标 协议 选择加入 退出 源 目标
在 iptables 中未找到匹配项
您也可以在 IP 表中检查相同内容。