我们正在基于 Ubuntu 构建 docker 镜像xenial
(我知道 EOL 04/21),并且我们之前使用curl=7.47.0-1ubuntu2.14
和openssh-server=1:7.2p2-4ubuntu2.8
现在都不可用。
curl 软件包现在是curl=7.47.0-1ubuntu2.15
ssh-server openssh-server=1:7.2p2-4ubuntu2.10
。我想知道这是为什么,以及为什么原来的两个软件包刚刚变得不可用?
如果需要的话,我还能通过什么方式获得旧软件包?如果可以,在哪里?
答案1
让我们使用rmadison
包数据库查询和http://changelogs.ubuntu.com找出这些软件包被取代的原因。
我们先来看一下curl:
$ rmadison curl | grep xenial
curl | 7.47.0-1ubuntu2 | xenial | source, amd64, arm64, armhf, i386, powerpc, ppc64el, s390x
curl | 7.47.0-1ubuntu2.15 | xenial-security | source, amd64, arm64, armhf, i386, powerpc, ppc64el, s390x
curl | 7.47.0-1ubuntu2.15 | xenial-updates | source, amd64, arm64, armhf, i386, powerpc, ppc64el, s390x
啊哈:看到 -security 和 -updates 都在推送 2.15 版本了吗?这意味着它很可能是一个安全补丁。有关具体细节,让我们来看看 https://changelogs.ubuntu.com/changelogs/binary/c/curl/7.47.0-1ubuntu2.15/changelog
curl (7.47.0-1ubuntu2.15) xenial-security;紧急程度=中等
- 安全更新:curl 使用 -J 覆盖本地文件
- debian/patches/CVE-2020-8177.patch:如果在 src/tool_cb_hdr.c、src/tool_getparam.c 中使用了 -J,则 -i 不适用。
- CVE-2020-8177
——马克·德劳里埃[电子邮件保护] 2020 年 6 月 17 日星期三 09:21:55 -0400
现在我们来看看 openssh-server:
$ rmadison openssh-server | grep xenial
openssh-server | 1:7.2p2-4 | xenial | amd64, arm64, armhf, i386, powerpc, ppc64el, s390x
openssh-server | 1:7.2p2-4ubuntu2.8 | xenial-security | amd64, arm64, armhf, i386, powerpc, ppc64el, s390x
openssh-server | 1:7.2p2-4ubuntu2.10 | xenial-updates | amd64, arm64, armhf, i386, powerpc, ppc64el, s390x
看到 -updates 的版本更高了吗?这意味着新软件包很可能是一个错误修复程序,而不是安全补丁。让我们看看https://changelogs.ubuntu.com/changelogs/binary/o/openssh-server/1:7.2p2-4ubuntu2.10/changelog不得不说:
openssh(1:7.2p2-4ubuntu2.10)xenial;紧急程度=中等
- 修复 AuthorizedKeysCommand 产生大量输出时出现的死锁问题。(LP:#1877454)
- d/p/authkeyscommand-deadlock-01.patch:确保调用 fclose(2) 并将 NULL 分配给用于读取“Authorized{Keys,Principal}Command”指令的文件处理程序。
- d/p/authkeyscommand-deadlock-02.patch:使用“Authorized{Keys,Principal}Command”指向的命令生成的整个输出,以避免向进程发送 SIGPIPE。
—— 小塞尔吉奥·杜里根[电子邮件保护] 2020 年 5 月 13 日星期三 10:12:28 -0400
答案2
问:如果需要的话,我还能通过什么方式获得旧软件包?如果可以,在哪里可以找到?
答:这是一个有用的来源pkgs.org但使用时需您自担风险。