ubuntu防火墙最佳实践有哪些
导读:Ubuntu 防火墙最佳实践 一 基础策略与启用顺序 采用“默认拒绝入站、允许出站”的最小暴露面策略:sudo ufw default deny incoming 与 sudo ufw default allow outgoing。 启用...
Ubuntu 防火墙最佳实践
一 基础策略与启用顺序
- 采用“默认拒绝入站、允许出站”的最小暴露面策略:
sudo ufw default deny incoming与sudo ufw default allow outgoing。 - 启用前先放行管理通道(如 SSH),避免被锁:优先使用应用配置
sudo ufw allow OpenSSH,或按端口sudo ufw allow 22/tcp;若使用非标准端口(如 2222),务必对应放行。 - 预览规则再启用:
sudo ufw show added,确认无误后sudo ufw enable;启用后设为开机自启并检查状态sudo ufw status verbose。 - 保持双栈一致:编辑
/etc/default/ufw,确保IPV6=yes,使规则同时覆盖 IPv4/IPv6。 - 避免冲突:若系统存在其他防火墙(如 iptables-persistent 或 firewalld),先停用或卸载,防止规则互相覆盖。
二 规则设计与最小权限
- 精确放行:优先按“服务名/应用配置”放行(如
sudo ufw allow 'Nginx Full'或sudo ufw allow 'Apache Full'),必要时再按端口/协议(如sudo ufw allow 80,443/tcp)。 - 来源白名单:对数据库、管理端口等仅开放可信网段或跳板机,例如:
sudo ufw allow from 192.168.1.100 to any port 3306;可按子网192.168.1.0/24或协议细化。 - 端口范围与接口:对应用端口段使用范围语法(如
sudo ufw allow 3000:8010/tcp);仅在特定网卡放行(如sudo ufw allow in on eth0 to any port 80)。 - 明确协议:未指定协议时 UFW 可能同时放行 TCP/UDP,涉及 DNS(53)、NTP(123) 等应使用
proto udp|tcp精确限定。 - 默认拒绝未匹配流量:保持默认策略为拒绝入站,避免“默认允许”造成隐蔽暴露。
三 强化与运维
- 防暴力破解:对 SSH 启用速率限制
sudo ufw limit ssh(或sudo ufw limit 22/tcp),在约 30 秒内超过 6 次尝试的来源将被临时拒绝,缓解脚本爆破。 - 日志与告警:开启日志
sudo ufw logging on,生产建议设为中等级别sudo ufw logging medium;日志位于 /var/log/ufw.log,可用grep "DPT" /var/log/ufw.log | grep "DROP"检索被拒连接,配合 Fail2Ban 自动封禁。 - 变更与回滚:使用
sudo ufw status numbered按编号删除规则;配置混乱时用sudo ufw reset重置,务必保留控制台/带外访问以便恢复。 - 定期审计:至少每季度审查规则、清理无用放行;变更遵循“先测试、后备份、可回滚”的流程,并保留变更记录。
四 典型场景规则模板
- SSH 管理:优先放行
OpenSSH配置;若更改端口为 2222,使用sudo ufw allow 2222/tcp并启用sudo ufw limit 2222/tcp。 - Web 服务:放行 HTTP/HTTPS,推荐
sudo ufw allow 'Nginx Full'或sudo ufw allow 'Apache Full';若手工放行,使用sudo ufw allow 80,443/tcp。 - 数据库:仅内网/跳板机访问,如
sudo ufw allow from 192.168.1.100 to any port 3306(MySQL)或sudo ufw allow from 192.168.1.100 to any port 5432(PostgreSQL)。 - 自定义应用与端口段:如
sudo ufw allow 3000:8010/tcp;特定来源与协议:sudo ufw allow from 203.0.113.10 to any port 5000 proto tcp;按网卡:sudo ufw allow in on eth1 to any port 8080。 - 精细拒绝:对明确不需要的协议/端口可显式拒绝(如
sudo ufw deny 21),但更推荐“默认拒绝 + 白名单放行”的策略。
五 加固组合与注意事项
- 纵深防御:将 UFW 与 Fail2Ban(自动封禁暴破源)、AppArmor(进程强制访问控制)组合;AppArmor 可在
enforce/complain模式间切换并查看日志/var/log/syslog。 - 安全基线:使用 SSH 密钥登录并禁用口令
PasswordAuthentication no;保持系统与安全更新sudo apt update & & sudo apt upgrade -y,启用自动安全更新sudo apt install unattended-upgrades。 - 谨慎操作:避免全面阻断出站(除非明确合规需求);变更前在维护时段进行,准备好回滚方案与控制台访问通道。
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: ubuntu防火墙最佳实践有哪些
本文地址: https://pptw.com/jishu/751077.html
