当前位置:首页/归档/2023

简单NGINX配置实现隐藏NGINX版本号

2023-12-19 12:55:45 / 超级管理员 / 70670 浏览

介绍

我们使用Nginx进行代理时,所有的网络请求都是通过Nginx进行分发。而只要是软件那么都会有漏洞。

Nginx也再所难免会有一些漏洞,而Nginx也在不断进行版本迭代,那么我们就需要在对外访问的时候,避免外界获取到我们的

Nginx的版本。减少部分因为版本暴露而出现的攻击风险。(及时升级最新版本,安全性会更高。)

本篇介绍如何将我们的Nginx的版本号进行隐藏,避免受到外界攻击。

1、如何查询自己的服务器Nginx 版本是否隐藏

下面介绍不同环境下的查询方法

(1)windows环境下

我们可以通过浏览器访问网页,按F12进入检查模式,通过Network 面板可以看到当前页面的所有网络请求

随意找一个接口点击,通过弹出的请求详情中的Headers面板下的 Response Headers 可以看到下面的数据:

其中Server 后面就会显示你的nginx 的版本号了:

Accept-Ranges: bytes
Access-Control-Allow-Credentials: true
Access-Control-Allow-Headers: Content-Type,ADMIN-Authorization,API-Authorization
Access-Control-Allow-Methods: GET, POST, PUT, DELETE, OPTIONS
Access-Control-Max-Age: 3600
Cache-Control: public,max-age=60,s-maxage=60
Content-Encoding: gzip
Content-Length: 3348
Content-Type: application/javascript
Date: Fri, 23 Sep 2022 01:55:37 GMT
Last-Modified: Tue, 08 Mar 2022 07:14:08 GMT
Server: nginx/1.23.0
Vary: Origin

上面的实例是 nginx版本号被暴露的实例, 如果隐藏版本号后就会显示成:Server: nginx/ 不会显示NGINX的版本号。

(2)Linux 环境下

相较于windows的查询方法,Linux 查询可以直接通过 curl -I 命令进行查询了。

例如查本站的效果:

[root@iZuf63tu3fn1swasqa62h8Z nginx]# curl -I zinyan.com
HTTP/1.1 301 Moved Permanently
Server: nginx
Date: Fri, 23 Sep 2022 02:09:49 GMT
Content-Type: text/html
Content-Length: 178
Connection: keep-alive
Location: https://zinyan.com/

如果没有进行nginx 版本隐藏就会在nginx 后面加上版本号了。

2、隐藏Nginx 版本

隐藏方法比较简单,我们先从宝塔面板中操作:软件商店-运行环境(或者搜索:NGINX)-设置--修改配置--在http级

别中添加server_tokens off(如有,可以忽略),配置好之后我们点击NGINX管理中的重启让我们的配置生效。

实现效果如下:

留在最后:关闭NGINX有一个好处,在一定的范围内可以防止不法分子通过NGINX对应的版本进行安全扫描,对服务器、网站等信息不利。