當前位置: 首頁>>技術教程>>正文


在 Ubuntu 12.04 上升級 OpenSSL

,

問題描述

我想在 Ubuntu 12.04 係統上將 OpenSSL 升級到 1.0.1。我注意到 apt-get upgrade openssl 最終不會升級 OpenSSL。 Ubuntu 是否支持較新的 OpenSSL?

我也嘗試過從源代碼編譯。編譯工作,但我不知道如何用較新的 (1.0.1) 替換 內置 OpenSSL (1.0.0)。從源代碼編譯使我可以將新版本與舊版本一起使用 – 我需要用新版本替換舊版本。我之所以需要這種需求,是因為最新的 FreeSWITCH 源代碼與 OpenSSL 1.0.0 不兼容,而且 FreeSWITCH 中似乎沒有 make 配置將其指向新 OpenSSL 的路徑。 (所以它頑固地繼續使用舊版本並且無法工作!)

謝謝是提前。任何幫助將不勝感激。

最佳思路

注意:這個問題和答案早於 OpenSSL 錯誤 Heartbleed。

首先你需要完全刪除舊的安裝:\n(這會破壞大多數係統!小心!大多數人會後悔)\n apt-get purge openssl

你可能想通過運行來打掃房子:

apt-get autoremove && apt-get autoclean

然後你應該下載並編譯你想要的版本( full list )

wget https://www.openssl.org/source/openssl-1.0.1g.tar.gz

次佳思路

安裝開發包!

在撰寫本文時,1.0.1 是 Ubuntu 12.04 的一部分。但是,為了對其進行編譯,您還必須安裝開發包( libssl-dev )!

首先更新軟件包列表

sudo apt-get update

然後安裝開發包並一次性升級庫本身:

sudo apt-get install openssl libssl-dev

您可以在這裏看到 1.0.1 是 12.04 的一部分:http://packages.ubuntu.com/precise-updates/openssl

如果您的係統仍然安裝 1.0.0,則您設置了一些其他存儲庫,或者您的包管理中的其他內容被更改以導致此錯誤。在這種情況下,仍然通過運行檢查導致它固定在 1.0.0 上的原因

apt-cache policy openssl libssl-dev

第三種思路

嘗試從 http://archive.ubuntu.com/ubuntu/pool/main/o/openssl/ 下載最新版本的 libsslopenssl 並安裝兩者。

警告:這將破壞 OpenSSL 的自動安全更新。

參考資料

本文由Ubuntu問答整理, 博文地址: https://ubuntuqa.com/zh-tw/article/12987.html,未經允許,請勿轉載。