Ubuntu防火墙管理首选工具:UFW(Uncomplicated Firewall)
UFW是Ubuntu默认的防火墙管理工具,基于iptables构建,提供了更简洁的命令行接口,适合普通用户和服务器管理员快速配置防火墙规则。以下是使用UFW管理防火墙规则的详细步骤:
大多数Ubuntu系统预装了UFW,若未安装,可通过以下命令安装:
sudo apt update
sudo apt install ufw -y
安装完成后,通过sudo ufw --version确认安装成功。
配置前需确认UFW是否启用及当前规则:
sudo ufw status
Status: inactive,表示防火墙未启用;Status: active,则表示防火墙已启用,后续会列出已配置的规则。为提升安全性,需先设置默认规则:拒绝所有传入连接,允许所有传出连接(除非明确允许,否则外部无法访问服务器):
sudo ufw default deny incoming
sudo ufw default allow outgoing
此设置是UFW配置的基础,能有效减少未授权访问风险。
根据服务器用途,开放必要服务端口(以SSH、HTTP、HTTPS为例):
sudo ufw allow ssh # 或指定端口:sudo ufw allow 22/tcp
sudo ufw allow http # 或指定端口:sudo ufw allow 80/tcp
sudo ufw allow https # 或指定端口:sudo ufw allow 443/tcp
sudo ufw allow 2222/tcp
⚠️ 关键提醒:务必先允许SSH端口,否则启用防火墙后可能无法远程登录服务器。
192.168.1.100访问):sudo ufw allow from 192.168.1.100
192.168.1.100访问SSH端口22):sudo ufw allow from 192.168.1.100 to any port 22
sudo ufw allow 3000:4000/tcp
这些规则适用于限制访问来源,提升安全性。sudo ufw delete allow ssh
sudo ufw status numbered # 查看规则编号
sudo ufw delete 2 # 删除编号为2的规则
删除规则时需谨慎,避免误删必要规则。sudo ufw enable
启用后会提示“Command may disrupt existing ssh connections”,确认已允许SSH端口后输入y继续。sudo ufw disable
禁用后所有规则失效,外部连接将不再受限制。若需清除所有规则并恢复初始状态(如配置错误时):
sudo ufw reset
执行后会删除所有自定义规则,并将UFW禁用,需重新配置。
sudo ufw limit 22/tcp
/var/log/ufw.log):sudo tail -f /var/log/ufw.log # 实时查看日志
sudo ufw logging on # 开启日志记录(默认开启)
sudo ufw logging off # 关闭日志记录
日志能帮助识别异常访问,及时调整规则。sudo ufw status定期查看规则,及时删除不再需要的规则;