在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,因为最新的FreeSWITCH源与OpenSSL 1.0.0不兼容,并且FreeSWITCH中似乎没有make配置指向新OpenSSL的路径。 (所以它固执地继续使用旧版本并且无法工作!)

谢谢你的提前。 任何帮助将不胜感激。

注意:这个问题和答案早于OpenSSL错误,Heartbleed。

首先你需要完全删除旧的安装:(这将打破大多数系统!小心!大多数人会后悔这个)apt-get purge openssl

你可能想通过运行来清理房子:

 apt-get autoremove && apt-get autoclean 

然后你应该下载并编译你想要的版本( 完整列表 )

 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的自动安全更新。