在CentOS7系统中构建和使用OpenSSL3.0.16的RPM包
作者 hxwsq_华 于 2024-11-07 13:58:00.0 发表于 浙江 最近修改于 2025-04-11 16:34:36.0 本文浏览量:235人次
一、说明
1.1 操作系统版本
本文使用的操作系统版本:CentOS 7.9
cat /etc/centos-release

1.2 准备工作
1.OpenSSL3.0.16源码包(下载)
2.SPEC文件(下载)
3.创建一个普通用户来执行构建RPM包的工作(本文使用的普通用户为wxh)
useradd -G wheel wxh
echo "password" | passwd --stdin wxh

二、构建RPM包(以普通用户wxh操作)
2.1 安装所需的软件包
---安装构建RPM包所需的工具包
sudo yum -y install rpm-build rpmdevtools
---安装编译OpenSSL所需的依赖软件
sudo yum -y install gcc perl-WWW-Curl perl-IPC-Cmd

2.2 创建构建工作目录
rpmdev-setuptree

2.3 获取OpenSSL3.0.16源码包(或直接上传源码包至~/rpmbuild/SOURCES目录下)

2.4 创建SPEC文件(或直接上传SPEC文件至~/rpmbuild/SPECS目录下)

2.5 构建RPM包
cd ~/rpmbuild/SPECS/ && rpmbuild -bb openssl.spec

构建完成后的RPM包存放路径:~/rpmbuild/RPMS/x86_64/(openssl-debuginfo的RPM包可以删除)

三、 升级CentOS7系统的OpenSSL版本(使用root用户操作)
CentOS7系统自带的一般是OpenSSL1.0版本,该版本目前已经不再维护

3.1 上传构建好的RPM包至CentOS7服务器

3.2 卸载CentOS7系统自带的OpenSSL
---如果系统中原先没有安装openssl-devel,则只需卸载openssl
yum -y remove openssl openssl-devel

3.3 安装新构建的RPM包
rpm -ivh *.rpm --nodeps

3.4 验证升级后的OpenSSL版本
openssl version -a

四、回退CentOS7系统的OpenSSL版本(使用root用户操作)
4.1 卸载通过RPM包安装的OpenSSL
rpm -e openssl-3.0.16-1.el7.x86_64 --nodeps
rpm -e openssl-devel-3.0.16-1.el7.x86_64 --nodeps

4.2 使用yum源安装默认版本的OpenSSL
yum -y install openssl openssl-devel

4.3 查看回退后的OpenSSL版本
openssl version -a

五、文档更新记录
日期 | 更新记录 |
2024-11-07 | 新建文档,OpenSSL版本为OpenSSL3.0.15 |
2025-02-12 | 更新OpenSSL版本至OpenSSL3.0.16 |