【服务器管理】使用Docker部署的项目修复nginx 安全漏洞(CVE-2021-23017)

本博客主要记录使用Docker部署的前端项目修复nginx 安全漏洞(CVE-2021-23017)的过程。

漏洞报告

在这里插入图片描述
根据网上查阅的资料,该漏洞波及的版本为0.6.18-1.20.0,而官方网站http://nginx.org/en/download.html已经提供了1.20.2的稳定版本,因此,可以考虑升级nginx版本为1.20.2。

升级nginx版本

1、查看生产环境使用的nginx版本

curl -i 127.0.0.1

返回如下:

HTTP/1.1 200 OK
Server: nginx/1.17.3

2、查看本地安装的nginx版本

# 查找nginx安装位置
whereis nginx

返回为:nginx: /usr/local/nginx
查看nginx安装版本:

/usr/local/nginx/sbin/nginx -V

返回的版本为nginx version: nginx/1.2.8,这说明生产环境用的不是系统安装的版本,因此,可以考虑是通过docker部署的生产环境。

查看现在的nginx镜像的运行版本:

docker inspect nginx

拉取版本1.20.2的nginx

docker pull nginx:1.20.2

更改docker-compose.yml配置,以下的/var/trunk改为你的实际Docker部署项目的位置,其显著特征为包含docker-compose.ymlDockerfile等文件

cd /var/trunk
vim docker-compose.yml

修改nginx的版本号
在这里插入图片描述关闭docker-compose再重新开启:

docker-compose down
docker-compose restart

查看nginx版本:

curl -i 127.0.0.1

返回如下:

HTTP/1.1 200 OK
Server: nginx/1.20.2

这说明生产环境的nginx已经升级为1.20.2,修复漏洞成功!

需要注意的是,本博客仅适用于使用Docker部署生产环境的项目进行nginx版本升级!

posted @ 2022-06-04 18:09  华工陈艺荣  阅读(1240)  评论(0编辑  收藏  举报