我想使 iptable 规则永久生效,这样如果服务器重新启动,我就不必再次添加该规则。
具体来说,我有一条与 nginx 作为 apache 的反向代理相关的规则。
iptables -t nat -A PREROUTING -p tcp -s ! 266.266.266.266 --dport 80 -j REDIRECT --to-ports 85
我尝试过,iptables-save
但是要么是我没有使用正确的文件,要么是它对我来说不起作用。
请注意,我使用 directadmin 控制面板作为服务器以及http://configserver.com/cp/csf.html
因此,存在这些干扰的可能性,因为即使服务器没有重启多次,规则也不存在。
答案1
您可以使用该service iptables save
命令。
答案2
你可以跑了/etc/init.d/iptables save
。
这将写出文件/etc/sysconfig/iptables
。查看该文件以验证其内容是否具有您想要的规则(它不会与iptables
从命令行运行的格式相同,但您应该能够了解它的要点)。
确保 iptables 设置为在重启时运行。运行chkconfig --list iptables
以查看它是否在启动时处于“开启”状态。如果没有,请运行chkconfig iptables on
,然后运行chkconfig --list iptables
。您应该在运行级别 2、3、4、5 中看到“开启”。