撤消端口转发

撤消端口转发

我需要将所有对端口 80 的请求转发到 8020。我用 Google 搜索了一下,得到了:

iptables -t nat -I PREROUTING --source 0/0 --destination 0/0 -p tcp --dport 80 -j REDIRECT --to-ports 8020

现在,如果我将来必须撤消它,我该怎么办(除了重新启动系统)?

答案1

只需删除规则:

iptables -t nat -D PREROUTING --source 0/0 --destination 0/0 -p tcp --dport 80 -j REDIRECT --to-ports 8020

答案2

当我想删除 iptable 规则时,我发现完全重建它是一件很麻烦的事。相反,我会列出带有行号的规则,然后按行号删除。例如:

iptables -t nat -L --line-numbers

给出如下输出:

Chain PREROUTING (policy ACCEPT)
num  target     prot opt source               destination         
1    REDIRECT   tcp  --  0.0.0.0/0            0.0.0.0/0           tcp dpt:80 redir ports 8020 

然后按号码删除:

iptables -t nat -D PREROUTING 1

警告:删除一行时,下面的所有行都会获得一个新的行号。例如,如果您有如下规则:

1 rule A
2 rule B
3 rule C

然后删除规则 2,则会得到:

1 rule A
2 rule C

答案3

我想知道是否可以使用 vim

iptables-save > editme

vim editme # remove the rule you dont want

iptables-restore < editme

答案4

您还可以使用此代码删除整个端口转发规则

sudo iptables -P FORWARD DROP

相关内容