参考资料

  1. Nginxexpires:页面缓存时间配置详细说明以及案例
  2. 如何识别Nginx遇到攻击时如何快速响应?
  3. NginxDocker容器化配置详细说明以及案例
  4. 是否有自动化的安全检测nginx工具?
  5. Nginx进程配置指令详解
  6. Jenkins安装与配置详细说明以及案例
  7. Nginx的负载均衡能力
  8. Nginx端口监听(listen指令)详细说明以及案例
  1. 安装Nginx和WAF模块

    • 安装Nginx

    • 添加ModSecurity模块(如LibModSecurity)

  2. 配置WAF规则

    • 使用OWASP核心规则集(CRS)

    • 示例配置片段:

      modsecurity_rules_file /etc/nginx/modsec/main.conf;
      modsecurity on;
  3. Nginx安全加固配置

    • 禁用服务器令牌:

      server_tokens off;
    • 设置安全头部:

      add_header X-Frame-Options "SAMEORIGIN";
      add_header X-Content-Type-Options "nosniff";
  4. 限制请求处理

    • 限制请求大小:

      client_max_body_size 10m;
    • 限制请求方法:

      if ($request_method !~ ^(GET|POST|HEAD)$) {
          return 444;
      }
  5. 日志监控

    • 配置ModSecurity审计日志:

      SecAuditLog /var/log/nginx/modsec_audit.log
  6. 示例完整配置

    server {
        listen 80;
        modsecurity on;
        modsecurity_rules_file /etc/nginx/modsec/main.conf;
        
        location / {
            proxy_pass http://backend;
            modsecurity_rules_file /etc/nginx/modsec/crs-setup.conf;
            modsecurity_rules_file /etc/nginx/modsec/rules/*.conf;
        }
    }