今天老王需要升级一台 CentOS 7 服务器上的 OpenSSL,本文记录下 CentOS 升级 OpenSSL 至最新版教程,以及升级过程中可能遇到的问题。
一、服务器环境
CentOS 版本:CentOS Linux release 7.6.1810 (Core)
默认的 OpenSSL 版本:
openssl version
提示如下:
OpenSSL 1.0.2k-fips 26 Jan 2017
二、升级教程
1、下载最新版的 OpenSSL
下载地址:https://www.openssl.org/source/
老王选择的是:openssl-1.1.1l.tar.gz
命令如下:
cd ~ wget https://www.openssl.org/source/openssl-1.1.1l.tar.gz tar -zxf openssl-1.1.1l.tar.gz
2、编译并安装
cd openssl-1.1.1l ./config make make install
这时查看 OpenSSL 版本会报错:
/usr/local/bin/openssl version
错误如下:
/usr/local/bin/openssl: error while loading shared libraries: libcrypto.so.1.1: cannot open shared object file: No such file or directory
3、链接 libssl
执行以下命令可以解决上面的错误:
sudo ln -s /usr/local/lib64/libssl.so.1.1 /usr/lib64/ sudo ln -s /usr/local/lib64/libcrypto.so.1.1 /usr/lib64/
在 Ubuntu 上也更新了 OpenSSL,这里的命令有些不一样:
sudo ln -s /usr/local/lib/libcrypto.so.1.1 /usr/lib/x86_64-linux-gnu/libcrypto.so.1.1 sudo ln -s /usr/local/lib/libssl.so.1.1 /usr/lib/x86_64-linux-gnu/libssl.so.1.1
4、备份旧的并启用新的 OpenSSL
mv /usr/bin/openssl /root/ ln -s /usr/local/bin/openssl /usr/bin/openssl
5、检查 OpenSSL 版本
openssl version
提示如下:
OpenSSL 1.1.1l 24 Aug 2021
至此,成功在 CentOS 上更新了 OpenSSL。