1. 程式人生 > >ubuntu18.04 安裝新版本openssl

ubuntu18.04 安裝新版本openssl

應該 usr ref 壓縮 reg ssl openss 配置 ubun

首先我們應該知道ubuntu18.04內置了1.1.0g版本的openssl:

技術分享圖片

使用下面的apt命令更新Ubuntu存儲庫並安裝軟件包編譯的軟件包依賴項:
sudo apt update
sudo apt install build-essential checkinstall zlib1g-dev -y

轉到‘/ usr / local / src‘目錄並使用wget下載OpenSSL-1.1.1b的源代碼:

cd /usr/local/src/
sudo wget https://www.openssl.org/source/openssl-1.1.1b.tar.gz

為什麽選這個版本呢?因為它最大······

現在解壓縮openssl-1.1.1b.tar.gz文件,然後轉到‘openssl-1.1.1b‘目錄:

sudo tar -xf openssl-1.1.1b.tar.gz 
cd openssl-1.1.1b

使用以下命令配置和編譯OpenSSL:

sudo ./config --prefix=/usr/local/ssl --openssldir=/usr/local/ssl shared zlib
 
sudo make
sudo make test

註意:

  • prefix和--openssldir =設置OpenSSL的輸出路徑。
  • shared = force來創建共享庫。
  • zlib =使用zlib庫啟用壓縮。

編譯過程完成後,使用以下命令安裝OpenSSL:

sudo make install

OpenSSL安裝在‘/usr/local/ssl‘目錄中。

接下來,我們將為OpenSSL配置共享庫。 新的OpenSSL二進制文件將從‘/usr/local/ssl/lib‘目錄加載庫文件。

轉到‘/etc/ld.so.conf.d‘目錄並創建新配置文件‘openssl-1.1.1b.conf‘:

cd /etc/ld.so.conf.d/
sudo vim openss1-1.1.1b.conf

粘貼openssl庫路徑目錄:

/usr/local/ssl/lib

現在使用以下命令重新加載動態鏈接:

sudo ldconfig -v

您將看到已加載‘/usr/local/ssl/lib‘目錄中的OpenSSL庫:

技術分享圖片

我們將使用新版本‘/usr/local/ssl/bin/openssl‘替換默認的openssl二進制文件‘/usr/bin/openssl或/bin/openssl‘。

備份二進制文件:

sudo mv /usr/bin/c_rehash /usr/bin/c_rehash.BEKUP
sudo mv /usr/bin/openssl /usr/bin/openssl.BEKUP

使用vim編輯‘/etc/environment‘文件:

sudo vim /etc/environment

添加新的OpenSSL二進制目錄:

PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/usr/local/ssl/bin"

重新加載環境文件並測試新更新的二進制PATH:

source /etc/environment
echo $PATH

查看安裝結果:

openssl version -a

應該出現如下結果:

技術分享圖片

這時openssl已經安裝成功了,但依然不能用於編程,只能用於終端。要想用於編程還需安裝libssl-dev

使用如下命令:

sudo apt-get install libssl-dev

安裝完畢後需按下圖所示編譯:

技術分享圖片

ubuntu18.04 安裝新版本openssl