你如何在iptables中编辑规则?

时间:2015-11-01 18:56:01

标签: debian iptables

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

DROP       all  --  5.158.238.32         anywhere 

但我想将其改为:

DROP       all  --  5.158.0.0/16         anywhere

我该怎么做?

我已经找到了有关如何添加规则的信息,但这似乎会将规则附加到列表的末尾,并且出于某种原因,除非规则更高,否则该规则不会生效。<\ n / p>

我也发现有关编辑文件的信息,但我的发行版(debain)似乎没有文件中提到的任何文件位置 - 是否有可以在某处编辑的文件?< / p>

非常感谢任何正确方向的指示。

干杯

1 个答案:

答案 0 :(得分:4)

运行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
...

要替换它,你可以运行:

iptables -R INPUT 12 -s 5.158.0.0/16 -j DROP

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