本文不再更新,可能存在內容過時的情況,實時更新請移步原文地址:CentOS如何升級openssl到最新版本;
環境信息
- CentOS Linux release 7.6.1810 (Core);
- OpenSSL 1.0.2k-fips 26 Jan 2017;
- OpenSSL 1.1.1c 28 May 2019
依賴
sudo yum -y install perl perl-devel gcc gcc-c++
升級
查看當前版本
[michael@centos7 src]$ openssl version
OpenSSL 1.0.2k-fips 26 Jan 2017
下載最新版本
當前最新版本是OpenSSL_1_1_1c(2019年7月5日),請到下面頁面下載。
這里下載到/usr/local/src
目錄,
[michael@centos7 ~]$ cd /usr/local/src
[michael@centos7 src]$ wget https://github.com/openssl/openssl/archive/OpenSSL_1_1_1c.tar.gz
[michael@centos7 src]$ tar xzvf ./OpenSSL_1_1_1c.tar.gz
[michael@centos7 src]$ cd openssl-OpenSSL_1_1_1c/
接下來執行編譯操作,
[michael@centos7 src]$ ./config
如果沒有安裝Perl 5,執行config
會有提示沒有安裝,需要先進行安裝,執行sudo yum install perl
。
接下來依次執行下面的命令:
[michael@centos7 src]$ make
[michael@centos7 src]$ make test
[michael@centos7 src]$ sudo make install
替換新舊版本:
[michael@centos7 src]$ sudo mv /usr/bin/openssl /usr/bin/oldopenssl
[michael@centos7 src]$ sudo ln -s /usr/local/bin/openssl /usr/bin/openssl
如果執行openssl version
報下面錯誤,
[inspur@localhost openssl-OpenSSL_1_1_1c]$ openssl version
openssl: error while loading shared libraries: libssl.so.1.1: cannot open shared object file: No such file or directory
則執行下面命令解決:
[michael@centos7 src]$ sudo ln -s /usr/local/lib64/libssl.so.1.1 /usr/lib64/
[michael@centos7 src]$ sudo ln -s /usr/local/lib64/libcrypto.so.1.1 /usr/lib64/
然后查看當前版本:
michael@centos7 openssl-OpenSSL_1_1_1c]$ openssl version
OpenSSL 1.1.1c 28 May 2019
常見錯誤
錯誤:begin failed--compilation aborted at .././test/run_tests.pl
解決:sudo yum install perl-devel
錯誤:Parse errors: No plan found in TAP output
解決:忽略錯誤,繼續執行安裝
本文可能存在更新延遲的情況,實時更新請移步原文地址:CentOS如何升級openssl到最新版本;