温馨提示×

怎样在Ubuntu上配置Nginx防火墙

小樊
47
2025-08-14 05:41:36
栏目: 智能运维

在Ubuntu上配置Nginx防火墙主要通过UFW(Uncomplicated Firewall)实现,步骤如下:

  1. 安装UFW

    sudo apt update  
    sudo apt install ufw  
    
  2. 启用UFW并设置默认策略

    sudo ufw default deny incoming  # 拒绝所有入站连接  
    sudo ufw default allow outgoing # 允许所有出站连接  
    sudo ufw enable                # 启用防火墙  
    
  3. 开放Nginx所需端口

    • HTTP(80端口)
      sudo ufw allow 80/tcp  
      sudo ufw allow 'Nginx HTTP'  # 使用预定义配置文件(推荐)  
      
    • HTTPS(443端口)
      sudo ufw allow 443/tcp  
      sudo ufw allow 'Nginx HTTPS'  
      
  4. 允许SSH访问(避免被锁)

    sudo ufw allow 22/tcp  
    sudo ufw allow 'OpenSSH'  
    
  5. 查看防火墙状态

    sudo ufw status  
    
  6. (可选)限制Nginx访问

    • 限制特定IP访问:
      sudo ufw deny from <IP地址> to any port 80  
      sudo ufw allow from <IP地址> to any port 80  
      
    • 限制端口范围(如API服务):
      sudo ufw allow 8080:8090/tcp  
      

说明

  • Nginx Full配置文件会同时开放HTTP(80)和HTTPS(443)端口,适合大多数场景。
  • 若需更细粒度控制,可直接通过ufw命令指定端口和协议,或结合iptables规则。
  • 配置后需重启Nginx使规则生效:
    sudo systemctl restart nginx  
    

0