当前位置: 首页 > news >正文

openssl 升级1.1.1.1k 到 3.0.13

下载

https://www.openssl.org/source/

 tar -zxvf openssl-3.0.13.tar.gzcd openssl-3.0.13/./config enable-fips --prefix=/usr/local --openssldir=/usr/local/opensslmake && make install

将原有openssl备份

mv /usr/bin/openssl /usr/bin/openssl.bak
mv /usr/include/openssl /usr/include/openssl.bak

添加新openssl软连接

ln -s /usr/local/bin/openssl /usr/bin/openssl
ln -s /usr/local/include/openssl /usr/include/openssl
可以用 which openssl 命令查看路径,如果有神通数据库则路径如下:/usr/local/bin/opensslln -s /usr/bin/openssl /usr/local/bin/openssl

 库复制过去

cd /usr/local/lib64
cp libssl.so.3 /usr/lib/libssl.so.3
cp libcrypto.so.3 /usr/lib/libcrypto.so.3

 将新的库文件地址写入记录 so 库的配置文件

echo "/usr/local/lib64" >> /etc/ld.so.conf  
ldconfig -v

修改nginx的openssl的配置,auto/lib/openssl/conf将原数据

修改为:

            CORE_INCS="$CORE_INCS $OPENSSL/include"CORE_DEPS="$CORE_DEPS $OPENSSL/include/openssl/ssl.h"#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.lib"#CORE_LIBS="$CORE_LIBS $OPENSSL/openssl/lib/libcrypto.lib"CORE_LIBS="$CORE_LIBS $OPENSSL/lib64/libssl.lib"CORE_LIBS="$CORE_LIBS $OPENSSL/lib64/libcrypto.lib"#CORE_LIBS="$CORE_LIBS $OPENSSL/.openssl/lib/libssl.a"#CORE_LIBS="$CORE_LIBS $OPENSSL/.openssl/lib/libcrypto.a"CORE_LIBS="$CORE_LIBS $OPENSSL/libssl.a"CORE_LIBS="$CORE_LIBS $OPENSSL/libcrypto.a"

修改src/http/ngx_http_upstream.h

新增一个default_portngx_uint_t flags;
ngx_str_t host;
u_char *file_name;
ngx_uint_t line;
in_port_t port;
in_port_t default_port; /* 新增一个default_port */
ngx_uint_t no_port; /* unsigned no_port:1 */

./configure --prefix=/usr/local/nginx --with-stream --with-http_stub_status_module --with-pcre --with-http_stub_status_module --with-http_ssl_module --with-openssl=../openssl-3.0.13

make

/usr/local/nginx/sbin/nginx -s stop
cp objs/nginx /usr/local/nginx/sbin/nginx
/usr/local/nginx/sbin/nginx

相关文章:

  • Nginx配置文件中Location指令的匹配优先级
  • 生成JSON Web令牌的工具类(token)
  • 深入了解Flutter中StreamController的属性、方法及多种场景使用示例
  • 邦芒职场:职场遇挫,年轻人“假上班”策略应对失业危机
  • Macbook安装Go以及镜像设置
  • DC-5靶机
  • [BT]BUUCTF刷题第4天(3.22)
  • Java基础--128陷阱
  • 5、Jenkins持续集成-Maven和Tomcat的安装与配置
  • 哨兵位、链表的链接
  • PTAxt的考研路
  • Python爬虫学习完整版
  • Rust 实战练习 - 4. 网络 TCP/UDP/Channel
  • 两台电脑简单的通信过程详解(经过两个路由器,不同网段)
  • Vue js封装接口
  • [分享]iOS开发 - 实现UITableView Plain SectionView和table不停留一起滑动
  • 【Linux系统编程】快速查找errno错误码信息
  • Django 博客开发教程 16 - 统计文章阅读量
  • ES6--对象的扩展
  • ES6简单总结(搭配简单的讲解和小案例)
  • ES6系统学习----从Apollo Client看解构赋值
  • es的写入过程
  • go append函数以及写入
  • IndexedDB
  • Java IO学习笔记一
  • Python 基础起步 (十) 什么叫函数?
  • WordPress 获取当前文章下的所有附件/获取指定ID文章的附件(图片、文件、视频)...
  • 关于Android中设置闹钟的相对比较完善的解决方案
  • 基于web的全景—— Pannellum小试
  • 聊聊redis的数据结构的应用
  • 如何借助 NoSQL 提高 JPA 应用性能
  • 试着探索高并发下的系统架构面貌
  • 新手搭建网站的主要流程
  • gunicorn工作原理
  • 我们雇佣了一只大猴子...
  • $.ajax()方法详解
  • (02)Hive SQL编译成MapReduce任务的过程
  • (1/2)敏捷实践指南 Agile Practice Guide ([美] Project Management institute 著)
  • (2.2w字)前端单元测试之Jest详解篇
  • (分享)自己整理的一些简单awk实用语句
  • (转载)CentOS查看系统信息|CentOS查看命令
  • **PyTorch月学习计划 - 第一周;第6-7天: 自动梯度(Autograd)**
  • .NET : 在VS2008中计算代码度量值
  • .net 流——流的类型体系简单介绍
  • .vue文件怎么使用_vue调试工具vue-devtools的安装
  • /etc/X11/xorg.conf 文件被误改后进不了图形化界面
  • [ 隧道技术 ] 反弹shell的集中常见方式(四)python反弹shell
  • [AutoSar NVM] 存储架构
  • [C++]:for循环for(int num : nums)
  • [C++进阶篇]STL中vector的使用
  • [CSS] 点击事件触发的动画
  • [Dxperience.8.*]报表预览控件PrintControl设置
  • [halcon案例2] 足球场的提取和射影变换
  • [MTK]安卓8 ADB执行ota升级
  • [MySQL FAQ]系列 -- 账号密码包含反斜线时怎么办