其实隐藏 Nginx 版本号无非就是为了防止“各版本公开的漏洞”被人利用而已,这点 Nginx 其实很早就考虑到了,在Nginx 的配置文件里只要加上server_tokens off就可以在网页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 为例,伪装Nginx的具体办法,
首先需要在官网上下载 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[] =
"
"