将 openssl 升级到 3.0

在计算机网络上,OpenSSL是一个开放源代码的软件库包,应用程序可以使用这个包来进行安全通信,避免窃听,同时确认另一端连线者的身份。这个包广泛被应用在互联网的网页服务器上。 其主要库是以C语言所写成,实现了基本的加密功能,实现了SSL与TLS协议

升级前查看OpenSSL版本

openssl version -a
OpenSSL 1.0.2k-fips  26 Jan 2017

选择升级到 3.0.8,因为这个版本内置集成了 fips

将 openssl 升级到 3.0_第1张图片

提前下载编译所需的包:

yum install -y gcc
# 没有下面这包会导致 config 失败
yum install -y perl-IPC-Cmd
# 没有下面会导致 make编译失败
yum install -y perl-Data-Dump
yum install -y zlib-devle
# 如果config时 enable-fips,那还需要下面,否则make编译会失败
yum install -y perl-Digest-SHA

下载源码包:

wget https://www.openssl.org/source/openssl-3.0.8.tar.gz

上面地址我是这么找的…

将 openssl 升级到 3.0_第2张图片

将 openssl 升级到 3.0_第3张图片

解压,

tar zxf openssl-3.0.8.tar.gz 

配置:

cd openssl-3.0.8
./config enable-fips --prefix=/usr/local --openssldir=/usr/local/openssl

将 openssl 升级到 3.0_第4张图片

编译:

make && make install

接下来,需要替换新的openssl入口,以及指定新openssl库文件位置

注意下关键文件的位置:

openssl 位于 /usr/local/bin下,

配置文件 位于/usr/local/ssl下,

库文件 位于/usr/local/lib64下

收尾阶段:

1、将原有openssl备份

mv /usr/bin/openssl /usr/bin/openssl.bak
mv /usr/include/openssl /usr/include/openssl.bak

不过下面 include/ 里这个我的机子里没有:

mv: cannot stat ‘/usr/include/openssl’: No such file or directory

2、添加新openssl软连接

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

可以用 which openssl 命令查看路径,如果有神通数据库则路径如下:/opt/ShenTong/bin/openssl

ln -s /usr/bin/openssl /opt/ShenTong/bin/openssl

3、库文件

选择一,库复制过去

cd /usr/local/lib64
cp libssl.so.3 /usr/lib/libssl.so.3
cp libcrypto.so.3 /usr/lib/libcrypto.so.3

选择二,将新的库文件地址写入记录 so 库的配置文件 (添加OpenSSL动态链接库)

echo "/usr/local/lib64" >> /etc/ld.so.conf  

4、设置链接库生效

ldconfig -v

搞定!

检查版本

openssl version

你可能感兴趣的:(Linux,linux,运维,服务器)