参考文章:centos7|操作系统|升级openssl-1.0.2k到openssl-3.3.0_openssl 1.0.2升级到3.0-CSDN博客
1.基础环境
centos7.9,提前准备好本地yum源,安装好telnet并开启服务,防火墙已关闭。
2.查看openssl版本信息
使用openssl version查看当前版本信息,是centos7.9安装后的默认版本1.0.2k。
本来想将openssl版本升级到1.1.1w,但是查看了一下1.1.1版本只到2023年,考虑到将来openssh的升级,所以决定升级为3.0.14。
将升级包上传到服务器。
以下操作通过telnet远程操作。
3.升级openssl
3.1安装相关依赖
[root@localhost ~]$ yum -y install gcc* perl*
3.2解压openssl-3.0.14.tar.gz
[root@localhost ~]# tar zxvf openssl-3.0.14.tar.gz
3.2*备份当前版本(可以不做)
这一步我没做,害怕安装出问题的可以备份一下。
查看当前openssl的路径,备份当前默认版本。
[root@localhost ~]# whereis openssl
openssl: /usr/bin/openssl /usr/lib64/openssl /usr/share/man/man1/openssl.1ssl.gz
[root@localhost ~]# mv /usr/bin/openssl /usr/bin/openssl.bak
[root@localhost ~]# mv /usr/include/openssl /usr/include/openssl.bak
3.3安装openssl
[root@localhost ~]# cd openssl-3.0.14/
[root@localhost openssl-3.0.14]# ./Configure --prefix=/usr/local/openssl
#安装目录设定为/usr/local/openssl
[root@localhost openssl-3.0.14]# make && make install
#安装
3.4链接库文件
[root@localhost ~]# ln -s /usr/local/openssl/bin/openssl /usr/bin/openssl
#因为之前,没做备份,所以/usr/bin/openssl仍然存在,会报错,删除掉原先的链接就行
[root@localhost ~]# rm -rf /usr/bin/openssl
[root@localhost ~]# ln -s /usr/local/openssl/bin/openssl /usr/bin/openssl
[root@localhost ~]# ln -s /usr/local/openssl/include/openssl/ /usr/include/openssl
查看依赖是否正常
[root@localhost openssl-3.0.14]# ldd /usr/bin/openssl
linux-vdso.so.1 => (0x00007fffd0ddb000)
libssl.so.3 => not found
libcrypto.so.3 => not found
libdl.so.2 => /lib64/libdl.so.2 (0x00007f260f893000)
libpthread.so.0 => /lib64/libpthread.so.0 (0x00007f260f677000)
libc.so.6 => /lib64/libc.so.6 (0x00007f260f2a9000)
/lib64/ld-linux-x86-64.so.2 (0x00007f260fa97000)
[root@localhost openssl-3.0.14]# vim /etc/ld.so.conf
#在文章下添加两行
/usr/local/openssl/lib/ #测试了一下,不加这一行也行
/usr/local/openssl/lib64/
#保存,退出
[root@localhost openssl-3.0.14]# ldconfig -v
#激活
#再次查看
[root@localhost openssl-3.0.14]# ldd /usr/bin/openssl
这部分省略
libpanelw.so.5 -> libpanelw.so.5.9
libcrypt.so.1 -> libcrypt-2.17.so
libpanel.so.5 -> libpanel.so.5.9
libcidn.so.1 -> libcidn-2.17.so
libncursesw.so.5 -> libncursesw.so.5.9
libc.so.6 -> libc-2.17.so
libuuid.so.1 -> libuuid.so.1.3.0
libanl.so.1 -> libanl-2.17.so
libncurses.so.5 -> libncurses.so.5.9
libSegFault.so -> libSegFault.so
libpopt.so.0 -> libpopt.so.0.0.0
libBrokenLocale.so.1 -> libBrokenLocale-2.17.so
libxml2.so.2 -> libxml2.so.2.9.1
libutil.so.1 -> libutil-2.17.so
ld-linux-x86-64.so.2 -> ld-2.17.so
libcom_err.so.2 -> libcom_err.so.2.1
libfreeblpriv3.so -> libfreeblpriv3.so
libncurses++w.so.5 -> libncurses++w.so.5.9
libfreebl3.so -> libfreebl3.so
libncurses++.so.5 -> libncurses++.so.5.9
libmenuw.so.5 -> libmenuw.so.5.9
libgcc_s.so.1 -> libgcc_s-4.8.5-20150702.so.1
liblzma.so.5 -> liblzma.so.5.2.2
libthread_db.so.1 -> libthread_db-1.0.so
/lib/sse2: (hwcap: 0x0000000004000000)
/lib64/sse2: (hwcap: 0x0000000004000000)
/lib64/tls: (hwcap: 0x8000000000000000)
3.5查看版本
使用openssl version查看,显示版本为3.0.14
[root@localhost openssl-3.0.14]# openssl version
OpenSSL 3.0.14 4 Jun 2024 (Library: OpenSSL 3.0.14 4 Jun 2024)
升级成功。