防火墙的开启、关闭、禁用命令
(1)设置开机启用防火墙:systemctl enable firewalld.service
(2)设置开机禁用防火墙:systemctl disable firewalld.service
(3)启动防火墙:systemctl start firewalld
(4)关闭防火墙:systemctl stop firewalld
(5)检查防火墙状态:systemctl status firewalld 或者 firewall-cmd --state
查看服务是否开机启动:systemctl is-enabled firewalld.service
查看已启动的服务列表:systemctl list-unit-files|grep enabled
查看启动失败的服务列表:systemctl --failed
查看版本: firewall-cmd --version
查看帮助: firewall-cmd --help
查看区域信息: firewall-cmd --get-active-zones
查看指定接口所属区域: firewall-cmd --get-zone-of-interface=eth0
拒绝所有包:firewall-cmd --panic-on
取消拒绝状态: firewall-cmd --panic-off
查看是否拒绝: firewall-cmd --query-panic
(6)开启端口
firewall-cmd --zone=public --add-port=80/tcp --permanent # permanent永久生效,没有此参数重启后失效
sudo firewall-cmd --zone=public --add-port=443/tcp --permanent # permanent永久生效,没有此参数重启后失效
firewall-cmd --add-port=80/tcp # 添加端口外部访问权限(这样外部才能访问)
firewall-cmd --reload # 重新载入,添加端口后重新载入才能起作用
(7)查看端口
firewall-cmd --zone=public --query-port=80/tcp
(8)删除端口
firewall-cmd --zone=public --remove-port=80/tcp --permanent
(9)查看开启了哪些服务(其实一个服务对应一个端口,每个服务对应/usr/lib/firewalld/services下面一个xml文件)
firewall-cmd --list-services
(10)查看开启了哪些端口
firewall-cmd --list-ports
firewall-cmd --zone=public --list-ports
(11)查看端口访问权限情况
firewall-cmd --query-port=6379/tcp
(12)出错案例
systemctl是CentOS7的服务管理工具中主要的工具,它融合之前service和chkconfig的功能于一体。
问题现象:防火墙开启3306端口后还是连不上虚拟机的3306端口,但是能连上22端口
问题原因:CentOS 7.X 除了firewall对端口开放状态有影响外,还有一个服务会影响-seLinux,我把seLinux的服务关掉了,重启服务器就好了
操作过程:
vi /etc/selinux/config#修改config文件
#SELINUX=enforcing
SELINUX=disabled
#注释掉SELINUX=enforcing, 改用disabled
保存
reboot
重启后就可以telnet通了