我该如何删除这些 iptables 规则?

我该如何删除这些 iptables 规则?

我盲目地向 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

相关内容