#####firewalld常用命令#####
firewall-cmd --get-services #列出所有支持的 service
firewall-cmd --list-services #查看当前zone 种加载的 service
yum install firewalld
启动:#systemctl start firewalld
查看状态:# systemctl status firewalld 或者 firewall-cmd --state
停止:# systemctl disable firewalld
禁用:# systemctl stop firewalld
配置firewalld
查看版本:$ firewall-cmd --version
查看帮助:$ firewall-cmd --help
显示状态:$ firewall-cmd --state
查看区域信息: $ firewall-cmd --get-active-zones
查看指定接口所属区域:$ firewall-cmd --get-zone-of-interface=eth0
拒绝所有包:# firewall-cmd --panic-on
取消拒绝状态:# firewall-cmd --panic-off
查看是否拒绝:$ firewall-cmd --query-panic
更新防火墙规则:
# firewall-cmd --reload
# firewall-cmd --complete-reload
firewall-cmd --get-zones #列出所有支持的 zone
firewall-cmd --get-default-zone #查看当前的默认 zone
#firewall-cmd --set-default-zone=public #设置默认接口区域(立即生效无需重启)
将接口添加到区域,默认接口都在public
# firewall-cmd --zone=public --add-interface=eth0
永久生效再加上 --permanent 然后reload防火墙
打开端口(貌似这个才最常用)
查看所有打开的端口:
# firewall-cmd --zone=dmz --list-ports
加入一个端口到区域:
# firewall-cmd --zone=dmz --add-port=8080/tcp
打开一个服务,类似于将端口可视化,服务需要在配置文件中添加,/etc/firewalld 目录下有services文件夹
#firewall-cmd --zone=work --add-service=smtp
移除服务
# firewall-cmd --zone=work --remove-service=smtp
# 输出区域 <zone> 全部启用的特性。如果省略区域,将显示默认区域的信息。
firewall-cmd [–zone=<zone>] –list-all
[root@test zones]# firewall-cmd --list-all
firewall-cmd --get-active-zones # 获取活动的区域
firewall-cmd–get-zone-of-interface=<interface> # 根据接口获取区域
firewall-cmd [--zone=<zone>] --add-interface=<interface>#将接口增加到区域
firewall-cmd [--zone=<zone>] --change-interface=<interface>#修改接口所属区域
firewall-cmd [--zone=<zone>] --remove-interface=<interface>#从区域中删除一个接口
firewall-cmd [--zone=<zone>] --query-interface=<interface>#查询区域中是否包含某接口
firewall-cmd [ --zone=<zone> ] --list-services#列举区域中启用的服务
firewall-cmd --panic-off #断网
firewall-cmd --panic-on #连网
firewall-cmd --query-panic # 查询应急模式
假设自定义的 ssh 端口号为 12222,使用下面的命令来添加新端口的防火墙规则:
如果需要使规则保存到 zone 配置文件,则需要加参数 –permanent
[root@test zones]# firewall-cmd --add-port=12222/tcp
[root@test zones]# cat /etc/firewalld/zones/public.xml
没有
[root@test zones]# firewall-cmd --add-port=12222/tcp--permanent
[root@test zones]# cat/etc/firewalld/zones/public.xml
已经写到配置文件里