最新下载
热门教程
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
怎样在 Nginx 中配置针对静态资源文件的访问防火墙
时间:2026-06-18 09:17:46 编辑:袖梨 来源:一聚教程网
Nginx可通过原生指令实现应用层访问控制:关闭目录浏览(autoindex off)、限制HTTP方法(仅GET/HEAD)、按IP黑白名单控制(allow/deny顺序生效),必要时集成ModSecurity与OWASP CRS增强防护。
Nginx 本身不是网络层防火墙,但它能通过原生指令组合实现面向静态资源的访问控制,效果接近轻量级应用层防火墙。关键不在于装额外模块,而在于用好 location 块内的规则逻辑。
关闭目录浏览,防止资源意外暴露
静态目录若未配置首页(如 index.html),默认可能列出全部文件名,泄露备份文件、配置片段或敏感路径。
在对应 location 中明确禁用:
-
autoindex off; - 若需临时启用(如内网调试),必须叠加 IP 限制或基础认证,不可对公网开放。
只允许合法请求方法
静态资源只需响应 GET 和 HEAD 请求。POST、PUT、DELETE 等方法无业务意义,且常被扫描工具滥用。
添加方法过滤:
-
if ($request_method !~ ^(GET|HEAD)$) { return 405; } - 这条 if 指令必须放在 location 块内,避免在 server 或 http 级别使用,否则可能引发重写冲突。
按 IP 实施黑白名单控制
适用于管理后台静态页、灰度资源、内网接口文档等场景。规则按书写顺序匹配,先写的优先生效。
例如限制仅特定 IP 访问 /admin-assets/:
-
location /admin-assets/ { allow 192.168.1.100; allow 203.0.113.45; deny all; } - 屏蔽已知恶意段:
deny 198.51.100.0/24; - 注意:
deny all必须放在最后,否则会提前截断后续 allow 规则。
集成 ModSecurity 做深度防护(可选)
当需要防御 SQL 注入、XSS、路径遍历等攻击时,可启用开源 WAF 引擎 ModSecurity。
- 安装模块(以 CentOS Stream 为例):
sudo dnf install nginx-mod-modsecurity - 在 server 或 http 块中启用:
-
modsecurity on; -
modsecurity_rules_file /etc/nginx/modsecurity.conf;
-
- 推荐搭配 OWASP Core Rule Set(CRS),它已覆盖主流攻击特征,无需手写复杂正则。
不复杂但容易忽略
相关文章
- 碧蓝航线wiki入口在哪-官网常用wiki站点推荐 06-18
- 元梦之星云游戏入口链接-元梦之星云游戏官网入口 06-18
- 2026年文心一言数据分析功能:数据清洗、分析报告与可视化 06-18
- 2026年文心一言工作流搭建:权限、模型选择与任务分工说明 06-18
- 元梦之星预约官网地址分享-元梦之星官网在哪 06-18
- 2026年文心一言编程辅助功能:代码生成、调试与模型上下文限制 06-18