Apache:如何从用户隐藏服务器版本和操作系统?

时间:2012-01-25 10:08:42

标签: apache apache2

我在一个网站上看到我需要在httpd.conf文件中添加两行:

  

ServerSignature Off

     

ServerTokens Prod

但是当我添加它们时没有任何改变。如前所述,我可以在浏览器中看到

  

Apache / 2.2.16(Debian)

也许这很重要:当我打开文件时(我的意思是在添加上面的行之前)httpd.conf我看到它是空的。我使用VPS。

谢谢!

3 个答案:

答案 0 :(得分:19)

简单,

onHandleIntent()

sudo nano /etc/apache2/conf-enabled/security.conf 更改为ServerTokens OS 然后将ServerTokens Prod更改为ServerSignature On

重启apache2:

ServerSignature Off

此文章也将为您提供帮助Hide Apache Information

答案 1 :(得分:17)

你没有提供关于操作系统/分发等的足够信息

但是在ubuntu的apache安装中,apache2.conf看起来像这样:

<cut>
Include httpd.conf
Include ports.conf
Include conf.d/
Include sites-enabled/

并在 conf.d / security 中可以看到

ServerTokens OS

只需检查一下你的配置,在你的httpd.conf

中设置后,它会被覆盖

答案 2 :(得分:2)

also hide the name "Apache"

sudo apt-get install libapache2-mod-security2

然后将其添加到 /etc/apache2/apache.conf(您可以使用任何名称,这里我使用了空格):

<IfModule security2_module>
    SecRuleEngine on
    ServerTokens Min
    SecServerSignature " "
</IfModule> 

并重启Apache:

sudo service apache2 restart

有关包含@ShanuTThankachan 答案的完整文章,请参阅 here