背景:

根据其服务器响应标头,安装的 nginx 版本为低于 1.16.1 的 1.9.5,或是低于 1.17.3 的 1.17.x。因此,它受到多种拒绝服务漏洞的影响:

- HTTP/2 协议堆栈中存在拒绝服务漏洞,这是未正确处理异常情况所致。未经身份验证的远程攻击者可操纵大型数据请求的窗口大小和流优先级,进而利用此漏洞,造成拒绝服务情况。(CVE-2019-9511)

- HTTP/2 协议堆栈中存在拒绝服务漏洞,这是未正确处理异常情况所致。未经身份验证的远程攻击者可创建多个请求流并持续打乱流的优先级,进而利用此漏洞,造成拒绝服务情况。(CVE-2019-9513)

- HTTP/2 协议堆栈中存在拒绝服务漏洞,这是未正确处理异常情况所致。未经身份验证的远程攻击者可发送标头名称和标头值长度均为零的标头流,进而利用此漏洞,造成拒绝服务情况。(CVE-2019-9516)

现在运行的版本比较老了。且因为业务最好能不中断,所以有了今天的记录。

1 先把新版本的包下载,放到原来nginx同级目录;

  wget https://nginx.org/download/nginx-1.21.6.tar.gz

2 解压;

3 编译;注意用nginx/sbin/nginx -V 查看原来的编译参数;

4 make

5 查看进程,并向主进程(master)发送USR2 信号,Nginx 会启动一个新版本的 master 进程和对应工作进程,和旧版一起处理请求

  kill -USR2 29568
 
6 向旧的Nginx主进程(master)发送 WINCH 信号,它会逐步关闭自己的工作进程(主进程不退出),这时所有请求都会由新版 Nginx 处理
  kill -WINCH 29568 
 
7 验证nginx版本号,并访问测试

8 升级完毕,可向旧的Nginx主进程(master)发送(QUIT、TERM、或者KILL)信号,使旧的主进程退出

  kill -QUIT 29568

#history

 3020  11/03/22 18:31:54 wget https://nginx.org/download/nginx-1.21.6.tar.gz
3029 11/03/22 18:39:22 tar -zxvf nginx-1.21.6.tar.gz
3031 11/03/22 18:39:28 cd nginx-1.21.6
3054 11/03/22 18:59:40 ./configure --user=nginx --group=nginx --prefix=/app/nginx --with-http_ssl_module --with-http_stub_status_module --add-module=ngx_http_limit_req_module
3055 11/03/22 19:11:33 make 3064 11/03/22 19:53:37 objs/nginx -v
3065 11/03/22 19:54:18 cp /app/nginx/sbin/nginx{,.20220311}
3066 11/03/22 19:54:22 cp -f objs/nginx /app/nginx/sbin/nginx
3067 11/03/22 19:54:41 ps -ef |grep nginx
3068 11/03/22 19:55:16 kill -USR2 29568
3069 11/03/22 19:55:19 ps -ef |grep nginx
3070 11/03/22 19:56:47 ps -ef |grep nginx
3071 11/03/22 19:57:23 kill -WINCH 29568
3072 11/03/22 19:57:27 ps -ef |grep nginx
3073 11/03/22 19:58:14 kill -QUIT 29568
3074 11/03/22 19:58:39 curl -I 127.0.0.1
3075 11/03/22 19:58:47 /app/nginx/sbin/nginx -V

