nginx和openssl版本升级操作手册

我们目前使用的是nginx1.20.2和openssl-1.0.2k。其中查看服务器上openssl的脚本名利是:openssl version -v/-a

一:需要的包

1:nginx-1.25.1.tar.gz

2:openssl-1.1.1u.tar.gz

二:升级操作

1:检查当前nginx版本

/usr/local/nginx/sbin/nginx -v

2:备份旧版本nginx

cp /usr/local/nginx/ /apps/svrt/back/nginx.bak -R

3:上传更新文件到服务器上

ls(查看上传的文件。)

4:编译安装openssl

  1. :解压: tar -zxvf openssl-1.1.1u.tar.gz
  2. :进入目录:cd openssl-1.1.1u
  3. :准备新目录:mkdir /usr/local/openssl
  4. :编译配置检查指定预安装路径:./config --prefix=/usr/local/openssl
  5. :编译:make
  6. :安装:make install
  7. :查看版本:/usr/local/openssl/bin/openssl version -v/-a

这个时候可能会出现错误找不到libssl.so.1.1 和libcrypto.so.1.1

执行如下命令:

 ln -s /usr/local/openssl/lib/libssl.so.1.1 /usr/lib64/libssl.so.1.1

 ln -s /usr/local/openssl/lib/libcrypto.so.1.1 /usr/lib64/libcrypto.so.1.1

  1. :查看版本:/usr/local/openssl/bin/openssl version -v/-a  

这时候是成功的。但是需要全局配置

  1. :全局配置

ln -s /usr/local/openssl/bin/openssl /usr/bin/openssl   

如果显示已经存在/usr/bin/openssl,则只需要备份下

mv /usr/bin/openssl /usr/bin/opensslb

再次执行

ln -s /usr/local/openssl/bin/openssl /usr/bin/openssl

  1. :查看版本:openssl version -v/-a

5:安装最新nginx

  1. :解压:tar -zxvf nginx-1.25.1.tar.gz
  2. :进入nginx: cd nginx-1.25.1
  3. :需要修改/nginx-1.25.1目录下的/auto/lib/openssl/conf的openssl目录

修改前:

            CORE_INCS="$CORE_INCS $OPENSSL/.openssl/include"

            CORE_DEPS="$CORE_DEPS $OPENSSL/.openssl/include/openssl/ssl.h"

            CORE_LIBS="$CORE_LIBS $OPENSSL/.openssl/lib/libssl.a"

            CORE_LIBS="$CORE_LIBS $OPENSSL/.openssl/lib/libcrypto.a"

            CORE_LIBS="$CORE_LIBS $NGX_LIBDL"

            CORE_LIBS="$CORE_LIBS $NGX_LIBPTHREAD"

修改后:

    

            CORE_INCS="$CORE_INCS $OPENSSL/include"

            CORE_DEPS="$CORE_DEPS $OPENSSL/include/openssl/ssl.h"

            CORE_LIBS="$CORE_LIBS $OPENSSL/lib/libssl.a"

            CORE_LIBS="$CORE_LIBS $OPENSSL/lib/libcrypto.a"

            CORE_LIBS="$CORE_LIBS $NGX_LIBDL"

            CORE_LIBS="$CORE_LIBS $NGX_LIBPTHREAD"

  1. :配置文件检查: ./configure --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module --with-stream --with-openssl=/usr/local/openssl/
  2. :编译:make
  3. :停止nginx拷贝,否则文件会被占用:systemctl stop nginx
  4. :拷贝objs中nginx到旧版本nginx位置:cp /nginx-1.25.1/objs/nginx /usr/local/nginx/sbin/nginx     要覆盖原来的。
  5. :开启nginx: systemctl start nginx
  6. :检查nginx : systemctl status nginx
  7. :使用make upgrade 平滑更新: make upgrade
  8. :重启并检查状态:systemctl restart nginx && systemctl status nginx
  9. :查看nginx版本是否更新成功:/usr/local/nginx/sbin/nginx -v

三:回退操作

1:openssl 回退操作

