原文:https://www.cnblogs.com/project/p/5095458.html
原作者写的很好,但是缺少一些东西,我这里做一下补充。
现在Web Server使用广泛,针对它的攻击也越来越多,Nginx这玩意出道时间也并不长,虽然国内很多门户网站都用它,小内存VPS用户也爱它,但是我可不想哪天它爆出了个惊天BUG,上次80sec公布的Nginx相关PHP FPM漏洞就是警示哦,倘若伪装了我的Nginx服务器,攻击者就不知道我使用的是何种Web Server,也就无从下手了。
一共修改3个位置,一个是nginx.h、另一个是ngx_http_header_filter_module.c、还有一个ngx_http_special_response.c。
提示:以下修改需要在编译安装Nginx之前进行,修改之后再编译
首先去下载nginx/tengine,下载方式就不说了,直接到解压完压缩包的步骤开始:
tenegine/nginx解压完后的文件目录如下
第一步:修改src/core/nginx.h(Nginx内部的名称和版本号)
#define NGINX_VERSION "1.8.0" #define NGINX_VER "NGINX/" NGINX_VERSION
NGINX_VERSION是版本号,NGINX_VER是名称
第二步:修改src/http/ngx_http_header_filter_module.c(HTTP ResponseHeader,就是调试的时候看到的)
static char ngx_http_server_string[] = "Server: nginx" CRLF;
第三步:修改src/http/ngx_http_special_response.c(修改错误页的底部Footer)
static u_char ngx_http_error_tail[] = "<hr><center>nginx</center>" CRLF "</body>" CRLF "</html>" CRLF ;
改完这些后,就可以make install了,然后启动nginx,访问就可以看到改变。