隐藏PHP/Nginx版本信息的方法

其实隐藏Nginx版本号无非就是为了防止“各版本公开的漏洞”被人利用而已,这点Nginx其实很早就考虑到了,在Nginx的配置文件里只要加上server_tokensoff就可以在网页head里隐藏掉Nginx的版本号了。

隐藏Nginx版本号

具体操作如下:

第一步:

vim /usr/local/nginx/conf/nginx.conf

在http{}中加入

server_tokens off;

第二步:

vi /usr/local/nginx/conf/fastcgi_params

将里面的

fastcgi_param SERVER_SOFTWARE nginx/$nginx_version;

修改为:

fastcgi_param SERVER_SOFTWARE nginx;

隐藏Web服务器名称

关于如何隐藏Web服务器名称,目前看除了在编译Web服务器名称的时候进行伪装以外没有很好的办法了。下面以Nginx为例,伪装Ng­inx的具体办法。

首先需要在官网上下载Nginx源码解压,解压后编辑源码中的src/core/nginx.h文件。

vi /src/core/nginx.h

修改为:

注意:#不可以删除否则会报错,注释的部分可修改为任何字符。

#define NGINX_VERSION      "1.0"  //修改版本号
#define NGINX_VER          "GWS/" NGINX_VERSION //修改服务名称

修改HTTP响应头:

vi src/http/ngx_http_header_filter_module.c

修改为:

static u_char ngx_http_server_string[] = "Server: GWS" CRLF;

修改错误页的底部Footer:

vi src/http/ngx_http_special_response.c

修改为:

static u_char ngx_http_error_tail[] =
"<hr><center>GWS</center>" CRLF
"</body>" CRLF
"</html>" CRLF
;

之后重新编译nginx即可。

注意事项:程序重新编译完后,要reload不会生效,需要用kill命令杀死原来的进程,再重新启动Nginx。

隐藏PHP版本号

找到PHP配置文件php.ini

定位到关键词expose_php,并将值设置成Off:

expose_php=Off

保存并退出文件。重启web服务器即可。

👋 感谢您的观看!

© 版权声明
THE END
喜欢就支持一下吧
点赞0 分享