如下圖,為Apache主機揭露之重要資訊的header,打算隱藏Server及ETag兩個值。
 
httpd.conf設立

#Reduce Server HTTP Header to the minimum product (Apache) rather than showing detailed version information of the server and operating system

ServerTokens Prod

 

#Remove the footer from error pages, which details the version numbers:

ServerSignature Off 

 結果:設立以上兩行,僅能減少顯示,顯示變為Server:Apache,如下圖。


 網路上另一教法為掛載mod_headers.so,如下,此法無法將Server:Apache隱藏或清除,要改寫Server值一定要重新編譯Apache

httpd.conf


LoadModule headers_module modules/mod_headers.so

<IfModule mod_headers.c>

Header unset Server

RequestHeader unset Server

</IfModule> 


以下步驟分別為隱藏ETag及改寫Server值

ETag

 

使用掛載mod_headers.so的方式,隱藏ETag欄位

httpd.conf


LoadModule headers_module modules/mod_headers.so

<IfModule mod_headers.c>

Header unset ETag

</IfModule> 

結果如下圖:

Server

我是選擇將主機clone到虛擬機中後,在虛擬機上修改ap_release.h及os.h,再重新編譯及安裝Apache後,將httpd測試無誤後,複製到正式機。

1. tar xvf httpd-2.x.x.tar
2. cd httpd-2.x.x
3. vi include/ap_release.h
修改#define AP_SERVER_BASEPRODUCT "Apache" 成為 #define AP_SERVER_BASEPRODUCT
"Microsoft-IIS/8.5"
4. vi os/unix/os.h
修改#define PLATFORM "Unix" 成為#define PLATFORM
"Win32"

以下依照先前安裝Apache
的設定
5. ./c
onfigure --enable-so
6. make
7. make install

clone虛擬機中測試步驟如下無誤,就可將httpd複製到正式機。

 


完成,如下圖。

arrow
arrow

    全站熱搜

    adamschen9921 發表在 痞客邦 留言(0) 人氣()