一个非常基本的问题:如何在 IPTABLES 上将规则添加到 PREPEND 而不是 APPEND?
DROP
我的规则底部有语句。我有一个添加新规则的软件,但在DROP
语句后添加规则并不好。每次我想添加新规则时,我都必须刷新表(效率低下)。
有没有办法在规则前面添加一条规则,即将规则添加到表格的顶部而不是底部?
非常感谢。
答案1
使用-I
开关:
sudo iptables -I INPUT 1 -i lo -j ACCEPT
这会在 INPUT 链中的位置 #1 处插入一条规则。
答案2
-I
将插入。您可能正在使用-A
附加。
您还可以iptables -I chain rulenum
在链“chain”中插入编号为“rulenum”的规则。 -R chain rulenum
可用于替换链“chain”中编号为“rulenum”的特定规则。 iptables -L -n --line-numbers
将在最左边的列中显示规则编号。
答案3
为了帮助确定要添加新规则的行号,我使用iptables-save
将现有规则输出到控制台。
对于初学者,我还可以推荐一个秘籍,即使用 webmin 管理您的规则。它非常友好,您可以轻松地手动重新排序列表中的规则。它还可以处理 redhat 与 debian 的 iptables 实现中的“细微”差异。
答案4
有一个名为的程序iptables-persistent
,它使 iptable 的规则作为操作系统服务持久化。该服务包含一个配置文件作为iptables-save
导出。
因此,您可以重新排序配置文件中的行并重新启动服务。
sudo service iptables-persistent restart
太简单!!!!!