分类: Linux

CentOS7快速升级OpenSSL到最新版

openssl-logo.png
CentOS7的OpenSSL软件版本比较低,查看默认版本:

[root@c7 ~]# cat /etc/redhat-release
CentOS Linux release 7.7.1908 (Core)
[root@c7 ~]# openssl version
OpenSSL 1.0.2k-fips  26 Jan 2017

升级到OpenSSL 1.1.1h最新版本步骤如下:
安装基础组件:

yum install gcc gcc-c++ autoconf automake zlib zlib-devel pcre-devel -y

下载解压编译安装openssl 可到官网查看最新版本

wget https://www.openssl.org/source/openssl-1.1.1i.tar.gz
tar xvf openssl-1.1.1i.tar.gz
./config shared --openssldir=/usr/local/openssl --prefix=/usr/local/openssl
make
make install

移除老版本openssl

mv /usr/bin/openssl /tmp/
ln -s /usr/local/openssl/bin/openssl /usr/bin/openssl

配置lib库

echo "/usr/local/openssl/lib/" >> /etc/ld.so.conf
ldconfig

查看版本

[root@c7 ~]# openssl version
OpenSSL 1.1.1i  22 Sep 2020

如果运行openssl version出现如下错误:

openssl: error while loading shared libraries: libssl.so.1.1: cannot open shared object file: No such file or directory

是因为openssl库的位置不正确造成的,参考配置lib库即可解决;
至此,已升级完毕·

相关文章

已有 5 条评论
  1. 1073

    你好,我按照这个方法升级好ssl openssl version查看也是最新的 ,但是用ssh -V查看还是老版本的ssl 还需要操作什么嘛

    1073
    1. nail

      @1073

      你需要重新编译openssh,并且关联到你最新的openssl库,才会显示新版本的ssl。 原始自带的不会随着你的openssl单独更新而更新。

      nail
    2. ice

      @1073

      检查老版本是否未移除·

      ice
  2. peter

    wget https://www.openssl.org/source/openssl-1.1.1i.tar.gz
    tar xvf openssl-1.1.1i.tar.gz
    ./config shared --openssldir=/usr/local/openssl --prefix=/usr/local/openssl
    make
    make install

    这里添加行cd openssl-1.1.1i就完美

    peter
    1. ice

      @peter

      嗯,少了个cd进入目录·

      ice

此处评论已关闭