CentOS7上 firewalld 防火墙的使用
简述
Centos7 默认的防火墙是 firewall,替代了以前的 iptables
firewall 使用更加方便、功能也更加强大一些
firewalld 服务引入了一个信任级别的概念来管理与之相关联的连接与接口。它支持 ipv4 与 ipv6,并支持网桥,采用 firewall-cmd (command) 或 firewall-config (gui) 来动态的管理 kernel netfilter 的临时或永久的接口规则,并实时生效而无需重启服务
firewalld 服务基本使用
查看防火墙状态
1 | systemctl status firewalld |
关闭防火墙,停止 firewall 服务
1 | systemctl stop firewalld |
开启防火墙,启动 firewall 服务
1 | systemctl start firewalld |
重启防火墙,重启 firewall 服务
1 | systemctl restart firewalld |
查看 firewall 服务是否开机启动
1 | systemctl is-enabled firewalld |
开机时自动启动 firewall 服务
1 | systemctl enable firewalld.service |
开机时自动禁用 firewall 服务
1 | systemctl disable firewalld.service |
firewalld-cmd 防护墙命令使用
上面所说的 firewall 可以看成整个防火墙服务,而 firewall-cmd 可以看成是其中的一个功能,可用来管理端口
查看 firewall-cmd 状态:
1 | firewall-cmd --state |
查看已打开的所有端口:
1 | firewall-cmd --zone=public --list-ports |
开启指定端口
当我们想要开启81端口的时候,使用这个命令:
1 | firewall-cmd --zone=public --add-port=81/tcp --permanent |
修改配置后,必须重新加载才能生效,使用下面的命令重新加载:
1 | firewall-cmd --reload |
关闭指定端口
当我们想要关闭81端口的时候,使用这个命令:
1 | firewall-cmd --zone=public --remove-port=81/tcp --permanent |
同样的,必须重启生效。这里的 –permanent表示永久生效,没有此参数重启后失效。