Debian 9 / 旧版本的 openssl

Debian 9 / 旧版本的 openssl

我需要在 debian 9 (stretch) 上安装 openssl 1.0。当我运行 apt-get install openssl 时,默认安装版本 1.1。

如何更改存储库以安装旧版本的 openssl?

答案1

正如其他人提到的,如果您可以使用 OpenSSL 1.1 来代替,那就最好了。

但是,如果您确实需要 OpenSSL 1.0,答案取决于您的具体要求。如果您只需要 OpenSSL 库,并且版本 1.0.2 合适,那么您可以libssl1.0.2从 Debian 9 安装并完成它。

如果您需要 1.0 版本openssl工具的 1.0 版本或该库的 1.0.1 版本,Debian 9 上最简单的选择是从 Debian 8 安装它(该版本仍然会收到安全更新,并且会持续到 2020 年)。为此,请创建一个名为的文件,/etc/apt/sources.list.d/jessie.list其中包含以下内容:

deb http://httpredir.debian.org/debian jessie main contrib non-free
deb-src http://httpredir.debian.org/debian jessie main contrib non-free

deb http://security.debian.org/ jessie/updates main contrib non-free
deb-src http://security.debian.org/ jessie/updates main contrib non-free

然后运行sudo apt updateapt install openssl/jessie然后为openssl工具或apt install libssl1.0.0库, 和。

与某些人的说法相反,由于包管理和正确定义的包依赖关系,您不会因为安装这些包而冒破坏系统的风险。

答案2

我不知道您是否会找到旧版本的软件,例如openssl,对于您的发行版的新版本,因为大多数时候它没有意义,因为新版本应该修复问题等(当然它们是例外) )。或者,为什么不直接使用 Debian 8?

但看看https://serverfault.com/questions/108080/ubuntu-debian-show-list-of-available-versions-of-a-specific-package以及apt-show-versionsrmadison工具。

因此,首先您必须真正确保您绝对需要旧版本。您没有详细说明您的用例,因此很难提供好的建议。

您始终可以做的就是从源代码本身进行安装......但这不是一个简单的任务。编译本身可能没什么大不了的,但是您需要将其与系统部分分开安装,例如/usr/local通常被其他应用程序用作库的东西,您需要重新编译其他应用程序,以确保使用您的本地版本而不是系统版本。如果您碰巧找到适合您需要的旧软件包,您也会遇到类似的问题:系统上依赖的其他应用程序openssl可能不再工作,并且您系统上的软件列表可能已损坏。

简而言之,请绝对确定您需要这样做!

如果您从未在 Linux 系统上编译过任何东西(在所有发行版中几乎都是相同的),那么openssl它可能不是第一次尝试的最佳选择。

https://www.openssl.org/source/并下载您需要的版本(我确实希望您在这里找到它,因为否则您将遇到更大的问题)。

与其他软件一样,从README它开始基本上会告诉您阅读INSTALL.归结为:

 $ ./config
 $ make
 $ make test
 $ make install

但请确保在执行任何操作之前阅读该文件,因为它包含重要信息,例如软件的安装位置。

然后你需要能够在你需要的任何应用程序中使用结果......但是你没有给出你的问题的上下文,所以我无法帮助你。通常,您需要使用标志重新编译其他软件,例如--with-openssl=DIRECTORY强制其使用您的版本而不是正常的系统版本。

相关内容