修改nginx的版本号,既增加安全性又可以用来装逼。
nginx展示名称的地方,通常有Response Header中的server,错误页等。
修改几个位置如下:
修改src/core/nginx.h
#define NGINX_VERSION "1.12.1" #define NGINX_VER "NGINX/" NGINX_VERSION
修改src/http/ngx_http_header_filter_module.c
static u_char ngx_http_server_string[] = "Server: nginx" CRLF;
修改src/http/ngx_http_special_response.c
static u_char ngx_http_error_tail[] = "<hr><center>nginx</center>" CRLF "</body>" CRLF "</html>" CRLF ;
对于http2(https),还需要修改
修改src/http/v2/ngx_http_v2_filter_module.c
static const u_char nginx[5] = "\x84\xaa\x63\x55\xe7";
此处的内容经过压缩编码,可以使用工具HPACK-Encode转换。
已经编译过的,可以直接下载go.zip
使用方法
go.exe “xxxxx”
对于http3,还需要修改
修改src/http/v3/ngx_http_v3_filter_module.c
169行:
n = sizeof("nginx") - 1;
352、353行
p = (u_char *) "nginx"; n = sizeof("nginx") - 1;
重新编译nginx…….
未经允许不得转载:运维大虾 » nginx修改server header-自定义版本号