CentOS 7 / Kylin Linux V10 升级 OpenSSL 3.6.1 详细教程

🔧 CentOS 7 / Kylin Linux V10 升级 OpenSSL 3.6.1 详细教程

CentOS 7/麒麟V10 升级 OpenSSL 3.6.1 完整指南(附离线安装包

📋 适用范围

本教程主要针对 CentOS 7Kylin Linux V10 系统编写,但以下 Linux 发行版也可参考本教程进行 OpenSSL 升级,可能有区别的地方是安装依赖那块:

发行版 备注
CentOS 8 / RHEL 8 依赖安装命令类似,推荐使用 dnf 代替 yum
Ubuntu 18.04+ / Debian 10+ 依赖安装使用 apt,编译步骤相同
Fedora 30+ 使用 dnf 安装依赖,编译步骤相同
openEuler 20.03+ 依赖安装命令与 CentOS 7 类似
SUSE Linux Enterprise Server 依赖安装使用 zypper,编译步骤相同

💡 提示:不同发行版的依赖包名称可能略有差异,安装依赖时请根据实际情况调整命令。

其他版本OpenSSL 升级参考
升级 OpenSSL 3.5.1
升级 OpenSSL 3.5.4
OpenSSL3.5.4升级方案:自动化脚本


一、准备工作

1. 确认系统版本

bash 复制代码
cat /etc/centos-release

CentOS 7 输出示例:

复制代码
CentOS Linux release 7.9.2009
bash 复制代码
cat /etc/kylin-release

麒麟 V10 输出示例:

复制代码
Kylin Linux Advanced Server release V10 (Sword)

2. 确认当前 OpenSSL 版本

bash 复制代码
openssl version

3. 安装编译依赖

CentOS 7 系统:

bash 复制代码
yum -y install epel-release
yum -y groupinstall "Development Tools"
yum -y install perl-core zlib zlib-devel wget curl tar openssl-devel

Kylin Linux V10 系统:

bash 复制代码
yum install -y gcc gcc-c++ make cmake \
  perl perl-IPC-Cmd perl-Data-Dumper \
  zlib-devel libtool autoconf automake \
  diffutils

二、下载 OpenSSL 3.6.1

bash 复制代码
cd /tmp
wget https://github.com/openssl/openssl/releases/download/openssl-3.6.1/openssl-3.6.1.tar.gz
tar -zxvf openssl-3.6.1.tar.gz
cd openssl-3.6.1

三、编译 & 安装

1. 配置安装目录

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

💡 提示 :从这步骤开始,每步执行完成后建议检查是否执行成功,使用命令 echo $?。如果输出是 0 则继续执行,否则先查看报错信息。

CentOS 7 系统:

bash 复制代码
./config \
  --prefix=/usr/local/openssl-3.6.1 \
  --openssldir=/usr/local/openssl-3.6.1/ssl \
  enable-zlib \
  enable-threads \
  enable-dynamic-engine \
  shared \
  CFLAGS="-std=gnu99"

Kylin Linux V10 系统:

bash 复制代码
./config \
  --prefix=/usr/local/openssl-3.6.1 \
  --openssldir=/usr/local/openssl-3.6.1/ssl \
  enable-zlib \
  enable-threads \
  enable-dynamic-engine \
  shared

🔹 --prefix=/usr/local/openssl-3.6.1:安装根目录

🔹 --openssldir=/usr/local/openssl-3.6.1/ssl:运行时配置目录

🔹 enable-zlib:启用压缩支持

🔹 enable-threads:启用多线程支持

🔹 enable-dynamic-engine:启用动态引擎加载

🔹 shared:启用共享库(libssl.so / libcrypto.so

🔹 CFLAGS="-std=gnu99":强制使用 gnu99 编译(仅 CentOS 7 需要)

2. 编译安装

bash 复制代码
make -j$(nproc)
make install

提示:编译过程较慢,尤其是在双核或四核 CPU 上。16 核以上的 CPU 会更快。


四、配置系统使用新版本

1. 建立软链接

bash 复制代码
mv /usr/bin/openssl /usr/bin/openssl.bak
chmod -R 755 /usr/local/openssl-3.6.1
ln -s /usr/local/openssl-3.6.1/bin/openssl /usr/bin/openssl

2. 配置库文件

bash 复制代码
echo "/usr/local/openssl-3.6.1/lib64" >> /etc/ld.so.conf
ldconfig

3. 验证安装

bash 复制代码
openssl version

验证成功的输出应为:

复制代码
OpenSSL 3.6.1 27 Jan 2026 (Library: OpenSSL 3.6.1 27 Jan 2026)

五、兼容性注意事项

1. 系统依赖

CentOS 7 和 Kylin V10 中 yumcurlssh 等很多包依赖系统自带的 OpenSSL,强行覆盖可能导致软件不可用。

推荐方案:

  • 保留系统原有库文件(如 /usr/lib64/libssl.so.10/usr/lib64/libcrypto.so.10
  • 自行编译的软件(Nginx、OpenSSH 等)指定新 OpenSSL 路径编译

2. Nginx / OpenSSH 重新编译

例如 Nginx:

bash 复制代码
./configure --with-openssl=/usr/local/src/openssl-3.6.1 ...

这样才能启用 TLSv1.3 协议支持。


六、回滚方法

如果新版本出现问题,可以按照以下步骤回滚到系统默认版本:

bash 复制代码
rm -f /usr/bin/openssl
mv /usr/bin/openssl.bak /usr/bin/openssl
rm -f /etc/ld.so.conf.d/openssl-3.6.1.conf
ldconfig

✅ 至此 CentOS 7 / Kylin Linux V10 已成功升级到 OpenSSL 3.6.1,并且可以独立运行新版本,不影响系统自带版本。


七、离线升级操作指南

注意:离线安装包仅有centos7系统的,麒麟系统可以根据我下面提供的方法自行下载。

1. 下载离线安装包

安装包地址:

🔗 百度网盘下载

提取码:hw8u

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


2. 解压安装包

bash 复制代码
unzip openssl.zip

3. 安装依赖包

bash 复制代码
cd openssl
yum localinstall -y *.rpm

4. 继续安装 OpenSSL 3.6.1

依赖安装完成后,继续执行本教程的第二步开始的编译安装步骤。


5. 补充依赖包下载方法

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

bash 复制代码
yum install -y yum-utils

## 方法 1:下载指定包及其依赖
yumdownloader --resolve --destdir=./openssl <包名>

## 方法 2:下载 Development Tools 工具组
yum groupinstall --downloadonly --downloaddir=./openssl "Development Tools"

## 方法 3:单独下载某些依赖包
yum install --downloadonly --downloaddir=./openssl <包名>

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

bash 复制代码
yum localinstall -y *.rpm

总结

通过本教程,你已掌握在 CentOS 7Kylin Linux V10 系统上升级 OpenSSL 到 3.6.1 版本的方法,包括:

  • 在线升级的完整步骤
  • 离线升级的详细指南
  • 系统兼容性处理
  • 紧急回滚方案

升级后的优势

  1. 安全性提升:获得最新的安全补丁和漏洞修复
  2. 性能优化:支持更高效的加密算法和协议
  3. 功能扩展:启用 TLSv1.3 等现代协议支持
  4. 兼容性保障:通过软链接方式,不影响系统默认版本

注意事项

  • 严格按照教程步骤操作,特别是配置和软链接部分
  • 每步执行后检查是否成功,避免因错误导致系统问题
  • 如需在生产环境操作,建议先在测试环境验证
  • 保存好回滚命令,以备不时之需
相关推荐
哎呦,帅小伙哦8 小时前
pthread 互斥锁属性:type、pshared 与 robust
linux
Irene19918 小时前
在 WSL Ubuntu 上安装和使用 Hive
linux·hive·ubuntu
我叫张小白。8 小时前
CentOS 7 安装 MySQL 8.0 完整指南(含远程连接配置)
linux·mysql·centos
ABILI .8 小时前
Linux上安装部署k8s单机版(minikube)
linux·运维·kubernetes
量子炒饭大师8 小时前
【Linux系统编程】——【自动化构建-make/Makefile】拒绝手动编译!构建你的赛博代码加工厂,重塑逻辑矩阵效率极限
linux·运维·自动化·makefile·make·自动化构建
eggrall8 小时前
Linux信号——信号产生
linux·运维·服务器
zincsweet8 小时前
虚拟地址空间
linux
Ha_To8 小时前
26.5.19 未授权漏洞
linux·服务器·网络
ZGUIZ8 小时前
Ubuntu 25.10 蓝牙Wifi不可用解决流程
linux·运维·ubuntu