基线管理之apache安全配置

实验目的

理解apache安全配置项的作用,掌握安全配置项的配置方法

实验拓扑

实验环境

一台Centos 7.2服务器,已安装(apache) httpd ,并开机自启动。

实验原理

通过编辑apache配置文件实现apache的安全配置,apache默认配置文件路径是/etc/httpd/conf/httpd.conf

实验步骤

一、确保apache无法访问根目录

查看apache配置文件,确定里面对根目录是拒绝所有请求

vim /etc/httpd/conf/httpd.conf

按箭头,下翻可以找到以下配置

基线管理之apache安全配置_第1张图片

其中,第一行和第四行,指明了目录,即Linux的根目录 /

第二行,表示禁止使用.htaccess文件,覆盖此处配置

第三行,表示禁止访问根目录

二、删除网站的目录浏览权限

apache会在默认路径下开启目录浏览

继续查看apache配置文件,如图,其中Indexes即为目录浏览权限,直接删除掉即可。

基线管理之apache安全配置_第2张图片

三、限制HTTP方法

apache默认没有限制限制http方法,我们可以在需要的路径下进行限制
在路径配置中加入



Require all denied

如在根目录下配置 ,如图

基线管理之apache安全配置_第3张图片

四、错误页面重定向

http的错误页面可能会暴露服务器信息,我们可以将错误页面都重点向到某文件

新建一个错误页面文件,文件内容为error

echo  error  > /etc/var/www/html/error.txt

如果出现不成功的提示如下图,则一步步创建目录即可

mkdir etc
cd etc
mkdir var
cd var
mkdir www
cd www
mkdir html
cd html
mkdir error.txt

编辑配置文件,指定错误代码400 401 402 403 404 500 指向error

基线管理之apache安全配置_第4张图片

五、限制POST数据大小

编辑配置文件

在文件中加下行,注意不要放在路径的申明中

LimitRequestBody 100

基线管理之apache安全配置_第5张图片

基线管理之apache安全配置_第6张图片

六、记录下post的数据

很多攻击行为由post发起,记录post数据可以便于追踪溯源

编辑配置文件

加载记录IO的模块

LoadModule dumpio_module modules/mod_dumpio.so

基线管理之apache安全配置_第7张图片

指定日志级别,记录IO (位置一定要对,不能随意编辑)

LogLevel dumpio:trace7

DumpIOInput On

基线管理之apache安全配置_第8张图片

七、保存退出,并重启服务

退出vim ,使用以下命令重启apache服务

systemctl restart httpd

基线管理之apache安全配置_第9张图片

有点问题。。直接重装算了(谨慎操作),公司小白请勿效仿

先看看是什么玩意

 rpm -qa|grep httpd

rpm -e httpd 

 我删他,他还跑了?。。米奇妙妙屋

 另一个

rpm -e httpd-2.4.6-97.el7.centos.2.x86_64

重下:

yum -y install httpd

可以重启了

 从头又搞一遍

基线管理之apache安全配置_第10张图片

这种事会有各种问题很正常,不过大多数还是可以解决的,大家共勉之吧。

八、验证配置

前面我们已经完成了apache的加固,下面进行验证,这里我们使用linux自带的curl工具进行验证

1、验证当前的HTTP限制的方法,如我们head方法进行测试

如图curl -I 127.0.0.1 ,其中 -I表示使用head方法

基线管理之apache安全配置_第11张图片

2、验证错误页面重定向(又开始了。。。就到这吧,下面是正常)

curl 127.0.0.1/test.html

因为服务器上并不存在test.html,所以重定向到了error.txt

3、验证限制post数据大小

curl使用-d选项时,会使用post,前面我们限制postbody100字节,下面引号中随便输入足够长的数据即可

curl  -d 'testtesttesttestsa 中间输入超过100个字符随便输入jfljaslfjlajflajlfjsfuwefjsljfljsttesttest' 127.0.0.1

基线管理之apache安全配置_第12张图片

4、验证日志记录post数据
使用下面命令向服务器post的数据为11223344

curl -d '11223344' 127.0.0.1

基线管理之apache安全配置_第13张图片

服务器无法处理post请求,直接报错error

查看日志,可以在日志中找到11223344

你可能感兴趣的:(等保测评,基线管理,演武场,apache,安全,linux)