centos7以上默认的是firewalld作为防火墙。
systemctl是CentOS7的服务管理工具中主要的工具,它融合之前service和chkconfig的功能于一体。
systemctl stop firewalld.service #停止firewall
systemctl start firewalld.service #开启firewall
systemctl disable firewalld.service #禁止firewall开机启动
firewall-cmd --state #查看默认防火墙状态(关闭后显示notrunning,开启后显示running)
systemctl restart firewalld.service #重启一个服务
systemctl status firewalld.service#显示一个服务的状态
systemctl enable firewalld.service#在开机时启用一个服务
systemctl disable firewalld.service#在开机时禁用一个服务
systemctl is-enabled firewalld.service#查看服务是否开机启动
systemctl list-unit-files|grep enabled#查看已启动的服务列表
systemctl --failed#查看启动失败的服务列表
firewall-cmd --version#查看版本
firewall-cmd --help#查看帮助
firewall-cmd --zone=public --list-ports#查看所有打开的端口
firewall-cmd --reload#更新防火墙规则
firewall-cmd --get-active-zones#查看区域信息
firewall-cmd --get-zone-of-interface=eth0#查看指定接口所属区域
firewall-cmd --panic-on#拒绝所有包
firewall-cmd --panic-off#取消拒绝状态
firewall-cmd --query-panic#查看是否拒绝
以上是基本命令。以下是如何开放端口
1.添加3306端口(--permanent永久生效,没有此参数重启后失效)
[root@VM_0_13_centos ~]# firewall-cmd --zone=public --add-port=3306/tcp --permanent
success
2.更新防火墙规则
[root@VM_0_13_centos ~]# firewall-cmd --reload
success
3.查看端口是否开放。
[root@VM_0_13_centos ~]# firewall-cmd --zone=public --query-port=3306/tcp
yes
备选步骤。
x.查看已开放的端口
[root@VM_0_13_centos ~]# firewall-cmd --zone=public --list-ports
3306/tcp
y.删除端口
[root@VM_0_13_centos ~]# firewall-cmd --zone= public --remove-port=80/tcp --permanent
success