温馨提示×

Ubuntu防火墙规则怎样设置才合理

小樊
66
2025-06-25 15:55:14
栏目: 智能运维

在Ubuntu系统中,合理配置防火墙规则是确保系统安全的重要步骤。以下是一些基本的指导原则和步骤,帮助你设置Ubuntu防火墙规则:

1. 安装和启用UFW

首先,确保UFW已经安装在你的Ubuntu系统上。如果没有安装,可以使用以下命令进行安装:

sudo apt update
sudo apt install ufw

安装完成后,启用UFW:

sudo ufw enable

启用后,系统会提示你确认是否启用防火墙,输入 y 并按回车键确认。

2. 设置默认策略

默认情况下,UFW会拒绝所有传入的连接,并允许所有传出的连接。这可以通过以下命令实现:

sudo ufw default deny incoming
sudo ufw default allow outgoing

3. 允许常用服务

根据实际需求开放必要的端口,例如:

  • 允许SSH连接(通常使用的端口为22/TCP):

    sudo ufw allow ssh
    

    或者指定端口号的方式:

    sudo ufw allow 22/tcp
    
  • 允许HTTP(S)服务(分别对应80/TCP和443/TCP):

    sudo ufw allow 80/tcp
    sudo ufw allow 443/tcp
    
  • 允许自定义TCP/UDP端口,例如允许MySQL(3306/TCP):

    sudo ufw allow 3306/tcp
    

4. 基于IP地址的规则管理

除了基于服务名称或端口号外,还可以针对具体的源IP地址创建更精细的控制规则:

  • 仅允许来自某一特定IP地址的所有访问

    sudo ufw allow from 192.168.1.100
    
  • 限定某网段内的设备能够访问服务器上的MySQL数据库(3306/TCP)

    sudo ufw allow from 192.168.1.0/24 to any port 3306
    

5. 高级规则配置

  • 限制连接速率(防DDoS):

    sudo ufw limit 22/tcp
    
  • 允许范围端口,例如允许端口范围(5000-6000):

    sudo ufw allow 5000:6000/tcp
    

6. 启用日志记录

启用日志记录功能,以便于追踪和审计:

sudo ufw logging on

日志路径通常为 /var/log/ufw.log

7. 删除规则

如果需要删除某条规则,可以使用以下命令:

  • 按编号方式删除

    sudo ufw status numbered
    sudo ufw delete [规则编号]
    
  • 直接引用描述文字形式表达的目标对象

    sudo ufw delete allow 22/tcp
    

8. 验证配置

修改规则后,可以使用 telnetnmap 验证端口是否开放:

nmap -p 22,80,443 your_server_ip

9. 重置防火墙

如果需要恢复到默认配置,可以重置防火墙规则:

sudo ufw reset

通过以上步骤,你可以灵活配置Ubuntu的防火墙以满足不同需求。请根据实际应用场景调整规则,确保系统的安全性和可用性。

0