如何通过apt-get降级openssl?


11

最近升级后,我遇到了一些SSL连接问题。我想暂时将openssl降级,以查看问题是否消失。

openssl已安装的当前版本为1.0.1-4ubuntu5.32,而先前版本为5.31。但是,当我尝试:

apt-get install openssl=1.0.1-4ubuntu5.31

我得到:

E: Version '1.0.1-4ubuntu5.31' for 'openssl' was not found

我以为这是安装特定版本的正确步骤?


您的Ubuntu版本是哪个版本?(例如14.04)
Byte Commander

1
我建议您根本不要这样做。从OpenSSL网站下载所需版本并进行编译(或从您信任的位置获取二进制文件,我认为OpenSSL不提供二进制文件)。
Alex

您有充分的理由为什么要对openssl进行降级?该版本修复了2个问题,一个不中断的低问题
Braiam 2015年

Answers:


7

我认为降级不会解决您的问题。但是你问:

该软件包openssl=1.0.1-4ubuntu5.31不再位于Precise存储库中,因为最新版本为1.0.1-4ubuntu5.32。但是该软件包仍可在“ Ubuntu安全团队”团队的PPA中获得。

对于版本 1.0.1-4ubuntu5.31

wget https://launchpad.net/~ubuntu-security/+archive/ubuntu/ppa/+build/7531893/+files/openssl_1.0.1-4ubuntu5.31_amd64.deb
sudo dpkg -i openssl_1.0.1-4ubuntu5.31_amd64.deb

但是我怀疑您必须降级此处列出的其他软件包。

降级是暂时的。之后

sudo apt-get upgrade

或者为了更好的感觉

sudo apt-get dist-upgrade

最新版本将再次安装。


4
这将使他的安装完全混乱。
2015年

@LittleByBlue假装你可以做很多。也许您应该更具体。可以安装或不安装该软件包。然后,简单的sudo apt-get upgrade将再次安装最新版本。
AB

我只是干了一个downgrade。这让我们进行了新的安装。...顺便说一句:sudo apt-get update绝对不会安装最新版本。sudo apt-get dist-upgrade可能,但是由于您dpkg强迫拿着旧包装,很可能apt会使您一团糟。
LittleByBlue

否。sudo apt-get dist-upgrade将安装新的主要版本。1.0.1-4ubuntu5.32不是新的主要版本。sudo apt-get upgrade我的评论中有一个。
AB

哎呀 抱歉,但dpkg的部分仍然正确。
2015年

4

根据https://launchpad.net/ubuntu/+source/openssl,在任何12.04(精确的穿山甲)存储库中都没有1.0.1-4ubuntu5.31该软件包的版本openssl

openssl截至今天(2015-12-30),适用于12.04 的唯一版本是:

  • 1.0.1-4ubuntu5.32来自main存储库updatessecurity渠道(2015-12-07)
  • 1.0.1-4ubuntu3来自main存储库的release频道(2012-04-19)

1.0.1-4ubuntu5.31您要降级的版本已被替换,并且不再可用。您只能降级到1.0.1-4ubuntu3,如果你不介意一个3岁的版本(这可能包含了一些严重的错误和安全漏洞!),或者找到一个PPA主持没有过时版本openssl


0

Apt只能安装存储库中实际存在的内容。超级种子包将从存储库中删除。Debian在snapshot.debian.org上以apt-get兼容的形式提供了其存储库的较旧版本,但我不知道Ubuntu的任何直接等效之处。

较早版本的ubuntu软件包可在启动板上下载。不幸的是,找到它们的过程并不是特别明显。据我所知,您将必须手动下载此类软件包并使用dpkg -i安装它们

如果转到启动板上的源包(例如https://launchpad.net/ubuntu/+source/openssl),则可以单击“查看完整的发布历史记录”。这将带您进入一个包含大量版本的页面。找到您想要的版本,它将带您到该版本的页面(例如https://launchpad.net/ubuntu/+source/openssl/1.0.1-4ubuntu5.31),在该页面上您将找到指向该版本的链接。针对不同体系结构的构建,这些页面将具有从源构建的软件包的下载链接。然后可以下载它们。

注意:在这种情况下,构建的链接将转到引用“安全团队PPA”的页面。之所以这样,是因为安全更新首先内置在PPA中,然后才迁移到主ubuntu存档中。

PS注意,“ openssl”二进制软件包包含工具。openssl库(我认为您真正关心的库)位于“ libssl1.0.0”包中。

PPS如果您不希望下次运行apt-get升级或类似的操作来再次升级软件包,则需要设置某种形式的保留或固定以停止它。


非常感谢你。很难找到libssl1.0.0_1.0.1-4ubuntu5.31_i386.deb(首先,它在launchpad.net/~ubuntu-security/+archive/ubuntu/ppa/+build/…),但是我最终找到了它。
埃里克(Eric)
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.