下载解压最新的 OpenSSL

# 下载openssl源码包
# https://www.openssl.org/source/openssl-1.1.1h.tar.gz
mkdir -p ~/downloads/openssl && cd  ~/downloads/openssl
wget https://github.com/openssl/openssl/archive/OpenSSL_1_1_1h.tar.gz

# 解压缩
tar -xzvf OpenSSL_1_1_1h.tar.gz
# 编译安装
# 安装目录,默认./config --prefix=/usr/local,
# 可选./config --prefix=/opt/openssl/ 
# 或 ./config --prefix=/usr/local/openssl/
cd openssl-OpenSSL_1_1_1h
./config --prefix=/usr/local/openssl/

make && make install

先备份原来的,替换当前系统的旧版本 openssl 。

ll /usr/lib64/libssl.so*
ll /usr/lib64/libcrypto.so* 

lrwxrwxrwx. 1 root root   16 11月 19 2019 /usr/lib64/libssl.so -> libssl.so.1.0.2k
-rwxr-xr-x. 1 root root 333K 3月   9 2016 /usr/lib64/libssl.so.0.9.8e
lrwxrwxrwx. 1 root root   16 11月 18 2019 /usr/lib64/libssl.so.10 -> libssl.so.1.0.2k
-rwxr-xr-x. 1 root root 460K 8月   9 2019 /usr/lib64/libssl.so.1.0.2k
lrwxrwxrwx. 1 root root   16 11月 18 2019 /usr/lib64/libssl.so.6 -> libssl.so.0.9.8e
 

lrwxrwxrwx. 1 root root   19 11月 19 2019 /usr/lib64/libcrypto.so -> libcrypto.so.1.0.2k
-rwxr-xr-x. 1 root root 1.4M 3月   9 2016 /usr/lib64/libcrypto.so.0.9.8e
lrwxrwxrwx. 1 root root   19 11月 18 2019 /usr/lib64/libcrypto.so.10 -> libcrypto.so.1.0.2k
-rwxr-xr-x. 1 root root 2.5M 8月   9 2019 /usr/lib64/libcrypto.so.1.0.2k
lrwxrwxrwx. 1 root root   19 11月 18 2019 /usr/lib64/libcrypto.so.6 -> libcrypto.so.0.9.8e

# 备份原文件
mkdir -p ~/openssl_bkp/usr/{lib64,bin,include}
# cp -p /usr/lib64/{libssl.so.1.1,libcrypto.so.1.1} ~/openssl_bkp/usr/lib64

# rpm -e --nodeps openssl-1.0.2k openssl-devel-1.0.2k openssl-libs-1.0.2k
mv /usr/bin/openssl ~/openssl_bkp/usr/bin/
mv /usr/include/openssl ~/openssl_bkp/usr/include/ 
mv /usr/lib64/openssl ~/openssl_bkp/usr/lib64/
mv /usr/lib64/libssl.so ~/openssl_bkp/usr/lib64/
mv /usr/lib64/libssl.so.1.1 ~/openssl_bkp/usr/lib64/
mv /usr/lib64/libcrypto.so.1.1 ~/openssl_bkp/usr/lib64/
# 复制编译后文件到系统路径下
# cp -i -p /usr/local/openssl/lib/{libssl.so.1.1,libcrypto.so.1.1} /usr/lib64/
# ll /usr/lib64/{libssl.so.*,libcrypto.so.*}  
# cp -i -p /usr/local/openssl/bin/openssl /usr/bin
# ll /usr/openssl

ln -s /usr/local/openssl/bin/openssl /usr/bin/openssl
ln -s /usr/local/openssl/include/openssl /usr/include/openssl

ln -s /usr/local/openssl/lib/libssl.so /usr/lib64/libssl.so

# ln -s /usr/local/openssl/lib/libssl.so.1.1 /usr/lib64/libssl.so.1.1
# ln -s /usr/local/openssl/lib/libcrypto.so.1.1 /usr/lib64/libcrypto.so.1.1
# 加入动态库的路径,加载so库的路径
# touch /etc/ld.so.conf.d/openssl-lib.conf
echo "/usr/local/openssl/lib" >> /etc/ld.so.conf.d/openssl-lib.conf
# 使生效
ldconfig -v 
# 查看版本
$ openssl version  
OpenSSL 1.1.1h  22 Sep 2020