![我该如何删除这些 iptables 规则?](https://linux22.com/image/191522/%E6%88%91%E8%AF%A5%E5%A6%82%E4%BD%95%E5%88%A0%E9%99%A4%E8%BF%99%E4%BA%9B%20iptables%20%E8%A7%84%E5%88%99%EF%BC%9F.png)
我盲目地向 iptables 添加了一些规则,现在不知道如何删除它们。其内容如下:
sudo iptables -A FORWARD -i eth0 -o wg0 -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
sudo iptables -A FORWARD -i wg0 -o eth0 -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
sudo iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 6667 -j DNAT --to-destination 192.168.4.2
sudo iptables -t nat -A POSTROUTING -o wg0 -p tcp --dport 6667 -d 192.168.4.2 -j SNAT --to-source 192.168.4.1
我不知道在该选项下这些会是什么样子iptables -L
,所以我不知道应该使用哪个链条和号码。有人可以给我一些提示,说明这些在 -L 输出下会变成什么,以便我可以相应地删除它们吗?非常感谢!
答案1
$ sudo iptables -L
此命令(上面)不会显示您刚刚添加的所有规则。例如,该命令不会显示 POSTROUTING 链。您应该另外尝试以下命令:
$ sudo iptables -t nat -L -n -v --line-number
要轻松删除所有四个规则,请将大写“A”(追加)替换为大写“D”(删除)
$ sudo iptables -D FORWARD -i eth0 -o wg0 -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
$ sudo iptables -D FORWARD -i wg0 -o eth0 -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
$ sudo iptables -t nat -D PREROUTING -i eth0 -p tcp --dport 6667 -j DNAT --to-destination 192.168.4.2
$ sudo iptables -t nat -D POSTROUTING -o wg0 -p tcp --dport 6667 -d 192.168.4.2 -j SNAT --to-source 192.168.4.1