5.3 Linux 防火墙基础与 firewalld 管理
5.3 Linux 防火墙基础与 firewalld 管理
一、防火墙基础
防火墙用于控制服务器网络流量,决定:
- 哪些端口允许访问
- 哪些服务允许通信
- 哪些连接被拒绝
Linux 常见防火墙方案:
| 工具 | 说明 |
|---|---|
| firewalld | CentOS 7+/RHEL 默认方案 |
| iptables | 传统 Linux 防火墙 |
| nftables | 新一代 Linux 防火墙框架 |
| ufw | Ubuntu 简化防火墙工具 |
二、firewalld 简介
firewalld 是基于:
1 | |
封装的动态防火墙管理工具。
特点:
- 支持动态修改规则
- 支持区域(Zone)
- 支持服务与端口管理
- 配置相对简单
三、firewalld 服务管理
3.1 查看状态
1 | |
3.2 启动与停止
启动防火墙
1 | |
停止防火墙
1 | |
3.3 开机自启
1 | |
3.4 禁止开机启动
1 | |
生产环境通常不建议关闭防火墙。
四、firewalld 区域(Zone)
firewalld 使用区域划分不同安全级别。
常见区域:
| Zone | 说明 |
|---|---|
| public | 公共网络(默认) |
| trusted | 完全信任 |
| home | 家庭网络 |
| internal | 内部网络 |
| drop | 丢弃所有连接 |
4.1 查看当前区域
1 | |
4.2 查看默认区域
1 | |
五、查看防火墙规则
查看当前区域所有规则
1 | |
查看允许的服务
1 | |
查看开放端口
1 | |
六、服务与端口管理
firewalld 支持:
- 服务规则
- 端口规则
推荐优先使用:
1 | |
方式,更易维护。
七、开放与关闭服务
开放 HTTP 服务
1 | |
开放 HTTPS 服务
1 | |
删除服务规则
1 | |
重载规则
1 | |
八、开放与关闭端口
开放 TCP 端口
1 | |
开放 UDP 端口
1 | |
开放端口范围
1 | |
删除端口规则
1 | |
九、永久规则与临时规则
firewalld 分为:
| 类型 | 特点 |
|---|---|
| 临时规则 | 立即生效,重启后失效 |
| 永久规则 | 重启后仍保留 |
9.1 临时规则
不加:
1 | |
例如:
1 | |
9.2 永久规则
1 | |
永久规则修改后需要:
1 | |
十、富规则(Rich Rule)
firewalld 支持更细粒度控制。
限制指定 IP 访问 SSH
1 | |
拒绝指定 IP
1 | |
十一、查看监听端口
开放防火墙端口前,需要确认服务是否监听。
使用 ss
1 | |
过滤指定端口
1 | |
十二、防火墙常见场景
放行 Web 服务
1 | |
放行 SSH 新端口
1 | |
放行数据库端口
1 | |
注意:
数据库通常不建议直接暴露公网。
十三、防火墙与云服务器
云服务器通常存在两层防护:
| 层级 | 说明 |
|---|---|
| 云平台安全组 | 云厂商控制 |
| 系统防火墙 | Linux 本机控制 |
只有:
1 | |
外部才能访问对应端口。
十四、总结
| 命令 | 作用 |
|---|---|
| systemctl status firewalld | 查看状态 |
| firewall-cmd –list-all | 查看规则 |
| firewall-cmd –add-service | 开放服务 |
| firewall-cmd –add-port | 开放端口 |
| firewall-cmd –reload | 重载规则 |
| ss -tunlp | 查看监听端口 |
Linux 防火墙是服务器安全基础,用于:
- 控制端口访问
- 限制网络流量
- 保护服务安全
- 管理公网暴露面
- 配合云安全组进行访问控制
5.3 Linux 防火墙基础与 firewalld 管理
https://blog.sh462li.top/2026/05/28/5.3 Linux防火墙基础与firewalld管理/