1. 防火墙基础认知与Ubuntu方案选型
在Linux服务器运维中,防火墙就像大楼的保安系统,需要精确控制哪些流量可以进出。Ubuntu作为最流行的Linux发行版之一,其防火墙方案经历了从早期iptables到现代nftables的技术演进。目前主流选择是UFW(Uncomplicated Firewall)和直接配置iptables/nftables两种路径。
UFW作为Ubuntu官方推荐的防火墙配置工具,本质上是对底层iptables/nftables的友好封装。就像用图形界面操作代替命令行,它通过简化语法降低了配置门槛。但这也意味着某些高级功能需要回退到底层命令实现。对于刚接触Linux防火墙的管理员,我强烈建议从UFW入手,待熟悉基础规则后再逐步深入底层机制。
注意:Ubuntu 22.04 LTS开始默认使用nftables作为后端,但UFW命令仍然兼容。如果遇到规则不生效的情况,可能需要检查系统实际使用的防火墙框架。
需要模型API调用? 免费领10W Token,多模型网关一键接入 Claude、DeepSeek 等主流模型。
2. UFW基础配置全流程
2.1 安装与初始化检查
虽然较新版本的Ubuntu已预装UFW,但为确保功能完整,建议先执行以下命令:
bash复制sudo apt update && sudo apt install ufw -y
安装完成后,查看当前状态:
bash复制sudo ufw status verbose
正常情况会返回"Status: inactive"。如果显示"Status: active",说明系统已有防火墙规则在运行,需要特别小心后续操作可能影响现有服务。
2.2 默认策略设置
就像商场打烊后默认要清场,防火墙也需要设置默认策略。建议采用"默认拒绝所有,按需放行"的白名单模式:
bash复制sudo ufw default deny incoming # 默认阻止所有入站连接
sudo ufw default allow outgoing # 允许所有出站连接
这种配置下服务器会主动阻止所有外部连接尝试,同时允许服务器本身对外访问。之后只需针对需要开放的服务添加例外规则。
2.3 常见服务端口放行
放行SSH端口是首要任务,否则可能导致管理通道中断:
bash复制sudo ufw allow 22/tcp
`
