Apache HTTP Server中间件安全基线配置与操作指南

1、账号管理

1.1、账号安全设置

安全基线项目名称

Apache 用户帐号安全基线要求项

安全基线编号

ZJLY-apache-001

安全基线项说明

配置专门用户账号和组用于运行 Apache

设置操作步骤

创建 Apache 用户和组。

修改 http.conf 配置文件,添加以下语句:

User apache 或 nobody

Group apachegroup 或 nobody

基线符合性判定依据

Apache 进程以 apache 或者 nobody 用户运行,执行命令:#ps -ef|grep httpd 查看

备注

1.2、账号授权

安全基线项目名称

Apache Web 根目录文件操作安全基线要求项

安全基线编号

ZJLY-apache-002

安全基线项说明

确保只有 root 用户可以修改 Web 根目录下的文件

设置操作步骤

1、Apache 的主目录对应于 Apache Server配置文件 httpd.conf 中的 Server Root 控制项,应设置为:

Server Root /etc/httpd

判定条件: 非超级用户不能修改该目录中的内容。

检测操作: 尝试进行修改,看是否能修改该目录中的内容。

2、严格设置配置文件和日志文件的权限,防止未授权访问。

执行chmod 600 /etc/httpd/conf/httpd.conf命令设置配置文件为属主可读写,其他用户无读写权限。

