因服务器漏扫F5 Nginx 安全毛病(CVE-2024-7347)
这里选择升级nginx解决
笔者服务器 nginx 如今是nginx-1.23.3 安装在/usr/local/nginx
此次版本为1.27.2 需要生存原来设置
以下为操作步调:
一、备份现有 Nginx 设置和文件
备份 Nginx 设置文件:
- cp /usr/local/nginx/conf/nginx.conf /usr/local/nginx/conf/nginx.conf.bak
复制代码 备份 Nginx 安装目次:
- cp -r /usr/local/nginx /usr/local/nginx-1.23.3.bak
复制代码 二、下载并解压 Nginx 1.27.2
下载 Nginx 1.27.2 安装包,可以从 Nginx 官方网站下载
- cd /usr/local/
- tar -zxvf nginx-1.27.2.tar.gz
复制代码 三、编译和安装 Nginx 1.27.2
- cd /usr/local/nginx-1.27.2
复制代码 设置编译选项,确保生存原来的模块和设置:
- ./configure --prefix=/usr/local/nginx --with-http_ssl_module --with-http_v2_module --with-http_realip_module --with-http_stub_status_module --with-stream --with-stream_ssl_module --with-pcre
复制代码 这里的设置选项可以根据你的实际需求举行调解。假如在 1.23.3 版本中有自定义的模块或设置,可以在这个步调中添加相应的选项以确保新的版本也包罗这些功能。
编译并安装
四、平滑升级
- 发送信号给旧版本的 Nginx 主进程,让它重新加载设置文件并启动新的工作进程:
- kill -USR2 `cat /usr/local/nginx/logs/nginx.pid`
复制代码 - 关闭旧版本的工作进程:
- kill -WINCH `cat /usr/local/nginx/logs/nginx.pid.oldbin`
复制代码 - 确认升级成功后,可以关闭旧版本的主进程:
- kill -QUIT `cat /usr/local/nginx/logs/nginx.pid.oldbin`
复制代码
五、检查升级结果
- 检查 Nginx 状态:
- /usr/local/nginx/sbin/nginx -t
复制代码 - 查看 Nginx 版本:
- /usr/local/nginx/sbin/nginx -V
复制代码 3.查看 Nginx 运行状态:
假如没有看到 Nginx 进程在运行,说明 Nginx 可能没有启动大概已经意外停止了。假如看到进程在运行,但仍旧出现错误,可能是 pid 文件出现了问题。
先删除现有的 nginx.pid 文件
- rm /usr/local/nginx/logs/nginx.pid
复制代码 尝试重新启动
- cd /usr/local/nginx/sbin
- ./nginx
复制代码 假如启动成功,Nginx 会自动创建一个新的 pid 文件,此中包罗正确的进程 ID。
文章内容参考:豆包ai
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。 |