检查apache 版本
执行命令
#/usr/local/apache/bin/httpd -v
然后在sebug上搜索该版本号有什么漏洞,可根据提示提升版本或者打上补丁
3.隐藏banner信息
黑客攻击系统首先会想办法获取系统banner 信息.一般方法是访问一个不存在的目录,如果没有隐藏banner信息,系统会显示banner信息
先进行测试,用学生机浏览器访问1.html
发现本实验系统开始设置是隐藏 banner 信息的.
然后在配置文件/usr/local/apache/conf/httpd.conf
的31 行增加[使用vi编辑,31 行也非固定行数]
ServerSignature On
如下图
执行命令
#service httpd restart
用学生机器浏览器访问server一个不存在的URL===> 1.html如下图
发现服务器的banner 信息都能返回.显然这个是不安全的配置,如果此配置存在,需要将ServerSignature On 修改为:ServerSignature Off(不回显apache版本信息)
下面用vi 命令将 ServerSignature On
修改为:ServerSignature Off
然后重启apache
重新访问不存在的1.html
得到如下图
说明banner 信息被隐藏
4.配置httpd.conf目录浏览
先测试该服务器配置是否可以浏览系统目录,访问server ,如下图
在上述配置情况下,可以进行目录浏览,查看服务配置文件httpd.conf,寻找系统根目录/var/www 的配置属性
发现有Options indexes FollowSymLinks
修改为
配置完重新启动apache 服务
重新访问server 的web服务
5.合理配置apache的运行账户
并在httpd.conf寻找运行帐户,本服务的配置是nobody
因为用户nobody 没有sh执行权限,所以这种配置比较安全.一般情况下配置单独用户,该用户没有sh 执行权限.取消掉了运行账户对sh等的执行权限后能够防止webshell通过默认的sh执行命令
6.合理控制apache运行账户对sh等的执行权限
查看该运行帐户是否有sh 的权限
方法1:
执行su nobody -c ‘/bin/ls’
如下图,如果无执行权限则如下图所示.
方法2:
查看帐户是否有sh 执行权限.需要查看帐户基本属性,cat /etc/passwd
即可.
7.配置httpd.conf限制禁止访问的文件夹,例如后台目录
在/var/www目录下建立data 目录,在data目录下创建index.php.同时修改文件所属权限,执行过程如下图
通过浏览器访问index.php,如下图
要禁止访问该目录,需要增加如下配置
重新启动apache 服务则该目录不再能够访问
8.配置httpd.conf限制一些特殊目录的特定ip访问,如内部接口等。
修改对data 目录的配置如下图,重新启动apache 服务
重新访问服务器,如下图
发现可访问
9.配置httpd.conf取消对上传目录的可执行文件上传权限
在httpd.cnf 中配置如下段
<Directory "/var/www/aaa">
<FilesMatch ".(php|php5)$">
Deny from all
</FilesMatch>
</Directory>
然后重启apache
10.配置httpd.conf限制一些文件类型的访问,如*.txt
在已有的目录data下先创建1.txt,然后修改文件属性.
然后通过浏览器访问
由于.txt 等类型文件经常存放一些重要的信息,所以一般情况下需要禁止掉.配置如下图
重启apache 服务,然后访问 1.txt
发现被禁止
11.配置httpd.conf修改修改监听端口来防止一些内部系统被扫描
这样可以防止一些直接扫描80端口的黑客
Listen 80
修改为Listen 888
重启apache 服务,然后访问web 页面
发现没法访问80端口
虚拟目录
每个 Internet服务可以从多个目录中发布。通过以通用命名约定 (UNC) 名、用户名及用于访问权限的密码指定目录,可将每个目录定位在本地驱动器或网络上。虚拟服务器可拥有一个宿主目录和任意数量的其它发布目录。其它发布目录称为虚拟目录。指定客户 URL地址,服务将整个发布目录集提交给客户作为一个目录树。宿主目录是“虚拟”目录树的根。虚拟目录的实际子目录对于客户也是可用的。只有http://www.服务支持虚拟服务器;而 FTP和 gopher服务则只能有一个宿主目录。
【实验步骤】
网络拓扑:centos6.8
centos6.8
用户:root
密码:123456
第一步:打开虚拟机进入centos系统
第二步:进入终端界面
第三步:在终端输入“vim /etc/httpd/conf/httpd.conf”进入apache服务配置界面。
第四步:找到Alias /icons “/var/www/icons”,将这句替换成“Alias /linux “ /var/www/html/test”。”并将Directory中的路径改为“/var/www/html/test”后保存并退出。
第五步:创建一个文件夹,在终端输入“mkdir /var/www/linux”。
第六步:将apache服务器重启,在终端输入“service httpd restart”。
第七步:查看本地服务器地址,在终端输入“ifconfig”。
第八步:切换到图形化管理界面,打开firefox浏览器输入地址“http://192.168.248.128/linux”进行测试。
请登录后查看回复内容