撤消 iptables 修改

撤消 iptables 修改

我运行以下iptables命令来创建黑名单规则,但使用了错误的端口:

iptables -A INPUT -p tcp --dport 22 -m state --state NEW -m recent --set --name SSH
iptables -A INPUT -p tcp --dport 22 -m state --state NEW -j SSH_WHITELIST
iptables -A INPUT -p tcp --dport 22 -m state --state NEW -m recent --update --seconds 60 --hitcount 4 --rttl --name SSH -j ULOG --ulog-prefix SSH_brute_force
iptables -A INPUT -p tcp --dport 22 -m state --state NEW -m recent --update --seconds 60 --hitcount 4 --rttl --name SSH -j DROP

如何撤消上述操作,然后为不同的端口重做?

答案1

使用 iptables -D ... 删除条目。

iptables -D INPUT -p tcp --dport 22 -m state --state NEW -m recent --set --name SSH
iptables -D INPUT -p tcp --dport 22 -m state --state NEW -j SSH_WHITELIST
iptables -D INPUT -p tcp --dport 22 -m state --state NEW -m recent --update --seconds 60 --hitcount 4 --rttl --name SSH -j ULOG --ulog-prefix SSH_brute_force
iptables -D INPUT -p tcp --dport 22 -m state --state NEW -m recent --update --seconds 60 --hitcount 4 --rttl --name SSH -j DROP

答案2

-D使用而不是运行相同的命令-A

或者,如果您想完全重置 iptables,请使用 刷新所有内容iptables -F

答案3

只要您没有运行该iptables save命令,您所要做的就是重新启动或重新加载 iptables 服务。或者,您可以按照 Bonsi Scott 所说的操作并删除规则——但需要注意。第一次运行:

#iptables -L -n -v --line-numbers

要获取规则编号,您所要做的就是按编号删除规则:

#iptables -D INPUT <rule number>

相关内容