nginx安全笔记

一、隐藏版本信息

nginx

复制代码
http {
    server_tokens off;
}

二、禁用不必要的 HTTP 方法

nginx

复制代码
if ($request_method !~ ^(GET|HEAD|POST)$) {
    return 405;
}

三、防点击劫持、XSS、MIME 嗅探

nginx

复制代码
add_header X-Frame-Options SAMEORIGIN;
add_header X-XSS-Protection "1; mode=block";
add_header X-Content-Type-Options nosniff;

四、限制请求频率(防 CC、暴力破解)

nginx

复制代码
http {
    limit_req_zone $binary_remote_addr zone=one:10m rate=10r/s;
}
server {
    limit_req zone=one burst=20 nodelay;
}

五、限制连接数

nginx

复制代码
http {
    limit_conn_zone $binary_remote_addr zone=addr:10m;
}
server {
    limit_conn addr 10;
}

六、禁止恶意 UA / 爬虫

nginx

复制代码
if ($http_user_agent ~* (curl|wget|python|scrapy|fiddler)) {
    return 403;
}

七、禁止访问敏感文件 / 目录

nginx

复制代码
location ~ /\.ht { deny all; }
location ~ /\.git { deny all; }
location ~ /\.env { deny all; }
location ~ /config\.php { deny all; }

八、上传目录禁止脚本执行

nginx

复制代码
location ~* /upload/.*\.(php|php5|jsp|asp)$ {
    deny all;
}

九、SSL/TLS 安全(HTTPS 必备)

nginx

复制代码
ssl_protocols TLSv1.2 TLSv1.3;
ssl_ciphers ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256;
ssl_prefer_server_ciphers on;
ssl_session_cache shared:SSL:10m;
add_header Strict-Transport-Security "max-age=31536000; includeSubDomains";

十、日志与权限

  • 日志目录权限 700,日志文件 600
  • Nginx 运行用户非 root
  • 定期切割、审计访问日志

十一、通用安全原则

  • 最小权限运行
  • 及时更新 Nginx
  • 只开放必要端口 80/443
  • 禁用目录索引 autoindex off
相关推荐
网络工程小王9 小时前
【Transformer架构详解】(学习笔记)
笔记·学习
北风toto9 小时前
前端CSS样式详细笔记
前端·css·笔记
菱玖9 小时前
SRC常见漏洞情况分类
运维·安全·安全威胁分析
Heartache boy10 小时前
野火STM32_HAL库版课程笔记-手动建立工程模板与CubeMX后续用法(重要)
笔记·stm32·单片机·嵌入式硬件
桃地睡不着10 小时前
ai安全工具:CyberStrikeAI安装部署与使用
人工智能·安全·渗透测试
不灭锦鲤12 小时前
网络安全学习(面试)
学习·安全·web安全
Ztopcloud极拓云视角14 小时前
Gemini 3.1 Pro vs GPT-5.4 Pro:API成本1/3、性能差多少?选型实测笔记
人工智能·笔记·gpt·ai·语言模型
南湖北漠16 小时前
奇奇怪怪漫画里面的蛞蝓是带壳的那种鼻涕虫
网络·人工智能·计算机网络·其他·安全·生活
OPHKVPS17 小时前
WebRAT恶意软件借GitHub伪造漏洞利用程序传播
网络·安全·github
鱼鳞_17 小时前
Java学习笔记_Day22
java·笔记·学习