隐藏服务器信息

隐藏 Apache 版本信息

/etc/httpd/conf/httpd.conf(找不到可查看apache配置目录下的extra/httpd-default.conf,记得修改后引入此文档)

ServerTokens Prod
ServerSignature Off

隐藏 php 版本

php.ini

expose_php On
改成
expose_php Off

重启apache后,php版本和apache版本在http头中隐藏了。

详解 :
ServerTokens
用于控制服务器是否响应来自客户端的请求,向客户端输出服务器系统类型或内置模块等重要的系统信息。
在主配置文档中提供全局控制默认阀值为”Full”(ServerTokens Full),所以,如果你的Linux发行版本没有更改过这个阀值的话,所有与你的系统有关的敏感信息都会向全世界公开。比如RHEL会将该 阀值更改为”ServerTokens OS”,而Debian依然使用默认的”Full”阀值

 以apache-2.0.55为例,阀值可以设定为以下某项(后面为相对应的Banner Header):
Prod >>Server: Apache
Major >>Server: Apache/2
Minor >>Server: Apache/2.0
Minimal >>Server: Apache/2.0.55
OS >>Server: Apache/2.0.55 (Debian)
Full (or not specified) default >>Server: Apache/2.0.55 (Debian) php/5.1.2-1+b1 mod_ssl/2.0.55 OpenSSL/0.9.8b

ServerSignature
控制由系统生成的页面(错误信息,mod_proxy ftp directory listing等等)的页脚中如何显示信息。
可在全局设置文档中控制,或是通过.htaccess文档控制
默认为”off”(ServerSignature Off),有些Linux发行版本可能会打开这个阀门,比如Debian在默认的虚拟主机上默认将这个阀门设置为开放
全局阀门的阀值会被虚拟主机或目录单位的配置文档中的阀值所覆盖,所以,必须确保这样的事情不应该发生 .

参考自:http://www.path8.net/tn/archives/5074