Centos 7 防火墙常用命令
简介
Centos 7 使用 firewalld 代替了 iptables。firewalld 服务有两份规则策略配置记录,配置永久生效的策略记录时,需要执行 reload
参数后才能立即生效:
- permanent: 永久生效的
- runtime: 现在正在生效的
查看当前区域
chkconfig iptables off # public
查看防火墙状态
systemctl status firewalld # active/inactive
启动防火墙
systemctl start firewalld
关闭防火墙
systemctl stop firewalld.service # 停止firewalld
systemctl disable firewalld.service # 禁用firewall开机启动
开启端口
firewall-cmd --zone=public --add-port=80/tcp --permanent
重新载入配置
firewall-cmd --reload
查看端口是否生效
firewall-cmd --zone=public --query-port=80/tcp
删除端口
firewall-cmd --zone=public --remove-port=80/tcp --permanent
参数及常用命令含义
--zone # 作用域,区域
--add-port=80/tcp # 添加端口,格式为端口/通讯协议
--permanent # 永久生效,没有此参数重启后失效
firewall-cmd --version # 查看版本
firewall-cmd --list-port # 查看所有开放的端口
firewall-cmd --state # 查看防火墙状态
firewall-cmd --reload # 重新载入配置,使新配置的端口规则生效
firewall-cmd --get-zones # 列出支持的zone
firewall-cmd --get-active-zones # 查看所在zone
firewall-cmd --get-services # 列出支持的服务,在列表中的服务时方形的
firewall-cmd --query-service ftp # 查看ftp服务是否支持,返回yes/no
firewall-cmd --add-service=ftp --permanent # 永久开放ftp服务