OpenSSL 升级、回滚
ImportError: urllib3 v2.0 only supports OpenSSL 1.1.1+, currently the 'ssl' module is compiled with OpenSSL 1.0.2k-fips 26 Jan 2017. See: https://github.com/urllib3/urllib3/issues/2168
安装
[root@localhost pdserving]# openssl version
# 备份
[root@localhost pdserving]# cp -r /usr/bin/openssl /usr/bin/openssl_bak
[root@localhost pdserving]# cp -r /usr/include/openssl /usr/include/openssl_bak
[root@localhost pdserving]# cd /usr/local/
# 下载 OpenSSL
[root@localhost local]# wget --no-check-certificate https://www.openssl.org/source/openssl-1.1.1t.tar.gz
[root@localhost local]# tar -zxvf openssl-1.1.1t.tar.gz
[root@localhost local]# cd openssl-1.1.1
# 配置
[root@localhost local]# ./config --prefix=/opt/openssl --openssldir=/usr/local/ssl
# 编译&安装
[root@localhost local]# make &&make install
如下图可以看出,程序被安装到了 /opt/openssl 目录下了

设置软连接
[root@localhost openssl-1.1.1t]# ln -s /opt/openssl/bin/openssl /usr/bin/openssl
ln: 无法创建符号链接"/usr/bin/openssl": 文件已存在
# 如已存在先将原来的软连接文件mv到/tmp目录下,
[root@localhost openssl-1.1.1t]# mv /usr/bin/openssl /tmp/
# 设置软连接
[root@localhost openssl-1.1.1t]# ln -s /opt/openssl/bin/openssl /usr/bin/openssl
[root@localhost openssl-1.1.1t]# ln -s /opt/openssl/include/openssl /usr/include/openssl
[root@localhost openssl-1.1.1t]# openssl version
openssl: error while loading shared libraries: libssl.so.1.1: cannot open shared object file: No such file or directory
[root@localhost openssl-1.1.1t]# ll /opt/openssl/lib/
总用量 10528
drwxr-xr-x. 2 root root 39 5月 18 13:37 engines-1.1
-rw-r--r--. 1 root root 5655624 5月 18 13:37 libcrypto.a
lrwxrwxrwx. 1 root root 16 5月 18 13:37 libcrypto.so -> libcrypto.so.1.1
-rwxr-xr-x. 1 root root 3397152 5月 18 13:37 libcrypto.so.1.1
-rw-r--r--. 1 root root 1028434 5月 18 13:37 libssl.a
lrwxrwxrwx. 1 root root 13 5月 18 13:37 libssl.so -> libssl.so.1.1
-rwxr-xr-x. 1 root root 689576 5月 18 13:37 libssl.so.1.1
drwxr-xr-x. 2 root root 61 5月 18 13:37 pkgconfig
# 已存以先移除
# mv /usr/lib64/libssl.so.1.1 /usr/lib64/libssl.so.1.1.bak
# mv /usr/lib64/libcrypto.so.1.1 /usr/lib64/libcrypto.so.1.1.bak
[root@localhost openssl-1.1.1t]# ln -s /opt/openssl/lib/libssl.so.1.1 /usr/lib64/libssl.so.1.1
[root@localhost openssl-1.1.1t]# ln -s /opt/openssl/lib/libcrypto.so.1.1 /usr/lib64/libcrypto.so.1.1
[root@localhost openssl-1.1.1t]# echo "/usr/local/lib/" >> /etc/ld.so.conf
[root@localhost openssl-1.1.1t]# ldconfig -v
[root@localhost openssl-1.1.1t]# openssl version -a
OpenSSL 1.1.1t 7 Feb 2023
回滚
升级后可能会导致某些服务安装失败,回滚到之前的默认版本【以下没测试】
# 查看openssl, 然后删除升级后的openssl
[root@localhost ~]# find / -name openssl
[root@localhost ~]# rm -rf /usr/local/src/openssl-1.1.1
[root@localhost ~]# rm -rf /usr/local/bin/openssl
[root@localhost ~]# rm -rf /usr/local/share/doc/openssl
[root@localhost ~]# rm -rf /usr/local/include/openssl
# 然后查看下openssl版本
[root@localhost ~]# which openssl
/usr/bin/openssl
[root@localhost ~]# openssl version -a
# 报错说/usr/local/bin/openssl 找不到这个文件
# 然后重启机器
[root@localhost ~]# init 6
# 重启机器后, 查看openssl版本, 如果正常查出是默认版本, 则回滚正常
[root@localhost ~]# openssl version -a
OpenSSL 升级、回滚的更多相关文章
- 入门Kubernetes - 滚动升级/回滚
一.前言 上一篇文章中对yaml文件格式进行了解,并对k8s中各种主要资源通过yaml创建时的定义模板.接来下就进一步学习k8s的各种特点.并应用在示例中. 接下来先实现.Net Core Api程序 ...
- Swarm平滑升级回滚
#滚动更新创建服务: docker service create --name my_web --replicas=5 nginx:1.12更新为1.14 docker service update ...
- Kubernetes:Pod 升级、回滚
本篇主要讨论如何实现滚动更新和回滚,任意更换版本并且回滚以前的版本(版本更新),而下一章会讨论到 Pod 缩放,根据机器资源自动拓展和收缩应用(自动扩容实例). 本文为作者的 Kubernetes 系 ...
- kubernetes deployment升级和回滚
a.创建deployment pod kubectl run mynginx --image=docker.io/nginx: --record 准备svc文件 apiVersion: v1 kind ...
- 原创|1分钟搞定 Nginx 版本的平滑升级与回滚
Nginx无论是对于运维.开发.还是测试来说,都是日常工作需要掌握的一个知识点,之前也写过不少关于Nginx相关的文章: Nginx服务介绍与安装 Nginx服务配置文件介绍 Nginx配置虚拟主机 ...
- kubernetes云平台管理实战: 滚动升级秒级回滚(六)
一.nginx保证有两个版本 1.查看当前容器运行nginx版本 [root@k8s-master ~]# kubectl get pod -o wide NAME READY STATUS REST ...
- Hadoop HDFS概念学习系列之HDFS升级和回滚机制(十二)
不多说,直接上干货! HDFS升级和回滚机制 作为一个大型的分布式系统,Hadoop内部实现了一套升级机制,当在一个集群上升级Hadoop时,像其他的软件升级一样,可能会有新的bug或一些会影响现有应 ...
- 022.掌握Pod-Pod升级和回滚
一 deploymentPod升级和回滚 1.1 deployment升级 若Pod是通过Deployment创建的,可以在运行时修改Deployment的Pod定义(spec.template)或镜 ...
- kubernetes Pod的升级与回滚
一:Deployment的升级 1.通过kubectl set image命令为Deployment设置新的镜像名称kubectl set image deployment/nginx-deploym ...
- Docker & Kubenetes 系列四:集群,扩容,升级,回滚
本篇将会讲解应用部署到Kubenetes集群,集群副本集查看,集群自愈能力演示,集群扩容,滚动升级,以及回滚. 本篇是Docker&Kubenetes系列的第四篇,在前面的篇幅中,我们向Kub ...
随机推荐
- 二叉树、平衡二叉树、红黑树、B树、B+树
几种树的主要区别: 红黑树为二叉自平衡搜索树,深度大,多用于内存排序: B树为多路(多叉)搜索树,深度低,搜索数据时磁盘IO较少,多用于索引外存数据,只支持随机访问,不支持顺序访问: B+树是对B树的 ...
- WebGL初接触
有感于在不少jd中看到关于WebGL的内容,想起来之前在高程中还没看完的canvas,就匆匆把剩余的一点看完了,高程中的内容还是皮毛,就属于很基础的.概念性的东西. WebGL 画布的3D上下文.不是 ...
- Seaurl-分享一个云上网址收藏网站
前言 最近网上发现一个强大的网址收藏网站,点击这里打开,分享给大家,希望大家会喜欢. 网址空间 "网址空间"是一个专业的在线平台,它允许用户分享他们在日常生活和工作中频繁访问的网站 ...
- 搭建 MongoDB (v6.0) 副本集记录
副本集概述 副本集(Replica Set)是一组带有故障转移的 MongoDB 实例组成的集群,由一个主(Primary)服务器和多个从(Secondary)服务器构成.通过Replication, ...
- 一个基于ASP.NET Core完全开源的CMS 解决方案
本文简介 MixCoreCMS是一个基于.NET Core框架的开源内容管理系统(CMS),提供了丰富的的基础功能和插件,是一款面向未来的企业 Web CMS,可轻松构建任何类型的应用程序.集成了Go ...
- 【结对作业】第一周 | 学习体会day01
周一老师布置了小组结对作业,内容如下: 我们今天实现了数据库的建立,页面的设计,以及前后端查询的操作,具体实现如下
- 自学 --day9---js中的数学操作和时间日期
typora-copy-images-to: media 一.数学处理 1.Math常用API 圆周率 Math.PI // 3.1415926535 生成随机数 Math.random() 生成的是 ...
- 分享一个 asp.net core 多文件分块同时上传的组件
分享一个可多个文件同时上传.断点续传,并实时反馈上传进度的 Asp.Net core 组件. 服务器端 引用 nuget 包:JMS.FileUploader.AspNetCore 然后启用上传组件: ...
- springboot下添加全局异常处理和自定义异常处理
前言 在spring项目中,优雅处理异常,好处是可以将系统产生的全部异常统一捕获处理,自定义的异常也由全局异常来捕获,如果涉及到validator参数校验器使用全局异常捕获也是较为方便. 相关代码: ...
- 生成式AI:未来的发展方向是什么?
生成式AI的问世标志着人工智能领域迎来了一个全新时代的开启.今年,ChatGPT的面世引起了广泛的热议和关注,许多人认为这标志着人工智能领域进入了一个大规模探索的时代.然而,事实上,这只是生成式AI发 ...