Nginx2026-04-15·8 分钟
Nginx 访问控制与安全策略
讲解 Nginx 访问控制配置、请求过滤和常见安全强化策略。
Nginx 访问控制与安全策略
1. IP 访问控制
nginx
location /admin {
allow 192.168.0.0/16;
deny all;
}allow与deny可以精细控制访问范围。- 默认顺序从上到下匹配。
2. 基本认证
nginx
location /secure {
auth_basic "Restricted";
auth_basic_user_file /etc/nginx/.htpasswd;
}- 使用
htpasswd创建用户名密码。 - 适合管理页面或内部接口保护。
3. 请求限制与防刷
nginx
limit_req_zone $binary_remote_addr zone=req_limit:10m rate=5r/s;
limit_req zone=req_limit burst=10 nodelay;- 控制请求速率,防止短时间内大量请求。
- 对登录、验证码、敏感接口尤为重要。
4. 防止常见攻击
nginx
server {
if ($request_method !~ ^(GET|POST|HEAD)$) {
return 444;
}
}- 过滤不合法 HTTP 方法。
- 通过
return 444丢弃可疑请求。
5. 隐藏版本信息
nginx
server_tokens off;- 避免向客户端泄露 Nginx 版本号。
6. 保护敏感路径
nginx
location ~ /(nginx|phpmyadmin|wp-admin) {
deny all;
}- 屏蔽不必要的管理路径。
- 只保留公开接口和静态资源访问权限。
7. 打开 WAF 与安全模块
- 可部署 ModSecurity、NAXSI 等 WAF。
- 通过规则阻断 SQL 注入、XSS、路径遍历等攻击。
8. 常见安全检查
- 定期检查
access.log和error.log是否有异常请求。 - 通过漏洞扫描工具对 Nginx 配置和 SSL 策略评估。
Nginx安全访问控制