在/usr/bin目录下

rm -rf ./openssl

把备份的opensslb改成openssl

mv opensslb openssl

2:nginx回退操作

先在/usr/local/nginx/sbin/中执行cp nginx nginxb

然后将备份文件的nginx复制过来。

cp /apps/vart/back/nginx.bak/sbin/nginx /usr/local/nginx/sbin/

覆盖原来的,然后重新nginx即可。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/19808.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

7.物联网操作系统互斥信号量

1.使用互斥信号量解决信号量导致的优先级反转, 2.使用递归互斥信号量解决互斥信号量导致的死锁。 3.高优先级主函数中多次使用同一信号量的使用,使用递归互斥信号量,但要注意每个信号量的使用要对应一个释放 优先级翻转问题 优先级翻转功能需…

gateway过滤器没生效,特殊原因

看这边文章的前提,你要会gateway,知道过滤器怎么配置? 直接来看过滤器,局部过滤器 再来看配置 请求路径 http://127.0.0.1:8080/appframework/services/catalog/catalogSpecials.json?pageindex1&pagesize10&pkidd98…

网络安全知识点整理(作业2)

目录 一、js函数声明->function 第一种 第二种 第三种 二、this关键字 this使用场合 1.全局环境 2.构造函数 3.对象的方法 避免多层this 三、js的同步与异步 定时器 setTimeout和setInterval 同步与异步的例子 四、宏任务与微任务 分辨宏任务与微任务 一、js…

深入解析项目管理中的用户流程图

介绍用户流程图 用户流程图的定义 用户流程图(User Flow Diagram)是一种可视化工具,它描绘了用户在应用或网站上完成任务的过程。这些任务可以是购物、注册账户、查找信息等,任何需要用户交互的动作都可以在用户流程图中找到。 用户流程图的重要性 用…

spring中常用的注解

前后端传值的注解 PathVariable和RequestParam PathVariable用于获取路径参数&#xff0c;RequestParam用于获取查询参数。 GetMapping("/klasses/{klassId}/teachers") public List<Teacher> getKlassRelatedTeachers(PathVariable("klassId") Lon…

我对排序算法的理解

排序算法一直是一个很困惑我的问题&#xff0c;早在刚开始接触 数据结构的时候&#xff0c;这个地方就很让我不解。就是那种&#xff0c;总是感觉少了些什么的感觉。一开始&#xff0c;重新来过&#xff0c;认真来学习这一部分&#xff0c;也总是学着学着就把概念记住了。过了一…

案例|会展大数据服务系统 智能服务体系建设实践

根据相关的市场调查发现在国内进行的2000多个会展项目中&#xff0c;仅有15%的项目能够提供相关主题网站基本业务和服务&#xff0c;且提供的服务并不能够满足会展各方的应用&#xff0c;剩余的大部门会展项目信息系统构建的不够完善、技术性差、应用复杂等&#xff0c;甚至提供…

三、JVM-如何判断对象已死问题

内存模型以及如何判定对象已死问题 体验与验证 2.4.5.1 使用visualvm visualgc插件下载链接 &#xff1a;https://visualvm.github.io/pluginscenters.html 选择对应JDK版本链接—>Tools—>Visual GC 若上述链接找不到合适的&#xff0c;大家也可以自己在网上下载对应…

Hive巡检脚本

Hive巡检脚本的示例&#xff1a; #!/bin/bash# 设置Hive连接信息 HIVE_HOST"your_hive_host" HIVE_PORT"your_hive_port" HIVE_USER"your_hive_username" HIVE_PASSWORD"your_hive_password"# 设置巡检结果输出文件路径 OUTPUT_FILE&…

服务器的shell脚本

shell脚本语句可以执行linux的操作语句。 linux相当于网页&#xff0c;shell相当于java。可以解释编写执行逻辑。 shell的开头以&#xff1a;#!bin/sh 定义解析方式&#xff0c;不同的linuxe内核解释方式不同。大多数内核支持sh&#xff08;bash&#xff09;方式。 执行sh文件可…

