安全审计-Ubuntu防火墙ufw
文章目录
-
- 一、为什么运维需要使用防火墙?
- 二、Ubuntu 上常用的防火墙工具
- 三、UFW 常用命令及运维使用示例
-
- 1. 安装 UFW(如果尚未安装)
- 2. 查看防火墙状态
- 3. 设置默认策略(强烈建议)
- 4. 允许必要服务(常见运维场景)
-
- ✅ 允许 SSH(远程管理,最重要!)
- ✅ 允许 HTTP / HTTPS(Web 服务)
- ✅ 允许数据库端口(如 MySQL / PostgreSQL)
- ✅ 允许 DNS(如果运行 DNS 服务)
- 5. 基于 IP 地址/网段的精细化控制(运维重点!)
-
- ✅ 只允许某个 IP 访问 SSH
- ✅ 允许某 IP 段访问 HTTP
- ✅ 拒绝某个恶意 IP
- 6. 使用应用配置文件(更语义化)
- 7. 启用 UFW 防火墙
- 8. 禁用防火墙(必要时,如排障)
- 9. 删除 / 修改规则
-
- ✅ 查看带编号的规则,方便删除
- ✅ 删除第 2 条规则
- ✅ 重置防火墙
- 10. 日志记录(用于审计和排查)
- 四、典型运维场景示例
-
- 场景 1:新装 Ubuntu 服务器,如何配置基础防火墙?
- 场景 2:只允许公司 IP 访问数据库和 SSH
- 场景 3:开放端口范围的场景(例如FTP被动模式或某些游戏服务器)
- 五、总结:运维必备 UFW 最佳实践
- 六、进阶提示(可选)
在运维工作场景下, Ubuntu防火墙(通常使用 UFW —— Uncomplicated Firewall) 是保障服务器网络安全的重要工具。它基于底层的 iptables/nftables,但提供了更简洁、易于管理的命令行接口,非常适合运维人员快速部署和维护防火墙策略。
一、为什么运维需要使用防火墙?
在运维工作中,防火墙的主要作用包括:
- 限制网络访问:只允许必要的流量进入或离开服务器,减少攻击面。
- 保护关键服务:防止未授权访问 SSH、数据库、API 等敏感服务。
- 防御常见攻击:如端口扫描、暴力破解、DDoS 等。
- 合规要求:满足企业或行业对网络安全的规范要求。
- 流量控制与审计:通过日志记录网络访问行为,辅助安全分析。
二、Ubuntu 上常用的防火墙工具
Ubuntu 默认推荐使用 UFW(Uncomplicated Firewall),它是面向运维和普通用户的 iptables 前端工具,简单易用,适合大多数场景。
如果你的环境对网络控制有非常复杂的需求(比如自定义链、NAT、流量整形等),可以直连使用
iptables
或nftables
,但 UFW 对于 90% 的运维场景已经足够。
三、UFW 常用命令及运维使用示例
1. 安装 UFW(如果尚未安装)
sudo apt update
sudo apt install ufw
2. 查看防火墙状态
sudo ufw status
# 详细状态(包含规则、策略等)
sudo ufw status verbose
# 带编号的规则列表(便于删除指定规则)
sudo ufw status numbered
🔒 注意:默认情况下,UFW 是 禁用 的,即不拦截任何流量。
3. 设置默认策略(强烈建议)
在允许任何服务之前,先设置一个安全的默认策略:
# 默认:拒绝所有进来的连接(入站)
sudo ufw default deny incoming# 默认:允许所有出去的连接(出站)
sudo ufw default allow outgoing
✅ 这是最安全的做法,即“只允许你明确放行的,拒绝其他一切”。
4. 允许必要服务(常见运维场景)
✅ 允许 SSH(远程管理,最重要!)
sudo ufw allow ssh
# 或者明确指定端口
sudo ufw allow 22/tcp
⚠️ 重要提醒