Centos7防火墙设置

CentOS 7中使用的防火墙为firewall,在CentOS 6.5中在iptables防火墙中进行了升级了。

  • 用于实现持久的网络流量规则。
  • 可以动态修改单条规则,动态管理规则集,允许更新规则而不破坏现有会话和连接
  • 使用区域(zone)和服务(service)
  • 默认是拒绝的,需要设置以后才能放行

CentOS 7放行端口需要在云服务器管理后台和服务器firewall同时设置才有效!注意默认全部拒绝!管理后台通过权限组添加规则。

配置目录

/usr/lib/firewalld/services 目录中存放定义好的网络服务和端口参数,系统参数。配置时引用服务名称

1564993293.jpg

/etc/firewalld/为配置目录,使用区域在zones下

1564993463.jpg

常用命令

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
  • --permanent:表示设置为持久;
  • --add-port:标识添加的端口;

可以在/etc/firewalld/zones/public.xml中看见已经添加成功。

1564993818.jpg

这个配置文件也可以手动修改,如添加服务

vi /etc/firewalld/zones/public.xml
i
加入 <service name="mysql"/>
1564994075.jpg

也可以通过--add-service添加,

firewall-cmd --permanent --zone=public --add-service=mysql

重载可生效firewall-cmd --reload

(3)查看规则

firewall-cmd --list-all
1564994718.jpg

(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

原文链接

推荐阅读更多精彩内容