apache 服务器安全配置
0x01.錯(cuò)誤詳情頁(yè)隱藏
錯(cuò)誤詳情頁(yè)測(cè)試方法:
- 訪問網(wǎng)站不存在的頁(yè)面,如果網(wǎng)站沒有做404頁(yè)面重定向,就會(huì)泄露其敏感信息如下圖:
- 查看響應(yīng)頭信息:
修復(fù)方法:
1).修改配置文件:etc/apache2/apache2.conf 或者/etc/httpd/conf/httpd.conf隱藏中間件信息。修改或添加以下配置:
ServerTokens Prod ServerSignature Off2).修改配置文件:/etc/php5/apache2/php.ini隱藏PHP信息,將expose_php = On 改為 expose_php = Off
expose_php = Off3).修改配置文件: /etc/apache2/sites-enabled/000-default.conf設(shè)置網(wǎng)站根目錄為 /var/www/html/
zzq@ubuntu:~$ sudo vim /etc/apache2/sites-enabled/000-default.conf 0x01-2.png4).修改配置文件:/etc/apache2/apache2.conf將網(wǎng)站根目錄里面的AllowOverride None設(shè)置AllowOverride All,保存退出!
zzq@ubuntu:~$ sudo vim /etc/apache2/apache2.conf <Directory /var/www/html>Options Indexes FollowSymLinksAllowOverride All #設(shè)置為All,此目錄下的.htaccess 指令才會(huì)生效Require all granted </Directory>5).修改完以上配置文件保存并退出,然后重啟apache服務(wù)
zzq@ubuntu:~$ sudo service apache2 restart6).再次訪問錯(cuò)誤頁(yè)面,已經(jīng)沒有剛才泄露的信息了
0x01-3.png zzq@ubuntu:~$ sudo curl -I http://192.168.178.135/ HTTP/1.1 200 OK Date: Tue, 01 May 2018 12:26:10 GMT Server: Apache Last-Modified: Tue, 17 Apr 2018 02:49:12 GMT ETag: "2cf6-56a02621ccf1c" Accept-Ranges: bytes Content-Length: 11510 Vary: Accept-Encoding Content-Type: text/html0x02.重定向404頁(yè)面
加固步驟:
1).在網(wǎng)站根目錄新建一個(gè).htaccess文件,內(nèi)容為:
zzq@ubuntu:/var/www/html$ cd /var/www/html/ zzq@ubuntu:/var/www/html$ ls -a . .. index.html wordpress zzq@ubuntu:/var/www/html$ sudo vim .htaccess ErrorDocument 404 /404.html zzq@ubuntu:/var/www/html$ ls -a . .. .htaccess index.html wordpress zzq@ubuntu:/var/www/html$2).在同目錄下新建404.html,文件名與上一步指定的文件名相同,即404.html
zzq@ubuntu:/var/www/html$ sudo vim 404.html <!DOCTYPE html> <html> <head><title>404頁(yè)面</title> </head> <body> Hello,This is 404 page!! </body> </html>3).測(cè)試一下,可以看到我們自定義的頁(yè)面已經(jīng)生效
0x02-1.png注意事項(xiàng)
1、不要將404錯(cuò)誤直接轉(zhuǎn)向到網(wǎng)站首頁(yè),這將導(dǎo)致首頁(yè)不被收錄;
2、/404.html 前面不要帶主域名,否則返回的狀態(tài)碼是302或200狀態(tài)碼;
3、自定義的404頁(yè)面必須是大于512B,如果小于這個(gè)大小,瀏覽器就不會(huì)執(zhí)行;
0x03.列目錄問題
什么是列目錄
當(dāng)Web服務(wù)器配置不當(dāng)?shù)臅r(shí)候,如果當(dāng)前目錄不存在默認(rèn)文件(比如index.html),Apache會(huì)列出當(dāng)前目錄下所有文件,造成敏感信息泄露。
我們可以測(cè)試一下,測(cè)試方法:
首先我們可以刪除存在的默認(rèn)文件index.html
然后再訪問網(wǎng)站
0x03-1.png修復(fù)方法:
修改配置文件:/etc/apache2/apache2.conf
zzq@ubuntu:~$ sudo vim /etc/apache2/apache2.conf <Directory /var/www/html> #這必須是網(wǎng)站的根目錄Options Indexes FollowSymLinksAllowOverride AllRequire all granted </Directory>Options Indexes FollowSymLinks
這里的indexes 是指在目錄中要存在index文件,如果不存在把文件列出來(lái),如果存在index文件可以直接顯示index文件,因此每個(gè)目錄都必須存在index文件,如果不存在有可能此目錄把文件全部列出來(lái)。
刪除Indexes這個(gè)參數(shù),保存退出,然后重啟apache服務(wù)
<Directory /var/www/html>Options FollowSymLinksAllowOverride AllRequire all granted </Directory> zzq@ubuntu:~$ sudo service apache2 restart再次訪問就會(huì)出現(xiàn)403Forbidden頁(yè)面如下圖所示:
0x03-2.png0x04.刪除默認(rèn)安裝頁(yè)面
測(cè)試方法
默認(rèn)安裝完成之后,會(huì)有一個(gè)默認(rèn)的apache測(cè)試頁(yè)面,里面會(huì)泄露一些信息,包括網(wǎng)站目錄,操作系統(tǒng),版本等等
圖片.png加固方法
step1.編輯配置文件/etc/httpd/conf.d/welcome.conf
[root@localhost ~]# vim /etc/httpd/conf/httpd.confstep2.找到如下行
圖片.pngstep3.修改為如下,并保存退出
圖片.pngstep4.重啟apache服務(wù)
[root@localhost ~]# service httpd restart修復(fù)驗(yàn)證
step1.在網(wǎng)站根目錄下創(chuàng)建一個(gè)index.php文件
step2.再次訪問
圖片.png0x05.文件權(quán)限
在圖片上傳過(guò)程中,特對(duì)是針對(duì)上傳圖片得目錄和上傳得文件內(nèi)容必須經(jīng)過(guò)嚴(yán)格控制,因?yàn)榭赡苡?br /> 于權(quán)限過(guò)高導(dǎo)致上傳被突破后,直接放入小馬,這個(gè)站點(diǎn)就被拿下了,所以對(duì)上傳目錄進(jìn)行權(quán)限控
制。
漏洞測(cè)試
圖片.png加固方法:
step1.編輯http.conf文件
[root@localhost upload]# vim /etc/httpd/conf/httpd.confstep2.限定目錄沒有執(zhí)行的PHP腳本執(zhí)行的權(quán)限
圖片.pngstep3.編輯重啟服務(wù) [root@localhost upload]# service httpd restart
step4.再次測(cè)試漏洞是否存在
可以看到/upload/目錄下的php小馬已經(jīng)不能用了
總結(jié)
以上是生活随笔為你收集整理的apache 服务器安全配置的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 关于JavaScript(脚本语言)
- 下一篇: 趋势解读:John D′Ambrosia