1.nginx升级前
1.1 需求信息
客户护网行动中,监测到nginx版本低于1.21.5存在0day漏洞,经核实,使用的nginx版本为1.21.0
1.2 解决方法
将nginx版本升级到1.21.5以上
# nginx 安装目录
/opt/Seeyon/NginxServer/nginx/sbin
2.下载和编译源码包
注:此下载和编译步骤在本地环境完成,非客户服务器环境
2.1 下载nginx程序和相关依赖源码
到官网去下载nginx安装包
注:下载官网当前稳定版本
# 下载
nginx下载
http://nginx.org/en/download.html
http://nginx.org/download/nginx-1.22.0.tar.gz
以nginx功能模块依赖包下安装包下载以后,需要根据实际情况做相应的安装初始化操作
# nginx-goodies-nginx-sticky-module-ng下载
https://bitbucket.org/nginx-goodies/nginx-sticky-module-ng/src/master/
https://bitbucket.org/nginx-goodies/nginx-sticky-module-ng/get/master.tar.gz
# openssl下载
https://www.openssl.org/
https://www.openssl.org/source/openssl-3.0.5.tar.gz
# zlib下载
http://www.zlib.net/
http://www.zlib.net/zlib-1.2.12.tar.gz
# pcre下载
http://www.pcre.org/
https://github.com/PCRE2Project/pcre2/releases/download/pcre2-10.40/pcre2-10.40.tar.bz2
2.2 编译nginx
# 编译
mkdir -p /home/nginx
# 进入nginx安装包解压后的目录
cd /home/nginx.install/nginx-1.22.0
# 初始化
./configure --prefix=/home/nginx --with-http_stub_status_module --with-http_ssl_module --with-http_realip_module --with-http_sub_module --with-http_flv_module --with-http_mp4_module --with-http_auth_request_module --with-http_random_index_module --with-http_gzip_static_module --add-module=/home/nginx.install/nginx-goodies-nginx-sticky-module-ng --with-pcre=/home/nginx.install/pcre2-10.40 --with-zlib=/home/nginx.install/zlib-1.2.12 --with-openssl=/home/nginx.install/openssl-openssl-3.0.5 --user=root --group=root
# 编译
make
# 安装
make install
# 打包带走
tar -czvf /home/nginx /home/nginx.1.22.0.tar.gz
3.nginx升级
3.1 部署nginx.1.22.0
# 版本信息
[root@localhost sbin]# ./nginx -V
nginx version: nginx/1.22.0
built by gcc 4.8.5 20150623 (Red Hat 4.8.5-44) (GCC)
built with OpenSSL 3.0.5 5 Jul 2022
TLS SNI support enabled
configure arguments: --prefix=/home/nginx --with-http_stub_status_module --with-http_ssl_module --with-http_realip_module --with-http_sub_module --with-http_flv_module --with-http_mp4_module --with-http_auth_request_module --with-http_random_index_module --with-http_gzip_static_module --add-module=/home/nginx.install/nginx-goodies-nginx-sticky-module-ng --with-pcre=/home/nginx.install/pcre2-10.40 --with-zlib=/home/nginx.install/zlib-1.2.12 --with-openssl=/home/nginx.install/openssl-openssl-3.0.5 --user=root --group=root