透露网站服务器带有服务器/php版本信息的签名会带来安全隐患,因为你基本上将你系统上的已知漏洞告诉给了攻击者。因此,作为服务器加固的一个部分,强烈推荐你禁用所有网站服务器签名。
禁用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配置文件底部。
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版本信息。
然而,若没有第二行的‘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上:
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响应头了。