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 ... 
随机推荐
- JAVA类的加载(4) ——类之间能够隔离&类占用的资源能回收
			一.类加载体系 
- 使用 PPO 算法进行 RLHF 的 N 步实现细节
			当下,RLHF/ChatGPT 已经变成了一个非常流行的话题.我们正在致力于更多有关 RLHF 的研究,这篇博客尝试复现 OpenAI 在 2019 年开源的原始 RLHF 代码库,其仓库位置位于 o ... 
- OpenAI 董事会宫斗始作俑者?一窥伊尔亚·苏茨克维内心世界
			OpenAI 董事会闹剧应该是暂告一个段落了,Sam Altman和Greg Brockman等一众高管均已加入微软,还有员工写联名信逼宫董事会的戏码,关注度已经降下来了. 但是,这场宫斗闹剧的中心人 ... 
- 海量电商数据与用友YS系统数据对接案例
			案例背景 客户是历史比较悠久的企业.企业内部用的系统多达十几套,专门成立信息化公司进行数字化转型,第一期需求系统旺店通的ERP以及旺店通的WMS并且启用京东的沧海外仓. 在选型ERP用友ERP和金蝶E ... 
- [ABC237G] Range Sort Query
			Problem Statement Given is a permutation $P=(P_1,P_2,\ldots,P_N)$ of $1,2,\ldots,N$, and an integer ... 
- zookeeper JavaApi 删除节点
			/* * 删除节点 * 1.删除单个节点 * 2.删除带有子节点的节点 * 3.必须成功的删除 * 4.回调 * * */ @Test public void delete1() throws Exc ... 
- catcat-new【目录穿透+特殊文件】
			catcat-new[目录穿透+特殊文件] 题目界面 点击任何一只猫猫,发现路径泄露: 解题步骤 测试目录遍历漏洞 路径: ?file=../../../../etc/passwd 成功读取到pass ... 
- DRF限流
			https://www.django-rest-framework.org/api-guide/throttling/ 限制.控制客户端可以向 API 发出的请求的速率. 设置限流策略 默认限制策略可 ... 
- 数字孪生技术结合GIS系统能在农业领域作出什么改变?
			数字孪生技术和地理信息系统(GIS)是两个独立但高度互补的领域,它们的结合在农业领域具有巨大的潜力,可以带来巨大的改变.在这篇文章中,我们将讨论数字孪生技术和GIS系统如何协同作用,为农业带来创新和可 ... 
- TS MQTT封装
			TS MQTT封装 导入相关包 npm i mqtt npm i lodash guid 随机生成就行,具体可以参考百度或者随便生成一个随机数* 代码封装 import mqtt from 'mqtt ... 
