在 Ubuntu 12.04 上升级 OpenSSL

在 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 的路径。(因此它顽固地继续使用较旧版本并且无法工作!)

提前致谢。任何帮助都将不胜感激。

答案1

注意:这个问题和答案早于 OpenSSL 漏洞 Heartbleed。

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

您可能希望通过运行以下命令来清理房间:

apt-get autoremove && apt-get autoclean

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

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

答案2

安装开发包!

在撰写本文时,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

答案3

libssl尝试从下载最新版本opensslhttp://archive.ubuntu.com/ubuntu/pool/main/o/openssl/并安装两者。

警告:这将破坏 OpenSSL 的自动安全更新。

相关内容