首页 帮助中心 帮助中心 美国高防云服务器部署Nginx的详细步骤
美国高防云服务器部署Nginx的详细步骤
时间 : 2025-03-06 13:51:04 编辑 : 华纳云 阅读量 : 27

  对于网站管理员或者开发人员来说,部署Nginx作为web服务器搭建一个安全的网站环境是非常重要的,不仅需要对Nginx有一定的了解,还要做好在美国高防云服务器环境下的优化和安全加固工作。下面是在美国高防云服务器部署Nginx的详细步骤,涉及到常规的安装和配置,还有专属优化措施。

  步骤一、安装Nginx

  更新系统并安装依赖

  # Ubuntu/Debian
  sudo apt update && sudo apt upgrade -y
  sudo apt install curl gnupg2 ca-certificates lsb-release software-properties-common -y

  # CentOS/RHEL
  sudo yum update -y
  sudo yum install epel-release -y

  安装 Nginx

  # Ubuntu/Debian
  sudo apt install nginx -y

  # CentOS/RHEL
  sudo yum install nginx -y

  启动并设置开机自启

  sudo systemctl start nginx
  sudo systemctl enable nginx

  步骤二、基础配置与安全加固

  配置 Nginx 基础文件:

  • 主配置文件路径:/etc/nginx/nginx.conf
  • 站点配置文件路径:/etc/nginx/sites-available/(Ubuntu)或 /etc/nginx/conf.d/(CentOS)

  限制敏感信息暴露:

  修改 nginx.conf,隐藏版本号等敏感信息:

  http {
      server_tokens off;  # 隐藏 Nginx 版本号
      ...
  }

  配置访问控制:

  在站点配置文件中限制 IP 访问(仅允许信任的 IP):

  server {
      listen 80;
      server_name example.com;

      location /admin {
          allow 192.168.1.0/24;  # 仅允许特定 IP 段
          deny all;
      }
  }

  启用 HTTPS(SSL/TLS):

  # 安装 Certbot
  sudo apt install certbot python3-certbot-nginx -y  # Ubuntu
  sudo yum install certbot python3-certbot-nginx -y  # CentOS

  # 获取证书(自动配置 Nginx)
  sudo certbot --nginx -d example.com -d www.example.com

  配置 HTTP 到 HTTPS 重定向:

  server {
      listen 80;
      server_name example.com www.example.com;
      return 301 https://$server_name$request_uri;
  }

  修改站点配置文件:

  server {
      listen 80;
      server_name example.com www.example.com;
      return 301 https://$server_name$request_uri;
  }

  步骤三、配置Nginx优化措施

  1. 限制连接速率:

  http {
    limit_req_zone $binary_remote_addr zone=one:10m rate=100r/s;

      server {
          location / {
              limit_req zone=one burst=200 nodelay;
              ...
          }
      }
  }

  2. 限制并发连接数:

  http {
      limit_conn_zone $binary_remote_addr zone=addr:10m;

      server {
          location / {
              limit_conn addr 50;  # 每个 IP 最多 50 个并发连接
              ...
          }
      }
  }

  3. 优化 TCP/IP 协议栈:

  修改 /etc/sysctl.conf 以抵御 SYN Flood 攻击:

  net.ipv4.tcp_syncookies = 1
  net.ipv4.tcp_max_syn_backlog = 4096
  net.ipv4.tcp_synack_retries = 2

  应用配置:

  sudo sysctl -p

  4. 配置缓存

  server {
      location ~* \.(jpg|jpeg|png|gif|ico|css|js)$ {
          expires 30d;
          add_header Cache-Control "public, no-transform";
      }
  }

  5. 启用 HTTP/2:

  server {
      listen 443 ssl http2;
      ...
  }

  步骤四、配置日志与监控

  配置访问日志和错误日志:

  http {
      access_log /var/log/nginx/access.log;
      error_log /var/log/nginx/error.log;
  }

  使用Fail2Ban自动封禁恶意 IP:

  安装并配置Fail2Ban:

  sudo apt install fail2ban -y  # Ubuntu
  sudo yum install fail2ban -y  # CentOS

  创建Nginx防护规则文件 /etc/fail2ban/jail.d/nginx.conf:

  [nginx-http-auth]
  enabled = true
  filter = nginx-http-auth
  logpath = /var/log/nginx/error.log
  maxretry = 3
  bantime = 3600

  部署好Nginx以后,需要将安全加固和与美国高防云服务器结合,进行一系列必要的优化措施,这样不仅可以确保Nginx正常运行,还能充分利用其高防特性抵御网络攻击。特别提醒,在修改任何配置前务必要进行备份,最好是使用测试命令检查语法错误,逐步应用更改减少风险。

华纳云 推荐文章
美国高防云服务器配置FTP步骤(以centos系统为例) 美国高防云服务器安装Apache教程 如何在美国高防云服务器上面配置IPV6地址 如何在美国高防云服务器设置访问控制规则
客服咨询
7*24小时技术支持
技术支持
渠道支持