89291041 2019-09-06
CentOS 7中使用的防火墙为firewall,在CentOS 6.5中在iptables防火墙中进行了升级了。
CentOS 7放行端口需要在云服务器管理后台和服务器firewall同时设置才有效!注意默认全部拒绝!管理后台通过权限组添加规则。
/usr/lib/firewalld/services
目录中存放定义好的网络服务和端口参数,系统参数。配置时引用服务名称
/etc/firewalld/
为配置目录,使用区域在zones下
firewall-cmd:是Linux提供的操作firewall的一个工具。
(1)firewalld服务启动、关闭、重启,设置开机自启
# 启动 systemctl start firewalld # 关闭 systemctl stop firewalld # 重启 systemctl restart firewalld # 开机启动 systemctl enable firewalld # 取消开机启动 systemctl disable firewalld # 查看是否开机自启 systemctl is-enabled firewalld
(2)添加端口/服务。用户可以通过修改配置文件的方式添加端口,也可以通过命令的方式添加端口,注意,修改的内容会在/etc/firewalld/
目录下的配置文件中还体现。例如在public
区域添加tcp端口8020
firewall-cmd --zone=public --permanent --add-port=8010/tcp
可以在/etc/firewalld/zones/public.xml
中看见已经添加成功。
这个配置文件也可以手动修改,如添加服务
vi /etc/firewalld/zones/public.xml i 加入 <service name="mysql"/>
也可以通过--add-service
添加,
firewall-cmd --permanent --zone=public --add-service=mysql
重载可生效firewall-cmd --reload
。
(3)查看规则
firewall-cmd --list-all
(4)其它
# 查看防火墙状态 firewall-cmd --state # 查看默认的域 firewall-cmd --get-default-zone # 查看所有的域 firewall-cmd --get-zones # 查看所有域的信息 firewall-cmd --list-all-zones # 查看指定域的信息 firewall-cmd --zone=public --list-all # 查看可以添加的服务 firewall-cmd --get-services # 设置指定域为默认域 firewall-cmd --set-default-zone=public