输入筛选框搜索

文章目录 输入筛选框实现效果图需求前端工具版本添加依赖main.js导入依赖 代码 后端代码对应 sql对应 mapper.xml 文件的动态 sql 输入筛选框实现 效果图 需求 通过筛选框&#xff0c;选择公司&#xff0c;传入后端&#xff0c;后端根据公司名称去文章的内容中进行模糊查询 …

照片回收站是什么?恢复照片就靠这3招!

“我电脑里本来保存了很多照片&#xff0c;但我不小心给删除了&#xff0c;还能恢复吗&#xff1f;由于本人是个电脑新手&#xff0c;求一些简单的方法。感谢&#xff01;” 在照片拍摄后&#xff0c;很多朋友可能会选择在电脑上对照片进行保存。但是由于各种原因&#xff0c;电…

Simulink仿真模块-Signal Builder

目录 说明 实例 Signal Builder是创建和生成可交替的具有分段线性波形的信号组。 在仿真库中的位置为:Simulink / Sources说明 Signal Builder 模块允许创建可交替的分段线性信号源组,并在模型中使用。可以快速将信号组切换入模型或切换出模型,以便于测试。在 Signal Buil…

Linux【网络编程】之深入理解TCP协议

Linux【网络编程】之深入理解TCP协议 TCP协议TCP协议段格式4位首部长度---TCP报头长度信息 TCP可靠性&#xff08;确认应答&#xff09;&& 提高传输效率确认应答(ACK)机制32位序号与32为确认序号 16位窗口大小---自己接收缓冲区剩余空间的大小16位紧急指针---紧急数据处…

js 视频水印去除

参考文档&#xff1a;http://txapi.cn/api 收费 识别要解析的类型&#xff08;需要收费&#xff09; const axios require(axios) class Parse{// 初始化方法constructor() {this.token "Z1QljZOZiT4NTG" // token// 请求地址数组对象this.req_urls {dy: "…

无涯教程-Lua - 文件I/O

I/O库用于在Lua中读取和处理文件。 Lua中有两种文件操作&#xff0c;即隐式(Implicit)和显式(Explicit)操作。 对于以下示例&#xff0c;无涯教程将使用例文件test.lua&#xff0c;如下所示。 -- sample test.lua -- sample2 test.lua 一个简单的文件打开操作使用以下语句。…

Unity3D坐标与UI坐标转化差别过大

在UI Canvas的Render Mode模式是Screen Space-Camera模式极其容易3D坐标值转UI坐标出错。 **具体原因是&#xff1a;**Canvas的Rect Transform锁定&#xff0c;其Scale的倍数值不是1&#xff0c;所以导致从3D的坐标数值转换成UI坐标时就会出现问题。 正确做法&#xff1a; 1、 …

ChatGPT 是如何工作的:从预训练到 RLHF

欢迎来到人工智能的未来:生成式人工智能!您是否想知道机器如何学习理解人类语言并做出相应的反应?让我们来看看ChatGPT ——OpenAI 开发的革命性语言模型。凭借其突破性的 GPT-3.5 架构,ChatGPT 席卷了世界,改变了我们与机器通信的方式,并为人机交互开辟了无限可能。随着…

改进的智能优化算法定性分析:种群多样性分析(Analysis of the population diversity)

目录 一、智能优化算法改进种群多样性分析 二、GWO与IGWO种群多样性对比 三、GWO与改进的GWO1种群多样性分析 四、代码获取 一、智能优化算法改进种群多样性分析 为了验证所提出的IDMO中种群多样性的丰富性&#xff0c;我们使用下式计算本节中的种群多样性。这个式…

Java并发系列之四:重中之重AQS

上一期我们介绍了乐观锁&#xff0c;而乐观锁的本质即是CAS&#xff0c;操作系统提供了支持CAS修改内存值的原子指令&#xff0c;所以乐观锁得以实现。从软件工程的角度去看&#xff0c;虽然底层已经通过CAS实现了乐观锁&#xff0c;Java的底层已经在Unsafe这个类中封装了compa…