linux

Nginx安全设置怎么做

小樊
35
2025-08-26 02:51:41
栏目: 编程语言

以下是Nginx安全设置的关键措施:

  1. 基础安全加固
    • 隐藏版本信息:server_tokens off;
    • 禁用不安全HTTP方法:limit_except GET POST { deny all; }
  2. SSL/TLS安全配置
    • 启用HTTPS并强制跳转:listen 443 ssl; return 301 https://$host$request_uri;
    • 配置强加密套件:ssl_protocols TLSv1.2 TLSv1.3; ssl_ciphers 'ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384';
    • 启用HSTS:add_header Strict-Transport-Security "max-age=31536000; includeSubDomains";
  3. 访问控制与速率限制
    • IP黑白名单:allow 192.168.1.0/24; deny all;
    • 限制请求速率:limit_req_zone $binary_remote_addr zone=api_limit:10m rate=10r/s;
    • 限制并发连接数:limit_conn_zone $binary_remote_addr zone=addr:10m;
  4. 安全响应头设置
    • 防XSS:add_header X-XSS-Protection "1; mode=block";
    • 防点击劫持:add_header X-Frame-Options "SAMEORIGIN";
    • 防MIME嗅探:add_header X-Content-Type-Options "nosniff";
  5. 文件与目录权限
    • 禁止访问敏感文件:location ~* \.(conf|log|bak|git|env)$ { deny all; }
    • 限制上传目录权限:client_max_body_size 10M;
  6. 高级防护与运维
    • 集成WAF模块(如ModSecurity)
    • 定期扫描配置漏洞:gixy /etc/nginx/nginx.conf
    • 以低权限用户运行Nginx:user nginx;

参考来源:

0
看了该问题的人还看了