CentOS 6升级openssl
前几天,研发同事说测试环境上的openssl版本过低,新的程序无法在现有环境上运行,需要将现有的openssl版本从1.0.1e升级到 1.1.1以上才行。
说实话,系统的openssl不能随便升级,因为大部分系统组件都会调用现有的openssl库,一旦系统组件无法正确读取升级后的openssl环境,那么很多程序将会无法运行,一时间也是左右为难。不过研发同事有需求,又是测试环境,只能说告知下相关风险并令其做好快照等回滚预案,然后直接怼上去了。
接下来讲讲如何给现有openssl升级
下载新版本openssl
wget https://www.openssl.org/source/openssl-1.1.1f.tar.gz
这里写的是文章更新时软件的最新版本,如果需要自己指定版本信息,可以在https://www.openssl.org/source/old/ 中选择相对应的版本进行下载,而https://www.openssl.org/source/默认提供当前最新版本下载
编译安装
解压压缩包
tar zxvf openssl-1.1.1f.tar.gz
这里不要照搬指令,请将openssl-1.1.1f.tar.gz替换为自己下载的相对应版本,下同
预编译环境
cd openssl-1.1.1f.tar.gz
./config shared zlib-dynamic
若编译无法继续进行,则需要额外执行以下步骤
yum -y install zlib-devel
执行安装
make && make install
备份现有openssl版本
mv /usr/local/openssl{, .bak}
mv /usr/include/openssl{, .bak}
应用新的openssl版本
mv openssl-1.1.1f/libssl.so.1.1 /usr/lib64
mv openssl-1.1.1f/libcrypto.so.1.1 /usr/lib64/
mv openssl-1.1.1f/app/openssl /usr/bin/openssl
检验结果
openssl version
1
1
1
1
1
1
1
1
1
555
555
1
1
1
1
1
1
1
1
1
1
1
1
1
1
555
555