Openssl源码安装及升级

查看openssl当前版本:

[root@bestmem ~]# rpm -qa | grep openssl
openssl-libs-1.0.2k-16.el7.x86_64
openssl-1.0.2k-16.el7.x86_64
openssl-devel-1.0.2k-16.el7.x86_64

源码安装openssl-1.1.0

[root@bestmem ~]# tar zxf openssl-1.1.0h.tar.gz -C /usr/local/
[root@bestmem ~]# cd /usr/local/openssl-1.1.0h/
[root@bestmem openssl-1.1.0h]# ./config --prefix=/usr/local/openssl --openssldir=/usr/local/ssl shared
[root@bestmem openssl-1.1.0h]# make && make install
[root@bestmem openssl-1.1.0h]# ln -s /usr/local/openssl/bin/openssl /usr/local/bin/openssl	#创建openssl命令链接

–prefix:指定安装目录
–openssldir:指定openssl配置文件路径
–shared:创建动态链接库
至于为什么不需卸载rpm包安装的openssl-1.0.2,而直接安装openssl-1.1.0的原因如下:

[root@bestmem openssl-1.1.0h]# which openssl			#rpm包所安装的openssl,其二进制文件位置
/usr/bin/openssl
[root@bestmem openssl-1.1.0h]# echo $PATH				#PATH环境变量加载路径顺序,/usr/local/bin查询在前
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin

重启终端后,加载新的环境变量。

[root@bestmem ~]# which openssl
/usr/local/bin/openssl
[root@bestmem ~]# openssl version
openssl: error while loading shared libraries: libssl.so.1.1: cannot open shared object file: No such file or directory

#创建对应的库文件链接即可
[root@bestmem ~]# ln -s /usr/local/openssl/lib/libssl.so.1.1 /usr/lib64/libssl.so.1.1
[root@bestmem ~]# openssl version
openssl: error while loading shared libraries: libcrypto.so.1.1: cannot open shared object file: No such file or directory
[root@bestmem ~]# ln -s /usr/local/openssl/lib/libcrypto.so.1.1 /usr/lib64/libcrypto.so.1.1
[root@bestmem ~]# openssl version
OpenSSL 1.1.0h  27 Mar 2018

若编译nginx,–with-openssl=/usr/local/openssl即可。

升级openssl-1.1.1

为什么要升级至openssl-1.1.1版本?因为官方将长期支持且稳定版为该版本,所以升级是迟早得事。

注意:最新的稳定版本是1.1.1系列。这也是我们的长期支持(LTS)版本,支持到2023年9月11日。我们之前的LTS版本(1.0.2系列)将继续支持到2019年12月31日(安全修复仅在支持的最后一年)。1.1.0系列目前仅接收安全修复程序,并将于2019年9月11日停止支持。鼓励1.0.2和1.1.0的所有用户尽快升级到1.1.1。0.9.8,1.0.0和1.0.1版本现在不再支持,不应使用。

源码包下载地址:https://www.openssl.org/source/openssl-1.1.1a.tar.gz

  1. 源码包编译
[root@bestmem ~]# tar zxf openssl-1.1.1a.tar.gz -C /usr/local/
[root@bestmem ~]# cd /usr/local/openssl-1.1.1a/
[root@bestmem openssl-1.1.1a]# ./config --prefix=/usr/local/openssl-new --openssldir=/usr/local/ssl-new shared
[root@bestmem openssl-1.1.1a]# make && make install
  1. 备份openssl-1.1.0二进制文件,创建openssl-1.1.1二进制文件链接
[root@bestmem openssl-1.1.1a]# cd /usr/local/bin/
[root@bestmem bin]# mv openssl openssl-1.1.0.bak
[root@bestmem bin]# ll
总用量 0
lrwxrwxrwx. 1 root root 30 1月  10 01:30 openssl-1.1.0.bak -> /usr/local/openssl/bin/openssl
[root@bestmem bin]# ln -s /usr/local/openssl-new/bin/openssl /usr/local/bin/openssl

重启终端

[root@bestmem ~]# openssl version
openssl: /lib64/libssl.so.1.1: version `OPENSSL_1_1_1' not found (required by openssl)
openssl: /lib64/libcrypto.so.1.1: version `OPENSSL_1_1_1' not found (required by openssl)

#更新libssl.so.1.1和libcrypto.so.1.1库文件的链接指向
[root@bestmem ~]# rm -fr /usr/lib64/libssl.so.1.1
[root@bestmem ~]# rm -fr /usr/lib64/libcrypto.so.1.1
[root@bestmem ~]# ln -s /usr/local/openssl-new/lib/libssl.so.1.1 /usr/lib64/libssl.so.1.1
[root@bestmem ~]# ln -s /usr/local/openssl-new/lib/libcrypto.so.1.1 /usr/lib64/libcrypto.so.1.1
[root@bestmem ~]# openssl version
OpenSSL 1.1.1a  20 Nov 2018
  • 6
    点赞
  • 24
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值