修改NGINX版本名称伪装任意WEB SERVER

无论是作为Web服务器或其他类型程序的反向代理服务器,Nginx(“engine x”)都有着高性能且轻量级的优势。其特点是占有内存少,并发能力强,事实上Nginx的并发能力确实在同类型的网页服务器中表现较好。这也使得Nginx在如今不管是存放在高配独立服务器上的大型的门户,还是存放在迷你64M内存VPS上的小型的个人博客,Nginx都在被广泛使用着。

今天我们来说说,如何修改Nginx其内部默认名称。这对安全或者装逼都是非常实用的。

一般来说修改3个位置,一个是nginx.h、另一个是ngx_http_header_filter_module.c、还有一个ngx_http_special_response.c。

提示:一般修改都是在nginx编译之前修改,修改完了之后需要重新编译

scr/core/nginx.conf
#define NGINX_VERSION "1.4.7"
#define NGINX_VER "nginx/" NGINX_VERSION

修改为:(其实版本号也可以随意修改)

#define NGINX_VERSION "1.4.7"
#define NGINX_VER "jdws/" NGINX_VERSION

其实修改上面一个大部分就会生效!!!

/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 char ngx_http_server_string[] = "Server: jdws" CRLF;
/src/http/ngx_http_special_response.c
static u_char ngx_http_error_tail[] =
"<hr><center>nginx</center>" CRLF
"</body>" CRLF
"</html>" CRLF

修改为:

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

除了随意修改版本号之外,还可以隐藏版本号:

修改nginx.conf,在http{}加入

http{
server_tokens off;
}

就可以隐藏版本号了。

注意:

关掉了server_tokens之后,nginx.conf配置的东西会无效,回去寻找刚才我们第二步和第三步的配置

赞(0)
声明:本网站发布的内容(图片、视频和文字)以原创、转载和分享网络内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-62778877-8306;邮箱:fanjiao@west.cn。本站原创内容未经允许不得转载,或转载时需注明出处:西部数码知识库 » 修改NGINX版本名称伪装任意WEB SERVER

登录

找回密码

注册