5.3 Linux 防火墙基础与 firewalld 管理
5.3 Linux 防火墙管理与 firewalld 实战
防火墙概述
防火墙用于控制主机网络访问行为,通过定义规则决定哪些连接允许通过、哪些连接被拒绝,是 Linux 服务器安全防护的重要组成部分。
常见 Linux 防火墙方案:
| 工具 | 说明 |
|---|---|
| firewalld | RHEL/CentOS 7+ 默认防火墙 |
| iptables | 传统防火墙工具 |
| nftables | 新一代网络过滤框架 |
| ufw | Ubuntu 简化管理工具 |
目前主流企业环境多采用 firewalld 或 nftables。
firewalld 核心概念
firewalld 基于 iptables 或 nftables 实现,支持动态加载规则,无需重启服务即可生效。
主要特点:
- 动态修改规则
- 支持区域(Zone)管理
- 支持服务和端口管理
- 支持细粒度访问控制
- 与 systemd 深度集成
firewalld 服务管理
查看运行状态:
1 | |
启动服务:
1 | |
停止服务:
1 | |
设置开机自启:
1 | |
重新加载规则:
1 | |
Zone 区域管理
firewalld 使用 Zone 对网络环境进行安全级别划分。
常见区域:
| 区域 | 说明 |
|---|---|
| public | 默认公共网络 |
| internal | 内部可信网络 |
| home | 家庭网络 |
| trusted | 完全信任 |
| drop | 丢弃所有连接 |
查看当前区域:
1 | |
查看默认区域:
1 | |
查看当前区域配置:
1 | |
服务与端口管理
查看已开放服务:
1 | |
查看已开放端口:
1 | |
开放 HTTP 服务:
1 | |
开放 HTTPS 服务:
1 | |
开放 TCP 端口:
1 | |
开放 UDP 端口:
1 | |
删除端口规则:
1 | |
规则修改完成后执行:
1 | |
临时规则与永久规则
firewalld 规则分为两种:
| 类型 | 特点 |
|---|---|
| 临时规则 | 立即生效,重启失效 |
| 永久规则 | 重启后仍然保留 |
临时开放端口:
1 | |
永久开放端口:
1 | |
生产环境建议统一使用永久规则管理。
Rich Rule 高级规则
允许指定 IP 访问 SSH:
1 | |
禁止指定 IP 访问:
1 | |
查看已配置 Rich Rule:
1 | |
常见运维场景
放行 Web 服务:
1 | |
放行 SSH 自定义端口:
1 | |
放行 MySQL 端口:
1 | |
查看服务监听状态:
1 | |
查看指定端口:
1 | |
安全建议
- 优先开放服务而非直接开放端口
- SSH 建议修改默认端口并限制来源 IP
- 数据库端口不要直接暴露公网
- 定期审计开放规则
- 云服务器需同时检查安全组与系统防火墙
- 删除不再使用的端口和服务规则
总结
firewalld 是 Linux 服务器中最常用的防火墙管理工具,核心内容包括:
- 防火墙服务管理
- Zone 区域控制
- 服务与端口放行
- Rich Rule 访问控制
- 网络监听与安全排查
熟练掌握 firewalld 后,可以完成绝大多数 Linux 服务器网络访问控制与安全加固工作。
5.3 Linux 防火墙基础与 firewalld 管理
https://blog.sh462li.top/2026/05/28/Linux_learn/5.3 Linux防火墙基础与firewalld管理/