温馨提示×

ubuntu如何管理防火墙规则

小樊
37
2025-10-18 01:28:59
栏目: 智能运维

Ubuntu防火墙管理首选工具:UFW(Uncomplicated Firewall)
UFW是Ubuntu默认的防火墙管理工具,基于iptables构建,提供了更简洁的命令行接口,适合普通用户和服务器管理员快速配置防火墙规则。以下是使用UFW管理防火墙规则的详细步骤:

1. 安装UFW

大多数Ubuntu系统预装了UFW,若未安装,可通过以下命令安装:

sudo apt update
sudo apt install ufw -y

安装完成后,通过sudo ufw --version确认安装成功。

2. 检查UFW状态

配置前需确认UFW是否启用及当前规则:

sudo ufw status
  • 若显示Status: inactive,表示防火墙未启用;
  • 若显示Status: active,则表示防火墙已启用,后续会列出已配置的规则。

3. 设置默认策略

为提升安全性,需先设置默认规则:拒绝所有传入连接,允许所有传出连接(除非明确允许,否则外部无法访问服务器):

sudo ufw default deny incoming
sudo ufw default allow outgoing

此设置是UFW配置的基础,能有效减少未授权访问风险。

4. 允许常用服务

根据服务器用途,开放必要服务端口(以SSH、HTTP、HTTPS为例):

  • SSH(端口22,用于远程管理)
    sudo ufw allow ssh  # 或指定端口:sudo ufw allow 22/tcp
    
  • HTTP(端口80,用于Web服务)
    sudo ufw allow http  # 或指定端口:sudo ufw allow 80/tcp
    
  • HTTPS(端口443,用于安全Web服务)
    sudo ufw allow https  # 或指定端口:sudo ufw allow 443/tcp
    
  • 非标准端口(如SSH使用2222端口)
    sudo ufw allow 2222/tcp
    

    ⚠️ 关键提醒:务必先允许SSH端口,否则启用防火墙后可能无法远程登录服务器。

5. 允许特定IP或端口范围

  • 允许特定IP访问所有端口(如允许IP192.168.1.100访问):
    sudo ufw allow from 192.168.1.100
    
  • 允许特定IP访问特定端口(如允许IP192.168.1.100访问SSH端口22):
    sudo ufw allow from 192.168.1.100 to any port 22
    
  • 允许端口范围(如允许3000-4000端口的TCP流量):
    sudo ufw allow 3000:4000/tcp
    
    这些规则适用于限制访问来源,提升安全性。

6. 删除规则

  • 根据规则内容删除(如删除允许SSH的规则):
    sudo ufw delete allow ssh
    
  • 根据规则编号删除(先查看带编号的规则列表):
    sudo ufw status numbered  # 查看规则编号
    sudo ufw delete 2         # 删除编号为2的规则
    
    删除规则时需谨慎,避免误删必要规则。

7. 启用/禁用UFW

  • 启用UFW(激活防火墙):
    sudo ufw enable
    
    启用后会提示“Command may disrupt existing ssh connections”,确认已允许SSH端口后输入y继续。
  • 禁用UFW(关闭防火墙):
    sudo ufw disable
    
    禁用后所有规则失效,外部连接将不再受限制。

8. 重置UFW

若需清除所有规则并恢复初始状态(如配置错误时):

sudo ufw reset

执行后会删除所有自定义规则,并将UFW禁用,需重新配置。

9. 高级功能(可选)

  • 限制连接速率(防止暴力破解,如限制SSH每分钟最多6次连接):
    sudo ufw limit 22/tcp
    
  • 查看日志(监控防火墙活动,日志路径为/var/log/ufw.log):
    sudo tail -f /var/log/ufw.log  # 实时查看日志
    sudo ufw logging on            # 开启日志记录(默认开启)
    sudo ufw logging off           # 关闭日志记录
    
    日志能帮助识别异常访问,及时调整规则。

注意事项

  • 避免锁定自己:配置UFW前,务必确保SSH端口(默认22)已允许,否则可能无法远程登录;
  • 最小化开放端口:仅开放必要的服务端口,减少攻击面;
  • 定期检查规则:通过sudo ufw status定期查看规则,及时删除不再需要的规则;
  • 结合其他安全措施:如SSH密钥认证、两因素认证(2FA),提升服务器整体安全性。

0