破洛洛手机网
当前位置: 首页 > 服务器 > WEB服务器 > 正文

在Apache上隐藏服务器签名的方法

作者:佚名 来源:网络整理 2015-6-7

   这篇文章主要介绍了在Apache上隐藏服务器签名的方法,示例基于Debian系的Linux,需要的朋友可以参考下

  透露网站服务器带有服务器/PHP版本信息的签名会带来安全隐患,因为你基本上将你系统上的已知漏洞告诉给了攻击者。因此,作为服务器加固的一个部分,强烈推荐你禁用所有网站服务器签名。

20156693654032.png (531×298)

  禁用Apache网站服务器签名

  禁用Apache网站服务器签名可以通过编辑Apache配置文件来实现。

  在Debian,Ubunt或者Linux Mint上:

  ?

1 $ sudo vi /etc/apache2/apache2.conf

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

  ?

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

  将下面两行添加到Apache配置文件底部。

  复制代码 代码如下:

  ServerSignature Off

  ServerTokens Prod

  然后重启网站服务器以使修改生效:

  ?

1 2 3 $ 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版本信息。

20156693718770.png (561×296)

  然而,若没有第二行的‘ServerTokens Prod',Apache服务器将仍然在HTTP回应头部包含详细的服务器标记,这会泄漏Apache的版本号。

20156693912464.jpg (583×402)

  第二行‘ServerTokens Prod'所要做的是在HTTP响应头中将服务器标记压缩到最小。

  因此,同时放置两行时,Apache将不会在页面中或者HTTP响应头中泄漏版本信息。

20156693934379.jpg (500×347)

  隐藏PHP版本

  另外一个潜在的安全威胁是HTTP响应头中的PHP版本信息泄漏。默认情况下,Apache网站服务器通过HTTP响应头中的“X-Powered-By”字段包含有PHP版本信息。如果你想要在HTTP头部中隐藏PHP版本,请使用文本编辑器打开php.ini文件,找到“expose_php = On”这一行,将它改为“expose_php = Off”即可。

20156694021370.jpg (395×256)

  在Debian,Ubunt或者Linux Mint上:

  ?

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

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

  ?

1 2 3 $ sudo vi /etc/php.ini   expose_php = Off

  最后,重启Apache2网站服务器来重新加载已更新的PHP配置文件。

  现在,你不会再看到带有“X-Powered-By”字段的HTTP响应头了。

推荐阅读