服务iptables重新启动不起作用

我试图在CentOS的/ etc / sysconfig / iptables中添加以下行,以便我可以访问mysql

-A RH-Firewall-1-INPUT -p tcp -m state --state NEW -m tcp --dport 3306 -j ACCEPT 

我已经做了#服务iptables重新启动,并没有解决这个问题。 我已经为其他端口做了几次这样的操作,而简单的服务重启也没有帮助。 有没有办法解决这个问题,而无需重新启动服务器?

同意这个话题应该被迁移。

但是,有一点要validation的是,您的ACCEPT规则会出现在您的REJECT规则之前。

 -A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT -A RH-Firewall-1-INPUT -j REJECT --reject-with icmp-host-prohibited 

首先,编辑/etc/sysconfig/iptables文件不是一个好习惯。 要在你的iptables上添加规则,请执行如下操作:

 /sbin/iptables -I INPUT -p tcp -m tcp --dport 443 -j ACCEPT /sbin/service iptables save /sbin/service iptables restart 

好吧,无论如何..关于你的问题,如果你仍然没有一些重要的规则在你的iptables上,尝试刷新/删除所有规则

 /sbin/iptables -F 

然后,添加您想要的规则。 不要忘记添加基本规则,如接受端口80(http),22(ssh),21(ftp),443(https)等。

但是如果你已经有了一些configuration好的规则,只要删除你的手动input规则,并以正确的方式添加/插入。