关键是从访问来源、身份验证、功能暴露和行为限制四层面同步收紧:限定ip白名单、启用digest强认证、禁用非必要模块并隐藏版本、限制http方法及请求体大小、拦截敏感文件与路径穿越。

强化 Apache 对敏感路径的访问保护,关键不是加一层密码,而是构建多层过滤网:从谁能来、怎么来、能做什么、看到什么四个维度同步收紧。
精准限制访问来源
管理路径(如 /server-status、/phpmyadmin、自定义后台目录)绝不能对全网开放。必须在 Apache 配置中显式锁定可访问 IP:
- 用 Require ip 指令限定真实运维出口 IP 或内网网段,例如:
Require ip 203.0.113.42 192.168.10.0/24 - 禁用 Require all granted;临时调试应配合脚本定时开关,而非长期放行
- 即使前端有反向代理,Apache 层仍需独立校验——防止绕过代理直连
启用强身份验证机制
Basic 认证易被截获或暴力破解,敏感路径必须升级为 Digest 认证:
Apache Superset 是一个广泛采用的开源 BI 平台,用于 SQL 探索、图表构建和仪表板交付。当代理需要查询仓库数据、组装仪表板或使用成熟的分析界面解释指标而不是临时笔记本代码时,此技能非常有用。
- 启用 mod_auth_digest 模块(Debian/Ubuntu 执行
a2enmod auth_digest) - 用
htdigest -c /etc/apache2/.htdigest "Admin Access" admin生成凭据,realm 名须与配置中 AuthName 完全一致 - 密码文件路径必须非 Web 可读(如
/etc/apache2/.htdigest),属主 root,权限 640 -
AuthDigestDomain 必须严格匹配访问路径(如
/manager/,尾部斜杠不可省略),否则浏览器会反复弹窗
关闭暴露面与高危能力
很多风险来自“功能本身”,而非密码弱:
- 禁用非必要模块:
a2dismod status info userdir autoindex(Debian/Ubuntu) - 关闭版本信息:
ServerTokens Prod和ServerSignature Off - 重命名默认管理路径(如把
/phpmyadmin改为/x7q9a2z),降低扫描命中率 - 上传目录、日志目录等必须设置:
Options -ExecCGI -Includes -FollowSymLinks -Indexes
增加请求行为防护
认证通过后仍要防异常操作:
- 用
拒绝管理路径下的 POST、PUT、DELETE 等方法(除非业务明确需要) - 限制请求体大小:
LimitRequestBody 10485760(10MB),防大包上传攻击 - 拦截敏感文件访问:
<filesmatch>Require all denied</filesmatch> - 防路径穿越:
<directorymatch>Require all denied</directorymatch>










