我有一个拥有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 restart 。 iptables规则将会持续。
其实,我已经提前将这些行添加到文件中,所以你的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获取更多信息,或者考虑切换到另一个提供者。