您如何在iptables中编辑规则?

CMS*_*CSS 3 debian iptables

我在iptables中有一条规则如下:

DROP       all  --  5.158.238.32         anywhere 
Run Code Online (Sandbox Code Playgroud)

但我想将其更改为:

DROP       all  --  5.158.0.0/16         anywhere
Run Code Online (Sandbox Code Playgroud)

我该怎么做呢?

我找到了有关如何添加规则的信息,但这似乎将规则附加到列表的末尾,由于某种原因,该规则只有在更高级别时才会生效。

我还找到了有关编辑文件的信息,但是我的发行版(默认)似乎没有文件,但文章中提到的任何位置都没有-我可以在某处编辑文件吗?

朝正确方向的任何指针将不胜感激。

干杯

Joe*_*l C 8

运行iptables -L --line-numbers,它将为您提供所有当前规则及其规则编号。一旦确定了要替换的规则的行号,请运行iptables -R <chain> <rulenum> <new rule def>。在您的情况下,第一个输出将是这样的(被截断):

Chain INPUT (policy ACCEPT)
num  target     prot opt source       destination
....
12   DROP       all  --  5.158.238.32 anywhere
...
Run Code Online (Sandbox Code Playgroud)

并替换它,您将运行:

iptables -R INPUT 12 -s 5.158.0.0/16 -j DROP
Run Code Online (Sandbox Code Playgroud)

希望这是有道理的。祝好运!