飘在云端

东西南北,海角天涯

· 备查 · · 302次浏览

firewall-cmd 防火墙初始化配置

启动防火墙 systemctl start firewalld
重启防火墙 systemctl restart firewalld
设置开机启动 systemctl enable firewalld
重载防火墙配置(不会中断当前连接) firewall-cmd --reload
完全重载防火墙(会中断当前已建立的连接状态) firewall-cmd --complete-reload
将所有临时添加的规则(不带 --permanent 参数)永久保存 firewall-cmd --runtime-to-permanent
将当前添加的规则永久保存(除了特定命令,没加这个参数的规则都是临时生效,一重启防火墙临时规则都会消失) --permanent

拒绝所有包 firewall-cmd --panic-on
取消拒绝状态 firewall-cmd --panic-off
查看是否拒绝 firewall-cmd --query-panic

查看防火墙状态 firewall-cmd --state
查看防火墙服务状态 systemctl status firewalld
查看防火墙服务状态详情 systemctl status firewalld -l

eth0 网络接口加入到防火墙 firewall-cmd --add-interface=eth0 --permanent
改变 eth0 网络接口到指定区域 firewall-cmd --zone=<zone> --change-interface=<interface> --permanent

设置 public 为默认区域 firewall-cmd --set-default-zone=public
查看所有区域 firewall-cmd --get-zones
查看默认区域 firewall-cmd --get-default-zone
默认区域是没有指定区域时,所有接口默认应用的区域,当省略 --zone= 参数时的操作会添加到默认区域

查看已激活区域 firewall-cmd --get-active-zones
显示当前所有活动区域及其对应的网络接口

这2个不用迷糊,在简单配置的场景中,已激活区域一般等同于默认区域,因为都是同一个 zones

显示防火墙内的所有区域 firewall-cmd --get-zones

查看默认区域的端口规则 firewall-cmd --list-port
查看指定区域的端口规则 firewall-cmd --zone=public --list-port
查看所有区域防火墙配置规则 firewall-cmd --list-all-zones

查看防火墙预定义的所有服务 firewall-cmd --get-services
查看某个预定义的服务详情 firewall-cmd --info-service=<service-name>

放行 public 区域的单个tcp协议上指定的端口,移除把add改为 remove 即可

firewall-cmd --permanent --zone=public --add-port=3306/tcp

批量放行 tcp 协议上的端口范围:

firewall-cmd --permanent --zone=public --add-port=1-65535/tcp

备注:不支持单次直接放行多个不连续端口,80,443,22,25 这种写法是不允许的,得多次操作


常用操作
禁止被 ping

firewall-cmd --add-icmp-block=echo-request --permanent

评论 (0条)