Nginx/1.13.3热升级1.21.6
背景:
根据其服务器响应标头,安装的 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 进程和对应工作进程,和旧版一起处理请求
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的更多相关文章
- rpm包安装的nginx热升级
文章目录一.本地环境基本介绍二.yum升级命令说明三.升级好nginx后如何不中断业务切换3.1.nginx相关的信号说明3.2.在线热升级nginx可执行文件程序一.本地环境基本介绍本次测试环境,是 ...
- 老版本nginx存在安全漏洞,不停服务热升级
1.场景描述 安全部通知:nginx存在"整数溢出漏洞",经测试2017年4月21日之后的版本无问题,将openresty升级到最新版本,Nginx升级到1.13.2之后的版本. ...
- nginx 安装第三方模块(lua)并热升级
需求: nginx上将特定请求拒绝,并返回特定值. 解决办法: 使用lua脚本,实现效果. 操作步骤: 安装Luajit环境 重新编译nginx(目标机器上nginx -V 配置一致,并新增两个模块n ...
- Nginx热升级流程,看这篇就够了
在之前做过 Nginx 热升级的演示,他能保证nginx在不停止服务的情况下更换他的 binary 文件,这个功能非常有用,但我们在执行 Nginx 的 binary 文件升级过程中,还是会遇到很多问 ...
- Nginx大厂面试需要掌握多少v1.21.3
概述 **本人博客网站 **IT小神 www.itxiaoshen.com Nginx官网 最新版本为1.21.3 Nginx (engine x) 是一个开源的.高性能的HTTP和反向代理web服务 ...
- Nginx在线服务状态下平滑升级及ab压力测试【转】
今天,产品那边发来需求,说有个 APP 的 IOS 版本下载包需要新增 https 协议,在景安购买了免费的 SSL 证书.当我往 nginx 上新增 ssl 时,发现服务器上的 nginx 居然没编 ...
- nginx平滑重启与平滑升级的方法
如何实现nginx平滑重启与平滑升级? 平滑重启 kill -HUP `cat /usr/local/www/nginx/logs/nginx.pid` 平滑升级nginx: cd /yujialin ...
- 如何在Ubuntu 13.04中升级到 GNOME 3.8
如何在Ubuntu 13.04中升级到 GNOME 3.8 添加 GNOME 3 PPA(Personal Package Archives) 在你进一步浏览之前,确认你正在运行的是Ubuntu 13 ...
- Nginx+keepalived做双机热备加tomcat负载均衡
Nginx+keepalived做双机热备加tomcat负载均衡 环境说明: nginx1:192.168.2.47 nginx2:192.168.2.48 tomcat1:192.168.2.49 ...
- .NET插件技术-应用程序热升级
今天说一说.NET 中的插件技术,即 应用程序热升级.在很多情况下.我们希望用户对应用程序的升级是无感知的,并且尽可能不打断用户操作的. 虽然在Web 或者 WebAPI上,由于多点的存在可以逐个停用 ...
随机推荐
- .Net 和 .Net Core 集成Swagger 以及配合JWT身份验证
Swagger介绍 简单来说swagger是一款WebAPI的接口管理帮助文档,并且可以直接进行接口测试 我们来看一下官网介绍 https://swagger.io Swagger is a powe ...
- Python接口自动化测试(1)
接口自动化测试三部曲:1.构造请求 2.判断结果 3.数据库查询 1.Python的第三方包:requests 简介:requests可以用来做接口测试.接口自动化测试.爬虫等 requests的 ...
- SpringMVC返回值类型及响应数据类型
1.SpringMVC 和 Struts2 的优略分析 共同点: 它们都是表现层框架,都是基于 MVC 模型编写的. 它们的底层都离不开原始 ServletAPI. 它们处理请求的机制都是一个核心控制 ...
- 跳板攻击之:ICMP代理转发与反弹shell
跳板攻击之:ICMP代理转发与反弹shell 郑重声明: 本笔记编写目的只用于安全知识提升,并与更多人共享安全知识,切勿使用笔记中的技术进行违法活动,利用笔记中的技术造成的后果与作者本人无关.倡导维护 ...
- js(最新)手机号码 正则验证 - 代码篇
现在手机号码,除了以11+.12+开头的没有,别的好像都有了! 代码如下: 方法一: function checkPhone(){ var phone = $(".phone"). ...
- label勾选问题,checkbox
<input id="overck_21" data-role="none" name="check" class="reg ...
- vue-element-admin 怎么改后端 可以调跳过登录并且发送接口请求
1.找到根目录的 vue.config.js 添加 proxy 内容 注释掉mock 2.清空 .env.development 里的 VUE_APP_BASE_API 路径 3.user.js 方 ...
- vue中使用xlsx 导出表格
<t-table v-show="false" id="exportTab" row-key="index" :data=& ...
- DataGridView添加新一行数据可添加到最后一行或第一行
整体代码如下: using System;using System.Collections.Generic;using System.ComponentModel;using System.Data; ...
- 浏览器控件webBrowser
using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; usin ...