nginx隐藏版本号和标识

前言

问:为什么要隐藏??

答:为了安全,如果暴露版本信息,有可能黑客可以通过版本信息,得知该版本存在的漏洞,进而对服务器进行攻击。

PS: 本来隐藏版本号就已经达到要求了,但可爱的XX要求把标识也隐藏掉!!

一、隐藏版本号

  1. 隐藏版本号比较简单,只要修改配置文件即可。 在配置文件中加入以下配置重启即可。

 server_tokens off;1

这个可以加在http块,server块。。 看自己的需求

修改效果:

修改前:

修改后:

二、隐藏nginx标识

这个会比较麻烦,要修改nginx的源码。

  1. 找到源码位置。先修改nginx.h文件(大约在14行)使用vi编辑器的时候可以使用 :set nu 来显示行号。

cd /home/nginx-1.21.6
vi src/core/nginx.h
12

如图修改成

修改前:

修改后:

2. 修改 ngx_http_special_response.c 和 ngx_http_header_filter_module.c 两个文件,这两个文件在http包下。

(1) ngx_http_special_response.c 修改22, 29, 36行,注意前后的引号

vi src/http/ngx_http_special_response.c
1

修改前:

修改后:

(2)ngx_http_header_filter_module.c 修改49行

vi src/http/ngx_http_header_filter_module.c
1

修改前:

修改后:

  1. 停止nginx,备份当前nginx,重新编译安装。

# 停止NGINX
/usr/local/nginx/sbin/nginx -s stop
# 备份cp /usr/local/nginx/sbin/nginx /usr/local/nginx/sbin/nginx.bak
# 查看之前的编译参数
/usr/local/nginx/sbin/nginx -V
# 重新编译安装
./configure --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module
makemakeinstall# 启动
/usr/local/nginx/sbin/nginx
123456789101112

修改后效果:

ps:这里使用一个不存在的页面进行实验,原本自带的index页和错误页要修改对应的nginx字符串。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值