IPTABLES将不会保持更改重新启动

我有一个拥有CENT OS的hostgator VPS。 当我停止VPS并再次启动时,对IPTABLES所做的更改将不会保存我试图保存IPTABLES并且无济于事。 每次我重新启动服务器,我必须运行以下为了得到我需要他们的IPTABLES:

iptables -I INPUT -p tcp --dport 3000 --syn -j ACCEPT sudo iptables -t nat -I PREROUTING -p tcp --dport 80 -j REDIRECT --to-ports 3000 

第一个命令打开端口3000,第二个命令将端口80的stream量redirect到端口3000。

当我重新启动或完全停止VPS,并再次启动IPTABLES启动,就像我从来没有保存他们,并回到默认情况下,当我第一次得到VPS。

我已经尝试了所有这些命令,仍然没有快乐。

我正在考虑写一个脚本来运行我需要configurationIPTABLES的命令。 有什么build议么?

仅供参考:我编辑了/ etc / sysconfig / iptables并做了一次service iptables save ,没有运气,一旦重新启动,在VPS重置后回到Host Gator的configuration。

为了使iptables规则在重新启动后保持原位,您必须明确地设置该规则。

在CentOS中,在您的规则到位之后,您可以运行:

/sbin/service iptables save

更多信息在这里: https : //library.linode.com/securing-your-server#sph_creating-a-firewall (见第10点)

我昨天晚上发了一封电子邮件(在我发布这个问题之前),最后我收到了Host Gator的一个Linuxpipe理员的回应(如果可以的话,我会更新的):

你好!

HostGator已经在所有VPS和专用服务器计划中build立了一个默认的自定义防火墙。

Luckliy,在防火墙configuration中有一个文件是为了坚持iptablesconfiguration。

该文件是这样的:/ etc / firewall / INCLUDE

只需将您的iptables行添加到该文件,并重新启动service firewall restartiptables规则将会持续。

其实,我已经提前将这些行添加到文件中,所以你的iptables规则现在应该加载并保存。

如果您有任何疑问或疑虑,请随时跟进。


当我给Host Gator打电话时,我要求添加下面的规则,但是它不起作用,因为当他告诉我添加它们时,我没有在规则之前添加“iptables”。 以下是Host Gator的Linuxpipe理员添加的内容。 我从/etc/firewall/INCLUDE文件复制了这个文本:

 iptables INPUT -p tcp -m tcp --dport 3000 --tcp-flags FIN,SYN,RST,ACK SYN -j ACCEPT iptables -A INPUT -j acctboth iptables -A PREROUTING -p tcp -m tcp --dport 80 -j REDIRECT --to-ports 3000 iptables -I INPUT -p tcp --dport 3000 --syn -j ACCEPT iptables -t nat -I PREROUTING -p tcp --dport 80 -j REDIRECT --to-ports 3000 iptables -A INPUT -p tcp --tcp-flags ALL NONE -j DROP iptables -A INPUT -p tcp ! --syn -m state --state NEW -j DROP iptables -A INPUT -p tcp --tcp-flags ALL ALL -j DROP 

我在Internet上发现了几个参考文献,指出HostGator在他们的VPS和专用服务器上安装了一个自定义的防火墙脚本。 但是,我无法find有关如何安装或如何摆脱它的任何说明。 我将联系HostGator获取更多信息,或者考虑切换到另一个提供者。