####1.查看版本 Ubuntu的版本是18.04。使用openssl version
命令查看openssl版本,能夠看到Ubuntu自帶了openssl-1.1.0版本,所以安裝新版本須要替換舊版本。 html
####2.下載openssl 打開openssl官網的下載頁面能夠看到最新的軟件包,下載openssl-1.1.1b.tar.gz。放到Ubuntu系統中。 編程
####3.解壓和安裝測試
使用命令tar -xzvf openssl-1.1.1b.tar.gz
解壓。.net
使用cd openssl-1.1.1b
進入目錄,而且使用./config
生成MakeFile,不加任何參數,默認的安裝位置爲:/usr/local/bin/openssl
。 3d
使用make
進行編譯code
不放心的話可使用make tset
檢查一下(可選步驟)htm
使用sudo make install
進行安裝,這裏必定要選擇root用戶的權限執行。blog
####4.備份與替換ssl
sudo mv /usr/bin/openssl /usr/bin/openssl.old //將舊版本的openssl進行備份 sudo ln -s /usr/local/bin/openssl /usr/bin/openssl //將新版本的openssl進行軟連接 cd /etc/ //進入etc目錄 su //下一步必定要切換到root用戶 echo "/usr/local/lib" >> ld.so.conf //將openssl的安裝路徑加入配置中 ldconfig //從新加載配置
使用openssl version
查看,已經安裝好。 get
若是須要更換版本的話(通常也不會),修改軟連接的名稱便可,參照:
sudo mv /usr/bin/openssl /usr/bin/openssl.new sudo mv /usr/bin/openssl.old /usr/bin/openssl
####5.安裝依賴庫
openssl安裝結束以後,須要安裝依賴庫纔可以進行編程,使用sudo apt-get install libssl-dev
安裝依賴庫,能夠看到同時也下載了libssl-doc。
因爲下載的依賴庫比較舊,咱們在前面安裝的openssl包中已經安裝了新版本的庫,所以須要將新舊庫進行替換,仍然要作上一步的緣由是儘可能把能自動配置安裝的東西安裝好,只須要手動替換新的東西。下面是新舊庫的對比(上面爲新):
依次使用如下命令進行替換:
sudo mv /usr/include/openssl /usr/include/openssl.old //將舊版本進行備份 sudo ln -s /usr/local/include/openssl /usr/include/openssl //將新版本進行軟連接
####6.測試 編寫一個測試代碼test_openssl.c:
#include <stdio.h> #include <openssl/evp.h> int main(){ OpenSSL_add_all_algorithms(); return 0; }
而後用下面的命令編譯: gcc -o to test_openssl.c -L/usr/local/openssl/lib -lssl -lcrypto -ldl -lpthread
執行./to;echo $?
,結果打印0。
####參考資料