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

CentOS 7 升级 OpenSSL 3.5.1 的详细教程

CentOS 7 升级 OpenSSL 3.5.1 的详细教程
CentOS 7 默认自带的 OpenSSL 是 1.0.2k,比较老,不支持许多现代协议和加密套件。
升级需要 源码编译,并避免影响系统依赖。
OpenSSL 官网:https://www.openssh.com/
离线安装看第七步,第七步执行完以后从 “二、下载 OpenSSL 3.5.1” 开始操作


🔧 CentOS 7 升级 OpenSSL 3.5.1 教程

一、准备工作

  1. 确认系统版本
cat /etc/centos-release

输出类似:

CentOS Linux release 7.9.2009
  1. 确认当前 OpenSSL 版本
openssl version
  1. 安装编译依赖
yum -y install epel-release
yum -y groupinstall "Development Tools"
yum -y install perl-core zlib zlib-devel wget curl tar

二、下载 OpenSSL 3.5.1

cd /tmp
wget https://github.com/openssl/openssl/releases/download/openssl-3.5.1/openssl-3.5.1.tar.gz
tar -zxvf openssl-3.5.1.tar.gz
cd openssl-3.5.1

三、编译 & 安装

1. 配置安装目录

建议不要覆盖系统自带的 1.0.2k,而是安装到 /usr/local/openssl-3.5.1,并通过软链接控制版本:

注意:从这步骤开始每步执行完成以后建议查看书否执行成功 echo $? 这个命令输出如果是0 就继续执行否则先看报错。

./Configure linux-x86_64 \--prefix=/usr/local/openssl-3.5.1 \--openssldir=/usr/local/openssl-3.5.1/ssl \enable-zlib \enable-threads \enable-dynamic-engine \shared

🔹linux-x86_64 表示 64 位 Linux 系统(x86_64 架构)
🔹--prefix=/usr/local/openssl-3.5.1 安装根目录
🔹--openssldir=/usr/local/openssl-3.5.1/ssl 运行时配置目录
🔹 zlib:启用压缩支持
🔹 enable-threads 启用多线程支持
🔹 enable-dynamic-engine 启用动态引擎加载
🔹 shared:启用共享库(libssl.so / libcrypto.so)

2. 编译安装

## 编译过程很慢尤其是双核或者四核心的CPU,16核心以上的CPU很快
make -j$(nproc)
make install

四、配置系统使用新版本

1. 建立软链接

mv /usr/bin/openssl /usr/bin/openssl.bak
chmod -R 755  /usr/local/openssl-3.5.1
ln -s /usr/local/openssl-3.5.1/bin/openssl /usr/bin/openssl

2. 配置库文件

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

3. 验证

openssl version

输出应为:

OpenSSL 3.5.1 1 Jul 2025 (Library: OpenSSL 3.5.1 1 Jul 2025)

五、兼容性注意事项

  1. 系统依赖
    CentOS 7 中 yumcurlssh 等很多包依赖 openssl-1.0.2k,强行覆盖可能导致软件不可用。
    👉 推荐方案:
  • 保留 /usr/lib64/libssl.so.10/usr/lib64/libcrypto.so.10(系统用)
  • 自己编译的软件(Nginx、OpenSSH 等)指定新 OpenSSL 路径编译
  1. Nginx / OpenSSH 重新编译
    例如 Nginx:
./configure --with-openssl=/usr/local/src/openssl-3.5.1 ...

这样才能启用 TLSv1.3。


六、回滚方法

如果新版本有问题:

rm -f /usr/bin/openssl
mv /usr/bin/openssl.bak /usr/bin/openssl
rm -f /etc/ld.so.conf.d/openssl-3.5.1.conf
ldconfig

✅ 至此 CentOS 7 已成功升级到 OpenSSL 3.5.1,并且可以独立运行新版本,不影响系统自带的 1.0.2k。


七、 CentOS 7 离线升级 OpenSSL 3.5.1 操作指南

1. 下载离线安装包

安装包地址:
🔗 百度网盘下载
提取码:nnga

下载后,将安装包上传到服务器。


2. 解压安装包

unzip openssl.zip

3. 安装依赖包

cd openssl
yum localinstall -y *.rpm

4. 从步骤二开始安装 OpenSSL 3.5.1

依赖安装完成后,继续执行之前教程里的 第二步(下载 OpenSSL 3.5.1 源码并编译安装)


5. 如果仍缺少依赖包

在安装过程中,如果提示缺少依赖,可以使用以下命令下载补充依赖包(在有网络的机器上操作):

## 方法 1:下载指定包及其依赖
yumdownloader --resolve --destdir=./openssl <包名>  
# 注意:需要先安装 yum-utils
yum install -y yum-utils## 方法 2:下载 Development Tools 整个工具组
yum groupinstall --downloadonly --downloaddir=./openssl "Development Tools"## 方法 3:单独下载某些依赖包
yum install --downloadonly --downloaddir=./openssl <包名>

下载完成后,将依赖包拷贝到离线服务器,再用:

yum localinstall -y *.rpm

进行安装。

http://www.xdnf.cn/news/1370071.html

相关文章:

  • HarmonyOS image组件深度解析:多场景应用与性能优化指南(2.4详细解析,完整见uniapp官网)
  • Android 属性 property 系统
  • 微服务的编程测评系统16-用户答题
  • 什么是索引下推?
  • ADB 安装教程:如何在 Windows、 Linux 上安装 Android Debug Bridge
  • 基于CSO与BP神经网络分类模型的特征选择方法研究(Python实现)
  • 2025第五届人工智能、自动化与高性能计算国际会议 (AIAHPC 2025)
  • Android Glide生命周期管理:实现原理与最佳实践
  • swift 开发抠图工具实现思路,与代码详解
  • 技术分享︱国产化突破:开源MDO工具链在新一代神威超算上的安装与调试
  • 使用QML的Rectangle组件的边框属性
  • HMM简单拓展-HSMM与高阶HMM
  • C/C++ 数据结构 —— 树(2)
  • nginx-负载均衡
  • C++工程实战入门笔记4-函数(一)
  • WeakAuras Lua Script ICC (BarneyICC) Simplified Chinese [Mini]
  • 深入了解linux系统—— 线程互斥
  • ArcGIS学习-11 实战-商场选址
  • 洛谷 P12332 题解
  • 如何利用ArcGIS探究环境与生态因子对水体、土壤、大气污染物等影响实践技术
  • pytorch_grad_cam 库学习笔记—— Ablation-CAM 算法的基类 AblationCAM 和 AblationLayer
  • 如何避免频繁切换npm源
  • pytorch-利用letnet5框架深度学习手写数字识别
  • Vue2(七):配置脚手架、render函数、ref属性、props配置项、mixin(混入)、插件、scoped样式
  • 深入解析交换机端口安全:Sticky MAC的工作原理与应用实践
  • 机器视觉学习-day03-灰度化实验-二值化和自适应二值化
  • 【C++】智能指针底层原理:引用计数与资源管理机制
  • 深度学习篇---LeNet-5网络结构
  • 病理软件Cellprofiler使用教程
  • vue2 和 vue3 生命周期的区别