1、确保对OS根目录禁用覆盖 访问控制
描述
通过禁止访问OS根目录,限制直接访问服务器内部文件的行为
使得运行web的服务器更加安全
检查提示
配置文件路径::/www/server/apache/conf/httpd.conf
加固建议
找到配置文件路径。 通过vim path(path为主配置文件的绝对路径,如果您的主配置文件中包含include <path>,则<path>为您的子配置文件路径) 在配置文件中 找到以<Directory />开头的配置项,按如下配置
<Directory />
...
AllowOverride None
...
</Directory>
2、确保默认情况下拒绝访问OS根目录 访问控制
描述
当AllowOverride设置为None时,.htaccess文件不具有访问上下文权限。当此指令设置为All时,任何具有.htaccess .htaccess文件中允许使用上下文。开启时增加了更改或查看配置的风险
意外或恶意的.htaccess文件不当使用
检查提示
配置文件路径::/www/server/apache/conf/httpd.conf
加固建议
找到配置文件路径。 通过vim path(path为主配置文件的绝对路径,如果您的主配置文件中包含include <path>,则<path>为您的子配置文件路径)编辑配置文件 找到以<Directory />开头的配置项,按如下配置
<Directory />
...
Require all denied
...
</Directory>
如没有,请增加
3、确保错误日志文件名和严重性级别配置正确 配置日志
描述
服务器错误日志非常宝贵,因为它们可用于发现潜在问题
在他们变得认真之前。 最重要的是,它们可以用来监视异常
行为,例如许多“未找到”或“未经授权”的错误,可能表明
攻击即将发生或已经发生。
检查提示
配置文件路径::/www/server/apache/conf/httpd.conf
加固建议
1.使用vim编辑器对配置文件进行编辑 vim path (path为主配置文件的绝对路径,如果您的主配置文件中包含include <path>,则<path>为您的子配置文件路径)
2.找到LogLevel 将其设置为LogLevel notice 3.找到ErrorLog 建议设置为ErrorLog "logs/error_log"`或自定义路径 如没有,请增加
4、确保超时设置正确 入侵防范
描述
DoS的一种常用技术,常见的是发起与服务器的连接。 通过减少
旧连接超时后,服务器可以更快,更多地释放资源反应灵敏。 通过提高服务器效率,它将对DoS攻击的抵御性更好
检查提示
配置文件路径::/www/server/apache/conf/httpd.conf
加固建议
1.使用vim编辑器对配置文件进行编辑 vim path(path为apache配置文件路径例/usr/local/apache2/etc/httpd.conf或/etc/httpd/conf/httpd.conf或查找include文件或自定义安装请自行查找)
2.找到Timeout将其设置为Timeout 10 如没有,请增加
5、确保keepAlive已启用 服务配置
描述
允许每个客户端重用TCP套接字,减少了系统和网络的数量
服务请求所需的资源。 这种效率提高可以提高服务器对DoS攻击的抵御性
检查提示
配置文件路径::/www/server/apache/conf/httpd.conf
加固建议
1.使用vim编辑器对配置文件进行编辑 vim path(path为主配置文件的绝对路径,如果您的主配置文件中包含include <path>,则<path>为您的子配置文件路径)
2.找到KeepAlive将其设置为 KeepAlive On 如没有,请增加该项
中危
6、确保限制对apache目录和文件的其他写访问 文件权限
描述
Apache目录上的权限应为rwxr-xr-x(755)和文件
权限应相似,除非适当,否则不可执行。 这适用于所有
已安装的Apache软件目录和文件
检查提示
--
加固建议
执行以下操作删除$ APACHE_PREFIX($ APACHE_PREFIX是apache的安装目录默认例/usr/local/apache2或/var/www/html如自定义请自行查找)目录上的其他写访问权限: chmod -R o-w $ APACHE_PREFIX
7、确保禁用http跟踪方法 服务配置
描述
TRACE方法不需要,并且很容易受到滥用,因此应该将其禁用。
检查提示
配置文件路径::/www/server/apache/conf/httpd.conf
加固建议
1.vim path(path为主配置文件的绝对路径,如果您的主配置文件中包含include <path>,则<path>为您的子配置文件路径)
2.找到选项TraceEnable将其值设置为off 如没有请增加
8、隐藏 Apache 的版本号及其它敏感信息确保未启用服务器签名不存在或者off 个人信息保护
描述
服务器签名在服务器充当代理时很有用,因为它们有助于
用户将错误与代理而非目标服务器区分开。 但是,在这个
在上下文中,显得很鸡肋,而且存在被识别的可能
检查提示
配置文件路径::/www/server/apache/conf/httpd.conf
加固建议
1.使用vim编辑器对配置文件进行编辑 vim pathpath为主配置文件的绝对路径,如果您的主配置文件中包含include <path>,则<path>为您的子配置文件路径)
2.找到ServerSignature将其设置为ServerSignature Off 如没有,请增加
9、确保Web根目录的选项受到限制 禁止 Apache 列表显示文件 数据保密性
描述
Web根目录或文档根目录级别的Options指令应限于所需的最少选项。 强烈建议设置为“无”。 但是,在这个水平上如果支持多种语言,则可能出现问题。 如没有此类需要,需启动
检查提示
配置文件路径::/www/server/apache/conf/httpd.conf
加固建议
1.使用 vim path (path为主配置文件的绝对路径,如果您的主配置文件中包含include <path>,则<path>为您的子配置文件路径)
2.找到<Directory "apache网页存放路径">(默认网页存放路径/usr/local/apache2或/var/www/html`,自定义路径请自行查找)
<Directory "apache存放网页路径"> Options Indexes FollowSymLinks </Directory>
将其设置为 Options None 如配置虚拟主机,请确保虚拟主机配置项中含有Options None 如没有,请增加 <Directory "apache存放网页路径"> Options None </Directory>
10、确保apache用户帐户具有无效的shell 身份鉴别
描述
apache帐户不得用作常规登录帐户,因此应为其分配一个
无效或nologin Shell,以确保无法用于登录。如果可以使用服务帐户(例如apache帐户)进行登录外壳到系统将会产生安全隐患。
检查提示
--
加固建议
为确保apache用户帐户具有无效的shell,使用命令chsh -s /sbin/nologin <apache_username>修改apache账户的shell(可以使用命令ps -ef | egrep "apache2|httpd"查看<apache_username>)