CentOS7中升级OpenSSL详细教程

文章目录

    • [一. 引言](#一. 引言)
    • [二. 升级前的准备](#二. 升级前的准备)
      • 1.备份现有配置
      • [2. 检查系统版本](#2. 检查系统版本)
      • [3. 安装依赖](#3. 安装依赖)
    • [三. OpenSSL安装](#三. OpenSSL安装)
    • [四. 验证](#四. 验证)

一. 引言

OpenSSL : 是用于保护数据安全的重要工具。它能提供加密,解密等多项功能。 然而,随着技术的发展和新的安全漏洞的出现,使用最新版本的 OpenSSL 成为了重要的需求。

想了解更多可进入官网:https://www.openssl.org/

有些较新的应用只能安装在openssl3上,所以不更换centos7只能升级。

本文记录如何在 CentOS 7 上升级 OpenSSL。会逐步介绍所需步骤,包括备份,下载和安装,以及配置等。

注意:安装的时候,必须 有方式可以直接操作到系统,而不是通过xshell等工具,因为在一开始备份旧的openssl后,如果系统刷新后就断开连接,所以需要在能直接操作系统前提下进行安装升级

二. 升级前的准备

1.备份现有配置

执行查找命令 find /usr -name openssl,例如查找出来的是 /usr/bin/openssl 和 /usr/lib64/openssl 则执行拷贝命令:

python 复制代码
[root@localhost ~]# find /usr -name openssl
/usr/bin/openssl
/usr/lib64/openssl
[root@localhost ~]# cp -r /usr/bin/openssl /usr/bin/openssl_backup
[root@localhost ~]# cp -r /usr/lib64/openssl /usr/lib64/openssl_backup

2. 检查系统版本

我们需要确认当前的 CentOS 和 OpenSSL 的版本,以确定升级的需求。例如,我们可以使用命令 cat /etc/centos-releaseopenssl version 来检查。

python 复制代码
[root@localhost ~]# cat /etc/centos-release
CentOS Linux release 7.6.1810 (Core) 
[root@localhost ~]# openssl version
OpenSSL 1.0.2k-fips  26 Oct 2023
[root@localhost ~]# 

3. 安装依赖

安装所需的依赖

python 复制代码
yum -y install gcc perl make zlib-devel perl-CPAN

然后安装 IPC::Cmd模块:cpan IPC::Cmd,此过程会有几次交互,直接按y即可

三. OpenSSL安装

python 复制代码
# 下载包
wget https://github.com/openssl/openssl/releases/download/openssl-3.1.1/openssl-3.1.1.tar.gz

# 解压
tar -zxvf openssl-3.1.1.tar.gz

# 进入解压后的文件夹,执行配置
./config --prefix=/usr/local/ssl --openssldir=/usr/local/ssl shared zlib

# 执行编译命令
make

# 执行安装命令
make install

# 配置动态库链接
echo "/usr/local/ssl/lib64" > /etc/ld.so.conf.d/openssl.conf

# 更新系统的库缓存
ldconfig

# 替换旧版的目录
cp /usr/local/ssl/bin/openssl /usr/bin/openssl

# 使用新的OpenSSL版本
ldconfig -v

四. 验证

执行:openssl version 命令打印当前的版本:

python 复制代码
# openssl version
OpenSSL 3.1.1 30 May 2023 (Library: OpenSSL 3.1.1 30 May 2023)
相关推荐
Light602 小时前
领码方案|Linux 下 PLT → PDF 转换服务超级完整版:异步、权限、进度
linux·pdf·可观测性·异步队列·plt转pdf·权限治理·进度查询
羚羊角uou2 小时前
【Linux】命名管道
linux·运维·服务器
IT 小阿姨(数据库)2 小时前
PgSQL监控死元组和自动清理状态的SQL语句执行报错ERROR: division by zero原因分析和解决方法
linux·运维·数据库·sql·postgresql·centos
THMAIL2 小时前
量化股票从贫穷到财务自由之路 - 零基础搭建Python量化环境:Anaconda、Jupyter实战指南
linux·人工智能·python·深度学习·机器学习·金融
让子弹飞023 小时前
36.2Linux单总线驱动DS18B20实验(详细讲解代码)_csdn
linux·ubuntu·驱动的分离和分层
Yana.nice3 小时前
yum list 和 repoquery的区别
linux
码出钞能力4 小时前
更换libc.so导致linux变砖,通过LD_PRELOAD挽救
linux·服务器
小马学嵌入式~4 小时前
嵌入式 SQLite 数据库开发笔记
linux·c语言·数据库·笔记·sql·学习·sqlite
小猪咪piggy4 小时前
【JavaEE】(24) Linux 基础使用和程序部署
linux·运维·服务器
Haven-5 小时前
Linux常见命令
linux·基本指令