执行chmod 644 /var/log/httpd/*.log命令设置日志文件为属主可读写,其他用户拥有只读权限

基线符合性判定依据

用普通用户登陆服务器,尝试在Web目录下修改或者新建文件, 检查操作是否成功。

备注

/etc/httpd/conf/httpd.conf 配置文件的默认权限是644,可根据需要修改权限为600。 - /var/log/httpd/*.log 日志文件的默认权限为644,默认设置即符合要求

2、日志配置

安全基线项目名称

Apache 日志配置-审核登录策略安全基线要求项

安全基线编号

ZJLY-pache-003

安全基线项说明

应配置日志功能,对运行错误、用户访问等进行记录,记录内容包括时间,用户使用的 IP 地址等内容

设置操作步骤

编辑 httpd.conf 配置文件,设置日志记录文件、记录内容、记

录格式。

LogLevel notice

ErrorLog logs/error_log

LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Accept}i\"

\"%{Referer}i\" \"%{User-Agent}i\"" combined

CustomLog logs/access_log combined

ErrorLog 指令设置错误日志文件名和位置。错误日志是最重要

的日志文件,Apache httpd 将在这个文件中存放诊断信息和处

理请求中出现的错误。若要将错误日志送到 Syslog ,则设置:

ErrorLog syslog 。

CustomLog 指令设置访问日志的文件名和位置。访问日志中会

记录服务器所处理的所有请求。

LogFormat 设置日志格式,建议设置为 combined 格式。

LogLevel 用于调整记录在错误日志 中的信息的详细程度,建议设置为 notice。

基线符合性判定依据

查看 logs 目录中相关日志文件内容,应记录完整。

备注

3、访问控制

3.1、禁止访问外部文件

安全基线项目名称

Apache 目录访问权限安全基线要求项 

安全基线编号

ZJLY-pache-004

安全基线项说明

禁止 Apache 访问 Web 目录之外的任何文件

设置操作步骤

编辑 httpd.conf 配置文件:

<Directory />

Order Deny,Allow

Deny from all

</Directory>

设置可访问目录:

<Directory /web>

Order Allow,Deny

Allow from all

</Directory>

基线符合性判定依据

访问服务器上不属于 Web 目录的一个文件,结果应无法显示

备注

/web为网站根目录

4.2、错误页面处理

安全基线项目名称

Apache 错误页面安全基线要求项

安全基线编号

ZJLY-pache-005

安全基线项说明

Apache 访问错误页面重定向,防止泄露敏感信息

设置操作步骤

(1) 修改 httpd.conf 配置文件:

ErrorDocument 400 /custom400.html

ErrorDocument 401 /custom401.html

ErrorDocument 403 /custom403.html

ErrorDocument 404 /custom404.html

ErrorDocument 405 /custom405.html

ErrorDocument 500 /custom500.html

Customxxx.html 为要自建的错误页面。

(2)重新启动 Apache 服务

基线符合性判定依据

在地址栏输入一个不存在的页面,验证是否已指向错误页面

备注

4.3、目录列表访问控制

安全基线项目名称

Apache 目录列表安全基线要求项

安全基线编号

ZJLY-pache-006

安全基线项说明

禁止 Apache 列表显示文件

设置操作步骤

(1)编辑 httpd.conf 配置文件:

<Directory "/web">

Options Indexes FollowSymLinks

AllowOverride None

Order allow,deny

Allow from all

</Directory>

将 Options Indexes FollowSymLinks 中的 Indexes 去掉,就

可以禁止 Apache 显示该目录结构。Indexes 的作用就是当该目

录下没有 index.html 文件时,就显示目录结构。

(2)设置 Apache 的默认页面,编辑%apache%\conf\httpd.conf

配置文件,<IfModule dir_module>

DirectoryIndex index.html

</IfModule>

其中 index.html 即为默认页面,可根据情况改为其它文件。

(3)重新启动 Apache 服务。

基线符合性判定依据

直接访问 http://ip:8800/xxx (xxx 为某一目录),不会显示

目录内容。

备注

3.4、拒绝服务防御

安全基线项目名称

Apache 拒绝服务防御安全基线要求项

安全基线编号

ZJLY-pache-007

安全基线项说明

防范拒绝服务攻击

设置操作步骤

(1) 编辑 httpd.conf 配置文件:

Timeout 10 #客户端与服务器端建立连接前的时间间隔

KeepAlive On

KeepAliveTimeout 15 #限制每个session的保持时间是15秒

AcceptFilter http data

AcceptFilter https data

(2)重新启动 Apache 服务。

基线符合性判定依据

检查配置文件 httpd.conf 是否设置正确

备注

默认值为Timeout 120,KeepAlive Off,KeepAliveTimeout 15,该项设置涉及性能调整

3.5、隐藏敏感信息

安全基线项目名称

Apache 隐藏敏感信息安全基线要求项

安全基线编号

ZJLY-pache-008

安全基线项说明

隐藏 Apache 的版本号及其它敏感信息

设置操作步骤

修改 httpd.conf 配置文件:

ServerSignature Off

ServerTokens Prod

基线符合性判定依据

检查配置文件 httpd.conf

备注

3.6、关闭TRACE

安全基线项目名称

Apache TRACE 方法控制安全基线要求项

安全基线编号

ZJLY-pache-009

安全基线项说明

关闭 TRACE,防止 TRACE 方法被访问者恶意利用

设置操作步骤

(1)编辑 httpd.conf 配置文件,配置如下内容:

TraceEnable Off

(2)如果不存在则手动在文件末尾添加。

基线符合性判定依据

检查配置文件 httpd.conf

备注

3.7、关闭CGI

安全基线项目名称

Apache CGI 程序控制安全基线要求项

安全基线编号

ZJLY-pache-010

安全基线项说明

如果服务器上不需要运行 CGI 程序,建议禁用 CGI

设置操作步骤

编辑 httpd.conf 配置文件,把 cgi-bin 目录的配置和模块注释掉:

#<Directory "/var/www/cgi-bin">

#    AllowOverride None

#    Options None

#    Require all gra

#</Directory>

基线符合性判定依据

检查配置文件 httpd.conf

备注

3.8、禁用非法HTTP方法

安全基线项目名称

Apache 禁用非法HTTP方法安全基线要求项

安全基线编号

ZJLY-pache-011

安全基线项说明

只允许get 、post方法

设置操作步骤

编辑 httpd.conf 配置文件,新增或修改如下配置:

<Location />  

<LimitExcept GET POST CONNECT OPTIONS>

  Order Allow,Deny

  Deny from all

</LimitExcept>

</Location>

基线符合性判定依据

检查配置文件 httpd.conf

备注

3.9、限制访问敏感目录

安全基线项目名称

Apache 限制访问敏感目录安全基线要求项

安全基线编号

ZJLY-pache-012

安全基线项说明

只允许部分 IP 访问网站的敏感目录

设置操作步骤

编辑 httpd.conf 配置文件:

<Directory "/var/www/html/admin">

Order allow,deny

Allow from 192.*.*.*/255.255.255.0

</Directory>

基线符合性判定依据

检查配置文件 httpd.conf

备注

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值