centOS7中默认是使用firewall管理防火墙,不习惯,所以想换成iptables:
1、关闭默认的firewall防火墙
#systemctl stop firewalld.service停止firewalld服务
#systemctl disable firewalld.service进制开机自启动
2、开启iptables
#yum install iptables(根据centOS7的版本和内核,有些版本已经装过,可以跳过此命令)
#yum install iptables-services
#vim /etc/sysconfig/iptables
编辑如下(开启了21,22,80,3306端口):
[plain] view plain copy
-
# sampleconfiguration for iptables service
-
# # you can edit thismanually or use system-config-firewall
-
# # please do not askus to add additional ports/services to this default configuration
-
*filter
-
:INPUT ACCEPT [0:0]
-
:FORWARD ACCEPT [0:0]
-
:OUTPUT ACCEPT [0:0]
-
-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
-
-A INPUT -p icmp -j ACCEPT
-
-A INPUT -i lo -j ACCEPT
-
-A INPUT -p tcp -m state --state NEW -m tcp --dport 21 -j ACCEPT
-
-A INPUT -p tcp -m state --state NEW -m tcp --dport 22 -j ACCEPT
-
-A INPUT -p tcp -m state --state NEW -m tcp --dport 80 -j ACCEPT
-
-A INPUT -p tcp -m state --state NEW -m tcp --dport 3306 -j ACCEPT
-
-A INPUT -j REJECT --reject-with icmp-host-prohibited
-
-A FORWARD -j REJECT --reject-with icmp-host-prohibited
-
COMMIT
:wq保存
3、开启服务,设置开机自启动
#service iptables restart
#chkconfig iptables on或者systemctl enable iptables.service开机自启
tip:如果在重启iptables的时候,碰到让你journalctl -xe的错误,使用#journalctl -xe -l来查看错误
一般是语法错误,请仔细查看iptables文件的语法。