firewalld详解
firewalld
firewalld服务是默认的防火墙配置管理工具,拥有命令行和图形界面的两种管理方式。提出了zone区域模式,根据不同的区域有不同的防火墙状态,实现了快速切换防火墙模式。
命令行模式 firewall-cmd
区域 | 默认规则策略 |
---|---|
trusted | 允许所有的数据包 |
home | 拒绝流入的流量,除非与流出的相关。(允许ssh,mdns...) |
internal | 等同home |
work | 拒绝流入的流量,除非与流出的相关(允许ssh,ipp-client..) |
public | 拒绝流入的流量,除非与流出的相关,允许ssh,dhcpv6_client |
external | 拒绝流入的流量,除非与流出的相关,允许ssh |
dmz | 拒绝流入的流量,除非与流出的相关 |
block | 拒绝流入的流量,除非与流出的相关 |
drop | 拒绝流入的流量,除非与流出的相关 |
firewall-cmd就是firewalld的命令行管理工具,其中使用的全是长格式命令。倒是可以用tab补齐。
参数 | 作用 |
---|---|
--get-default-zone | 查询默认区域 |
--set-default-zone=<区域名> | 设置默认区域 |
--get-zones | 显示可用区域 |
--get-services | 显示预先定义的服务 |
--get-active-zones | 显示当前区域和网卡名称 |
--add-source= | 将源于此IP或子网的流量导向指定区域 |
--remove-source= | 不再将源于此IP或子网的流量导向指定区域 |
--add-interface=<网卡名称> | 将源于该网卡的所有流量都导向某个指定区域 |
--change-interface=<网卡名称> | 将某个网卡与区域进行关联 |
--list-all | 显示当前区域网卡配置等信息 |
--list-all-zones | 显示所有区域网卡配置等信息 |
--add-service=<服务名> | 设置默认区域允许该服务的流量 |
--add-port=<端口号/协议> | 设置默认区域允许该端口的流量 |
--remove-service=<服务名> | 设置默认区域不再允许该服务的流量 |
--remove-port=<端口号/协议> | 设置默认区域不再允许该端口的流量 |
--reload | 让永久生效的配置规则立即生效 |
--panic-on | 开启紧急模式 |
--panic-off | 关闭紧急模式 |
firewalld默认为运行时模式,即当前生效模式,重启就失效。如果要一直存在,使用永久模式,添加-permanent参数,然后reload重启,即可永久生效。
1、 查看当前生效区域
firewall-cmd --get-default-zone
2、查询指定网卡再firewalld服务中绑定的区域
firewall-cmd --get-zone-of-interface=ens160
3、网卡默认区域修改为external,系统重启生效
firewall-cmd --permanent --zone=external --change-interface=ens160
4. 把firewalld服务的默认区域设置为public
firewall-cmd --set-default-zone=public
5. 启动和关闭紧急状况模式
firewall-cmd --panic-on
firewall-cmd --panic-off
6. 查询ssh和https协议流量是否允许放行。
firewall-cmd --zone=public --queryservice=ssh
firewall-cmd --zone=public --query-service=https
7. 设置https流量永久放行,立即生效
firewall-cmd --permanent --zone=public --add-service=https
firewall-cmd --reload
firewall-cmd --zone=public --query-service=https
8. 把http流量设置为永久拒绝
firewall-cmd --permanent --zone=public --remove-service=https
9. 添加8080,8081端口的允许访问
firewall-cmd --zone=public --add-port=8080-8081/tcp
firewall-cmd --zone=public --list-ports
10. 把原本访问本机888端口的流量转发到22端口,要求长期生效
firewall-cmd --permanent --zone=<区域> --add-forward-port=port=<源端口号>:proto=<协议>:toport=<目标端口号>:toaddr=<目标IP地址>
图形模式 firewall-config
进行安装
dnf install firewall-config
启动:
firewall-config,清晰明了,方便快捷。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!