Linux中國

Linux有問必答:如何在Apache網站伺服器上關閉伺服器簽名

問題:每當Apache2網站伺服器返回錯誤頁時(如,404 頁面無法找到,403 禁止訪問頁面),它會在頁面底部顯示網站伺服器簽名(如,Apache版本號和操作系統信息)。同時,當Apache2網站伺服器為PHP頁面服務時,它也會顯示PHP的版本信息。我如何在Apache2網站伺服器上關閉這些網站伺服器簽名呢?

透露網站伺服器帶有伺服器/PHP版本信息的簽名會帶來安全隱患,因為你基本上將你系統上的已知漏洞告訴給了攻擊者。因此,作為伺服器加固的一個部分,強烈推薦你禁用所有網站伺服器簽名。

禁用Apache網站伺服器簽名

禁用Apache網站伺服器簽名可以通過編輯Apache配置文件來實現。

在Debian,Ubunt或者Linux Mint上:

$ sudo vi /etc/apache2/apache2.conf

在CentOS,Fedora,RHEL或者Arch Linux上:

$ sudo vi /etc/httpd/conf/httpd.conf

將下面兩行添加到Apache配置文件底部。

ServerSignature Off

ServerTokens Prod

然後重啟網站伺服器以使修改生效:

$ sudo service apache2 restart (Debian, Ubuntu or Linux Mint)
$ sudo service httpd restart (CentOS/RHEL 6)
$ sudo systemctl restart httpd.service (Fedora, CentOS/RHEL 7, Arch Linux)

第一行『ServerSignature Off』使得Apache2網站伺服器在所有錯誤頁面上隱藏Apache版本信息。

然而,若沒有第二行的『ServerTokens Prod』,Apache伺服器將仍然在HTTP回應頭部包含詳細的伺服器標記,這會泄漏Apache的版本號。

第二行『ServerTokens Prod』所要做的是在HTTP響應頭中將伺服器標記壓縮到最小。

因此,同時放置兩行時,Apache將不會在頁面中或者HTTP響應頭中泄漏版本信息。

隱藏PHP版本

另外一個潛在的安全威脅是HTTP響應頭中的PHP版本信息泄漏。默認情況下,Apache網站伺服器通過HTTP響應頭中的「X-Powered-By」欄位包含有PHP版本信息。如果你想要在HTTP頭部中隱藏PHP版本,請使用文本編輯器打開php.ini文件,找到「expose_php = On」這一行,將它改為「expose_php = Off」即可。

在Debian,Ubunt或者Linux Mint上:

$ sudo vi /etc/php5/apache2/php.ini

在CentOS,Fedora,RHEL或者Arch Linux上:

$ sudo vi /etc/php.ini

expose_php = Off

最後,重啟Apache2網站伺服器來重新載入已更新的PHP配置文件。

現在,你不會再看到帶有「X-Powered-By」欄位的HTTP響應頭了。

via: http://ask.xmodulo.com/turn-off-server-signature-apache-web-server.html

譯者:GOLinux 校對:Caroline

本文由 LCTT 原創翻譯,Linux中國 榮譽推出


本文轉載來自 Linux 中國: https://github.com/Linux-CN/archive

對這篇文章感覺如何?

太棒了
0
不錯
0
愛死了
0
不太好
0
感覺很糟
0
雨落清風。心向陽

    You may also like

    Leave a reply

    您的電子郵箱地址不會被公開。 必填項已用 * 標註

    此站點使用Akismet來減少垃圾評論。了解我們如何處理您的評論數據

    More in:Linux中國