RHEL8 upgrade openssl3
Problem Description
OpenSSL 1.0.2k-fips security issues need to be upgraded
# 查看当前版本
openssl version
Solution
Reference:
https://cloud.tencent.com/developer/article/2060895
Back up old versions of openssl
# 备份旧的openssl
mv /usr/bin/openssl /usr/bin/openssl.old
mv /usr/include/openssl /usr/include/openssl.old
Install dependent environment
# 安装编译依赖环境
yum install -y perl-ExtUtils-CBuilder perl-ExtUtils-MakeMaker
# 安装编译工具
yum install -y make gcc zlib-devel
Download and decompress the source code package
Download the latest source package from the official site
https://www.openssl.org/source/
# 下载源码包
wget https://www.openssl.org/source/openssl-3.1.2.tar.gz
# 解压
tar -xvf openssl-3.1.2.tar.gz
# 进入解压后的目录
cd openssl-3.1.2/
Build the compilation environment
# 查看该目录是否存在
ll /usr/local/openssl
# 创建openssl目录
mkdir -p /usr/local/openssl
# 构建编译环境
## -d 启用调试模式打印详细日志
## shared 编译为共享库(动态链接库)
./config --prefix=/usr/local/openssl -d shared
Compile and install
# 编译安装
make && make install
Create soft link for new openssl
# 为新openssl创建软链接
## -f 强制链接
ln -sf /usr/local/openssl/bin/openssl /usr/bin/openssl
ln -sf /usr/local/openssl/include/openssl /usr/include/openssl
ln -sf /usr/local/openssl/lib64/libssl.so.3 /usr/lib/libssl.so.3
ln -sf /usr/local/openssl/lib64/libcrypto.so.3 /usr/lib/libcrypto.so.3
Update system library path
# 添加openssl函数库
echo '/usr/local/openssl/lib' >/etc/ld.so.conf.d/openssl.conf
# 更新系统库路径
ldconfig -v
Result verification
# 查看更新后的openssl的版本
openssl version