nginx网站服务器的版本号,隐藏nginx版本号的两种方法

一般情况下,我们要知道一个网站用了哪种环境,只需要简单通过浏览器的F12控制台,查看http的响应头信息即可看到。

比如下面这个:

b1ce0a0f82c6ecf2f87356c26c7f371d.png

有时候在网站显示403/404/502等错误的时候,甚至还会暴露具体的版本号。

对于网站安全而言,隐藏web服务器的版本号是比较重要的。所以下面我们讲一下怎么隐藏nginx的版本信息。也就是说,让一般人很难清楚自己网站用的哪种web服务器。

第一种方法是修改nginx的配置文件,即nginx.conf

在里面找到server_tokens这一行,如果是On,则修改为Off即可。这种方法最简单,适用于一般小白或不喜欢折腾的人。

第二种方法则是直接修改nginx源码,达到隐藏版本甚至采用假信息迷惑别人的目的。比较适合爱折腾的技术狂们。

首先是下载nginx源码,下载前最好是通过nginx -V命令查看下之前nginx的相关编译信息,下载正确的版本号。

解压源码包,然后修改src/http/ngx_http_header_filter_module.c这个文件,大概是49-50行:

fb20a82defa27aa7451485c75d140a03.png

将nginx修改成你希望的名字,比如lce.cc之类。

接下来修改src/core/nginx.h这个文件,这三行都可以修改:

f392f5937571939ea87d836d3884fbb2.png

最后修改src/http/ngx_http_special_response.c这个文件大概36行:

83f2c66e593a16956884e3315f8f9958.png

修改完成后,按照之前nginx -V查看的编译参数重新编译,即./configure+编译参数,再make,备份原nginx二进制文件之后make install,再nginx -s reload(正确的方法是/etc/init.d/nginx restart)一下即可。

比如像我在修改源码完成后,会先:

./configure –user=www –group=www –prefix=/usr/local/nginx –with-http_stub_status_module –with-http_ssl_module –with-http_v2_module –with-http_gzip_static_module –with-http_sub_module –with-stream –with-stream_ssl_module –with-openssl=/root/lnmp1.6/src/openssl-1.1.1d –with-openssl-opt=’enable-weak-ssl-ciphers’ –with-ld-opt=-Wl,-rpath,/usr/local/luajit/lib –add-module=/root/lnmp1.6/src/lua-nginx-module-0.10.14 –add-module=/root/lnmp1.6/src/ngx_devel_kit-0.3.1rc1 –add-module=/root/lnmp1.6/src/ngx_cache_purge-2.3

再make

再make install

再/etc/init.d/nginx restart,即可。

这时候,可以通过F12控制台查看修改后的版本信息。

31034faab8edf4f832ea5fa531fa9a9c.png

a843cde4b756f965b261d6beff808fda.png

完成以上三步修改后,不管是通过浏览器F12控制台还是其他方式,对方都很难知道你真正采用了什么样的web服务器环境。

喜欢 (5)or分享 (0)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值