抱歉,您的浏览器无法访问本站
本页面需要浏览器支持(启用)JavaScript
了解详情 >


Nginx 隐藏版本号信息

当我们使用 apt 或者其他包管理工具安装完 Nginx 之后,访问网站时 Header 里面会默认携带 Nginx 的版本号信息。

命令行下可以使用命令查看:

curl -I http://your-domain
HTTP/2 200
server: nginx/1.16.1 #这里带有版本号信息
date: Thu, 12 Sep 2019 03:06:23 GMT
content-type: text/html; charset=
cache-control: public
content-language: auto

而软件漏洞往往都是跟版本绑定的,在管理员没有及时更新修复漏洞的情况下,一旦攻击者知道了你用的 Nginx 版本就能轻松利用已知漏洞实现入侵。

这无疑是一个安全隐患,所以对版本号进行隐藏就一定必要了(当然,更新修复漏洞才是解决问题的根本途径)。

解决方法

要隐藏 Nginx 版本号其实很简单,稍微修改一下配置文件即可。这里使用 vim 编辑器:

sudo vim /etc/nginx/nginx.conf

在 http {} 段中添加一行 server_tokens off;

http {
......
server_tokens off;
......
}

之后保存文件,测试 Nginx 配置文件是否正常后重载配置即可

sudo nginx -t            #测试配置文件是否正常
sudo nginx -s reload #重载nginx配置

测试效果

配置好之后可以再用 curl 测试一下,会发现不再显示 Nginx 版本号了。

HTTP/2 200
server: nginx #版本号信息没有了
date: Thu, 12 Sep 2019 03:32:16 GMT
content-type: text/html; charset=
cache-control: public
content-language: auto
推荐阅读
Nginx配置 Nginx配置 Linux安装PHP-EXIF扩展模块 Linux安装PHP-EXIF扩展模块 Package Manager Proxy Settings Package Manager Proxy Settings CentOS7安装GUI图形界面 CentOS7安装GUI图形界面 CentOS7重启之后无法联网重启network发现报错 CentOS7重启之后无法联网重启network发现报错 自建https证书 自建https证书

留言区

Are You A Robot?