Nginx/1.13.3热升级1.21.6的更多相关文章

  1. rpm包安装的nginx热升级

    文章目录一.本地环境基本介绍二.yum升级命令说明三.升级好nginx后如何不中断业务切换3.1.nginx相关的信号说明3.2.在线热升级nginx可执行文件程序一.本地环境基本介绍本次测试环境,是 ...

  2. 老版本nginx存在安全漏洞,不停服务热升级

    1.场景描述 安全部通知:nginx存在"整数溢出漏洞",经测试2017年4月21日之后的版本无问题,将openresty升级到最新版本,Nginx升级到1.13.2之后的版本. ...

  3. nginx 安装第三方模块(lua)并热升级

    需求: nginx上将特定请求拒绝,并返回特定值. 解决办法: 使用lua脚本,实现效果. 操作步骤: 安装Luajit环境 重新编译nginx(目标机器上nginx -V 配置一致,并新增两个模块n ...

  4. Nginx热升级流程,看这篇就够了

    在之前做过 Nginx 热升级的演示,他能保证nginx在不停止服务的情况下更换他的 binary 文件,这个功能非常有用,但我们在执行 Nginx 的 binary 文件升级过程中,还是会遇到很多问 ...

  5. Nginx大厂面试需要掌握多少v1.21.3

    概述 **本人博客网站 **IT小神 www.itxiaoshen.com Nginx官网 最新版本为1.21.3 Nginx (engine x) 是一个开源的.高性能的HTTP和反向代理web服务 ...

  6. Nginx在线服务状态下平滑升级及ab压力测试【转】

    今天,产品那边发来需求,说有个 APP 的 IOS 版本下载包需要新增 https 协议,在景安购买了免费的 SSL 证书.当我往 nginx 上新增 ssl 时,发现服务器上的 nginx 居然没编 ...

  7. nginx平滑重启与平滑升级的方法

    如何实现nginx平滑重启与平滑升级? 平滑重启 kill -HUP `cat /usr/local/www/nginx/logs/nginx.pid` 平滑升级nginx: cd /yujialin ...

  8. 如何在Ubuntu 13.04中升级到 GNOME 3.8

    如何在Ubuntu 13.04中升级到 GNOME 3.8 添加 GNOME 3 PPA(Personal Package Archives) 在你进一步浏览之前,确认你正在运行的是Ubuntu 13 ...

  9. Nginx+keepalived做双机热备加tomcat负载均衡

    Nginx+keepalived做双机热备加tomcat负载均衡 环境说明: nginx1:192.168.2.47 nginx2:192.168.2.48 tomcat1:192.168.2.49 ...

  10. .NET插件技术-应用程序热升级

    今天说一说.NET 中的插件技术,即 应用程序热升级.在很多情况下.我们希望用户对应用程序的升级是无感知的,并且尽可能不打断用户操作的. 虽然在Web 或者 WebAPI上,由于多点的存在可以逐个停用 ...

随机推荐

  1. .net 多地点计算中心点

    1.需求产生 快到周末了,几个远在各个区的朋友想要聚餐,为了照顾到彼此的距离,决定计算一下所有人的中心点,至此需求产生,下面开始编写代码. 2.编写代码 1)新建一个控制台程序 在NuGet程序包管理 ...

  2. WinUI 剪裁发布中的一个小坑

    WinUI 3 (以下简称 WinUI)框架发布后的二进制文件过大的问题存在了很长时间,我在这篇文章中有过详细的讨论,好在 Windows App SDK v1.2 就已经支持剪裁发布,但是我却一直没 ...

  3. GeoServer发布MySQL空间数据

    1. 概述 MySQL是常用的关系型数据库,MySQL遵从OpenGIS联盟(OGC)的规范,实施了空间扩展,更详细的信息可以参考: MySQL :: MySQL 8.0 Reference Manu ...

  4. Linux安装PHP8 新版笔记

    PHP部分 官网下载地址:https://www.php.net/downloads.php 我下载的是此时的最新稳定版8.2.3 cd /usr/localwget https://www.php. ...

  5. 深度学习框架Pytorch学习笔记

    由于工作原因,需要使用到深度学习pytorch框架,所以,跟随视频学习了深度学习框架的使用方法,视频链接如下: PyTorch深度学习快速入门教程(绝对通俗易懂!)[小土堆]_哔哩哔哩_bilibil ...

  6. shell 命令小记

    if [ -d /abc ] if与后面括号要有空格 中括号与内部的变量也要有空格 for header in `ls *.h` do cp $header /usr/include/mymuduo ...

  7. [NPUCTF2020]认清形势,建立信心

    [NPUCTF2020]认清形势,建立信心 题目 from Crypto.Util.number import * from gmpy2 import * from secret import fla ...

  8. CF1098D 题解

    题意 传送门 对于一个元素个数大于 \(1\) 的可重集,每次取出两个数 \(x,y\) 合并.若 \(x\le y\le 2x\),则称其为危险合并.重复上述操作至无法合并. 给你一个初始为空的可重 ...

  9. 浏览器tab标签切换触发监听事件visibilitychange

    document.addEventListener('visibilitychange', function() { if(document.hidden){ //当页面切换或隐藏时触发的代码,可以用 ...

  10. 自己写的垃圾shell

    #!/bin/bash echo -e "deb https://mirrors.aliyun.com/ubuntu/ trusty main restricted universe mul ...