Apache中间件基线核查
字数 1126 2025-08-15 21:32:00
Apache中间件安全基线配置指南
1. 访问控制
1.1 访问控制功能
1.1.1 禁止客户端访问Web目录之外的任何文件
在httpd.conf中添加:
<Directory />
Order Deny,Allow
Deny from all
</Directory>
1.1.2 禁止Apache显示目录结构
在配置文件中,将所有Options关键字后的Indexes去掉:
<Directory "D:/Apache2/htdocs">
Options FollowSymlinks
</Directory>
1.1.3 更改默认端口
修改Listen语句:
Listen X.X.X.X:8080
1.1.4 禁用PUT、DELETE等危险的HTTP方法
在httpd.conf中添加:
<LimitExcept GET POST>
Deny from all
</LimitExcept>
1.2 访问控制覆盖范围
1.2.1 仅绑定提供服务的IP地址
- 单个IP地址时:
Listen 80
- 绑定特定IP:
Listen X.X.X.X:80
1.3 最小权限原则
1.3.1 以专门的用户帐号和组运行Apache
配置步骤:
- 创建新帐号
apache - 确认属于
Users组或不属于任何组 - 设置权限:
- 整个Apache安装目录:读取和执行(RX)
logs子目录:读/写/删除(RWD)
- 在"本地安全策略"中添加
apache到"作为服务登录" - 在服务属性中将Apache服务登录账户改为
apache - 重启Apache
1.4 敏感资源控制
1.4.1 控制Apache服务器根目录访问权限
- 确保
Users用户组无根目录写权限 - 不允许"完全控制"和"修改"权限
1.4.2 禁用CGI
- 禁止加载cgi相关模块:
# 去掉所有与cgi相关的LoadModule语句
- 禁止对
cgi_bin目录进行配置:
# 将cgi-bin目录的配置删除或者注释掉
2. 安全审计
2.1 审计功能
2.1.1 配置错误日志
ErrorLog logs/error_log
LogLevel notice
2.1.2 配置访问日志
CustomLog log/access_log
2.2 审计记录格式
2.2.1 配置日志记录格式
LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Accept}i\"\"%{Referer}i\" \"%{User-Agent}i\""
3. 剩余信息保护
3.1 请求超时设置
TimeOut 10
4. 软件容错
4.1 错误页面重定向
ErrorDocument 400 /custom400.html
ErrorDocument 401 /custom401.html
ErrorDocument 403 /custom403.html
ErrorDocument 404 /custom404.html
ErrorDocument 405 /custom405.html
ErrorDocument 500 /custom500.html
5. 资源控制
5.1 会话超时
KeepAliveTimeout 15
5.2 并发连接限制
5.2.1 缓冲http请求
AcceptFilter http data
5.2.2 缓冲https请求
AcceptFilter https data
5.2.3 启用http持久链接
KeepAlive On
5.3 资源限制
5.3.1 限制http请求的消息主体大小
LimitRequestBody 102400 # 限制在100KB内
# 注意:不可设置为0
6. 数据保密性
6.1 敏感信息保护
6.1.1 关闭TRACE方法
TraceEnable Off
6.1.2 删除缺省安装的无用文件
- 删除默认HTML文件:
htdocs/目录下的所有文件 - 删除默认CGI脚本:
cgi-bin/目录下的所有文件 - 删除Apache说明文件:
manual/目录下的所有文件
6.1.3 隐藏Apache版本号及其他敏感信息
ServerToken Prod
ServerSignature Off
6.2 安全通信
6.2.1 支持HTTPS
LoadModule ssl_module modules/mod_ssl.so
总结
本指南详细列出了Apache中间件的安全基线配置要求,涵盖了访问控制、安全审计、剩余信息保护、软件容错、资源控制和数据保密性六个方面。实施这些配置可以显著提高Apache服务器的安全性,减少潜在的安全风险。建议管理员根据实际环境需求,选择性地实施这些安全措施,并定期进行复查和更新。