本文将帮助你隐藏来自最终用户的Apache/PHP版本的详细信息。使得改变之前先使用下面的命令来查看哪些信息服务器在HTTP头中发送。
# wget --server-response --spider http://local.youcl.com
--17:54:02-- http://local.youcl.com/
Resolving local.youcl.com... 192.168.1.11
Connecting to local.youcl.com|192.168.1.11|:80... connected.
HTTP request sent, awaiting response...
HTTP/1.1 200 OK
Date: Mon, 07 Oct 2013 07:17:01 GMT
Server: Apache/2.2.15 (CentOS)
X-Powered-By: PHP/5.4.20
Connection: close
Content-Type: text/html; charset=UTF-8
Length: unspecified [text language="/html"][/text]
200 OK
注意上述细节,并保持供以后比较。让我们按照步骤来隐藏细节。
1.隐藏Apache服务器信息
设置ServerTokens指令:
该 ServerTokens指令控制其发送回客户端服务器响应头字段是否包括通用操作系统的详细信息。
了解更多关于ServerTokens 有可与响应值被配置为当使用下列选项。使用下面一个命令查看在服务器的基础信息。
ServerTokens Prod # Server sends (e.g.): Server: Apache
ServerTokens Major # Server sends (e.g.): Server: Apache/2
请点击这里获取更多的选择与ServerTockens指令使用
设置ServerSignature指令
该 ServerSignature配置服务器生成的文档页脚。编辑Apache配置文件和搜索ServerSignature指令和更新。
了解更多关于ServerSignature
ServerSignature Off
2.隐藏PHP版本
默认情况下已安装了PHP的服务器上PHP信息会暴露给全世界,其中包括HTTP头中的PHP版本上(例如:X-Powered-By: PHP/5.4.20)。
阅读更多 若要隐藏它,以下面的指令编辑php.ini,expose_php 为 Off
expose_php = Off
3.重新启动Apache和验证更改
重新启动Apache服务器重新加载的变化。
# service httpd restart
你必须在你的服务器做必要的修改。现在,再次使用下面的命令使所有更改后,并与先前的结果比较输出。
# wget --server-response --spider http://wordpress.youcl.com
--18:22:20-- http://wordpress.youcl.com/
Resolving wordpress.youcl.com... 192.168.1.11
Connecting to wordpress.youcl.com|192.168.1.11|:80... connected.
HTTP request sent, awaiting response...
HTTP/1.1 200 OK
Date: Mon, 07 Oct 2013 07:45:18 GMT
Server: Apache
Connection: close
Content-Type: text/html; charset=UTF-8
Length: unspecified [text language="/html"][/text]
200 OK