ubuntu

Ubuntu防火墙如何实现远程管理

小樊
33
2025-11-09 02:43:14
栏目: 智能运维

Ubuntu防火墙(UFW)实现远程管理指南
Ubuntu系统默认使用**UFW(Uncomplicated Firewall)**作为防火墙管理工具,其基于iptables构建,通过简洁的命令即可实现复杂的防火墙配置。远程管理Ubuntu服务器时,核心是通过UFW正确配置规则,确保管理员能安全地通过SSH等协议访问服务器,同时防止未经授权的远程访问。

一、前置准备:确认UFW安装与状态

多数Ubuntu系统默认安装UFW,可通过以下命令验证:

ufw --version

若未安装,执行以下命令安装:

sudo apt update && sudo apt install ufw

安装完成后,检查UFW状态:

sudo ufw status verbose

若显示“Status: inactive”,说明防火墙未启用,需后续步骤激活。

二、启用UFW前的关键安全操作:允许SSH连接

远程管理服务器主要依赖SSH(默认端口22),务必在启用UFW前配置SSH允许规则,否则启用后将无法远程连接。

  1. 允许SSH服务(通过服务名,自动匹配端口22)
    sudo ufw allow ssh
    
  2. 或通过端口直接允许(若SSH使用非标准端口,如7722)
    sudo ufw allow 7722/tcp
    
  3. 验证规则是否添加成功
    sudo ufw status
    
    应能看到类似输出:
    To                         Action      From
    --                         ------      ----
    22/tcp                     ALLOW       Anywhere
    

三、启用UFW并设置默认策略

  1. 启用UFW
    sudo ufw enable
    
    系统会提示“Command may disrupt existing ssh connections. Proceed with operation (y|n)?”,输入y并回车。启用后,UFW会自动随系统启动。
  2. 设置默认策略
    为提升安全性,建议设置默认拒绝所有入站连接允许所有出站连接(服务器主动发起的连接不受限制):
    sudo ufw default deny incoming
    sudo ufw default allow outgoing
    
    再次查看状态,应显示:
    Default: deny (incoming), allow (outgoing), disabled (routed)
    

四、配置远程管理所需的端口规则

根据远程管理需求,开放对应端口:

  1. SSH(默认22端口,TCP协议)
    若已通过sudo ufw allow ssh添加,可跳过。
  2. 远程桌面(RDP,3389端口,TCP协议)
    若需通过Windows远程桌面连接,开放3389端口:
    sudo ufw allow 3389/tcp
    
  3. HTTP/HTTPS(80/443端口,TCP协议)
    若需通过浏览器访问服务器网页,开放80(HTTP)和443(HTTPS)端口:
    sudo ufw allow 80/tcp
    sudo ufw allow 443/tcp
    
  4. MySQL数据库(3306端口,TCP协议)
    若需远程访问数据库,开放3306端口(建议限制访问IP,见下文“进阶配置”):
    sudo ufw allow 3306/tcp
    

五、进阶配置:增强远程管理安全性

  1. 限制SSH访问IP(仅允许特定IP连接)
    若仅需特定IP(如公司IP 192.168.1.100)访问SSH,可添加规则:
    sudo ufw allow from 192.168.1.100 to any port 22
    
    或限制整个网段(如192.168.1.0/24):
    sudo ufw allow from 192.168.1.0/24 to any port 22
    
  2. 防止SSH暴力破解
    使用limit命令限制SSH连接频率(如每分钟最多3次尝试),触发阈值后将拒绝后续连接:
    sudo ufw limit ssh
    
  3. 允许特定网络接口的连接
    若服务器有多个网卡(如eth0用于公网、eth1用于内网),可限制仅允许内网接口访问:
    sudo ufw allow in on eth1 to any port 22
    

六、管理UFW规则与状态

  1. 查看规则详情
    • 简略状态:sudo ufw status(显示激活状态、默认策略及规则摘要)。
    • 详细状态:sudo ufw status verbose(显示规则编号、协议、源/目标地址等详细信息)。
  2. 删除规则
    • 通过规则内容删除(如删除允许22端口的规则):
      sudo ufw delete allow 22/tcp
      
    • 通过规则编号删除(先查看规则编号,再删除):
      sudo ufw status numbered  # 查看规则编号
      sudo ufw delete 1         # 删除编号为1的规则
      
  3. 修改默认策略
    若需调整默认策略(如允许所有入站连接,仅建议测试环境使用),执行:
    sudo ufw default allow incoming
    

七、注意事项

通过以上步骤,即可通过UFW实现Ubuntu防火墙的远程管理,既保障服务器安全,又不影响合法远程访问。

0
看了该问题的人还看了