为什么需要禁止外网访问敏感目录
在IDC和云计算环境中,Web应用通常包含后台管理、备份、配置文件、日志存储等敏感目录。若这些目录暴露于外网,攻击者可利用目录扫描、路径遍历或直接访问获取敏感信息,进而实施权限提升、数据窃取或系统破坏。因此,正确配置访问控制是基础安全防线之一。
常见敏感目录示例
- 管理后台:如
/admin、/console、/manager - 配置文件:如
/config、/.env、/web.config - 备份与日志:如
/backup、/logs、/temp - 版本控制:如
/.git、/.svn、/cvs
主流Web服务器配置方法
Nginx
在 server 块或 location 块中添加拒绝规则。示例:
location ^~ /admin/ {
deny all;
return 403;
}
也可通过白名单方式允许特定IP:
location /backup/ {
allow 192.168.1.0/24;
deny all;
}
Apache
使用 Directory 或 Files 指令,在 .htaccess 或虚拟主机配置中:
Require all denied
Require ip 10.0.0.0/8
或针对文件类型:
Require all denied
IIS
使用URL重写模块或请求筛选:
- 在站点根目录的
web.config 中添加 规则。 - 或通过IP安全限制(IP Address and Domain Restrictions)仅允许内网访问管理路径。
云环境安全策略补充
除了Web服务器本身,还需在云平台安全组或网络ACL层面做双重防护:
- 安全组规则:将管理目录对应的端口(如80/443)的访问源限制为可信IP段(如内部VPN、堡垒机IP)。
- WAF规则:利用Web应用防火墙(WAF)拦截对敏感路径的访问请求,并开启路径防护功能。
- CDN/反向代理:避免直接暴露源站IP,通过CDN或Nginx反向代理过滤非法路径。
最佳实践与检查清单
- 默认拒绝:除非必要,所有目录默认拒绝外网访问,仅开放明确需要的路径。
- 最小权限:敏感目录只允许特定内部网络或管理IP访问。
- 定期扫描:使用目录扫描工具(如dirsearch、gobuster)定期检查暴露的目录。
- 监控告警:对404/403异常访问进行日志监控,及时发现扫描行为。
- 版本控制:不将包含敏感目录配置的代码提交到公共仓库。
通过上述配置,可大幅降低敏感目录被直接入侵的风险,保障IDC和云上业务的安全运行。