我想保留一些iptables规则永久性,所以我只是手动添加规则:
/sbin/iptables -I OUTPUT -p tcp --sport 80 -j QUEUE
我确信它有效,因为我可以在执行“iptalbes -vnL”后看到它。 不幸的是,我发现它在一小时左右之后没有重启或重新启动iptables就消失了。因为在执行“iptables -vnL”之后我看不到它。
所以我必须调查这个问题。
首先,我确信没有人执行像“iptables -F”这样的命令,
然后我在/ var / log / message中找到一个日志:
Dec 18 10:10:50 zt_21_23 kernel: ip_tables: (C) 2000-2006 Netfilter Core Team
我发现这完全是谷歌之后的内核行为。有人说iptables会重建规则,但他没有告诉我触发条件。我检查iptables配置文件(/ etc / sysconfig / iptables-config),但我找不到任何可以使iptables重建规则的配置项。
我必须使用crontab按设定的时间间隔添加规则,如果我想保持它的永久性。
直到现在,我的问题是:
1. how to stop iptables rebuilt?
2. when would iptables rebuilt? and what is the triggering condition?
3. which rule would be reloaded when iptables rebuilt? and where these rules save?
你可以帮帮我吗?
PS。
修改/ etc / sysconfig / iptables,或使用iptables-save和iptables-restore可以正常工作,规则在一小时左右后仍然消失。
我正在使用linux(2.6.18-308.24.1.el5 x86_64)。