为什么来自 raspbian 版本 10(“buster”)的所有(默认)证书都无法通过“openssl verify ...”测试?

为什么来自 raspbian 版本 10(“buster”)的所有(默认)证书都无法通过“openssl verify ...”测试?

...或者更具体地说:为什么一张证书包含“尚未生效”的日期戳?

这是我正在运行的版本:https://pastebin.com/2GrWJrzs

这是验证 /etc/ssl/certs/ 中的所有证书时的输出:https://pastebin.com/z9m8sh1F

我(主要)想知道的具体部分是这样的:

CN = raspberrypi
error 18 at 0 depth lookup: self signed certificate
CN = raspberrypi
error 9 at 0 depth lookup: certificate is not yet valid
error ./98a46391: verification failed

...还有这个:

CN = raspberrypi
error 18 at 0 depth lookup: self signed certificate
CN = raspberrypi
error 9 at 0 depth lookup: certificate is not yet valid
error ./ssl-cert-snakeoil.pem: verification failed

在我看来,无关紧要的旁注是:我正在检查 Xubuntu 20.04 安装的有效性,不是来自覆盆子本身(我还没有尝试过)。

我在 Raspberry 安装上所做的唯一修改是使用此补丁修补易受攻击的 OpenSSL 客户端(从源代码编译并通过 apt-get 下载源代码):https://github.com/openssl/openssl/commit/eb563247aef3e83dda7679c43f9649270462e5b1

...那么这里发生了什么事?

编辑一些附加信息:预装并且更新/升级(通过使用命令行“sudo apt-get update && sudo apt-get install openssl-client”)的 OpenSSL 客户端是 1.1.1d 版本,正如我在原始帖子中指出的那样,它容易受到 DOS 攻击(来源:https://www.openssl.org/news/vulnerabilities.html#2020-1967),这不算什么用户想要。

我计划在这个 raspberry pi(2017 年推出的 3B+ 型号)上运行一个小型网络服务器,通过使用 qemu-kvm 和大小优化的内核 +(共享)initramfs(只读标记)映像,利用 RAM 弹性外壳访问 root 帐户。因此,这是一种检查主机系统本身(即 raspbian 安装)有效性的小步骤,因为它处理来自客户端的连接,无论如何,这是该项目中最关键的一点。该系统不适用于 HTTPd(自写)上的 SSL/TLS,但另一方面适用于 SSH 连接:是的,我确实认为用户希望感到安全,即使他们在真实环境中的虚拟环境中运行。:)

PS:我是一名程序员,不是加密专家。:)

编辑(2020-08-20 23:42):真的吗?没人知道为什么,或者在什么情况下会发生这种情况?有人至少可以通过下载并验证 Raspbian 版本 10(“buster”)映像、将其写入 SD 卡并在已安装的 SD 卡“rootfs”分区中从主机系统运行以下命令来验证此信息:“openssl verify ./etc/ssl/certs/*”?此测试也应该可以通过安装映像本身然后通过使用循环设备在“etc/ssl/certs/”目录上运行“openssl verify”来实现。

无论如何,任何建议都会得到极大的尊重和忠诚。如果这个问题得不到解决,我很快就会清除大部分树莓派 + 我所有其他系统。

(估计浪费的时间约为 3-40,取决于下载速度 + 刻录/写入 SD 卡,其余时间实际上估计为 1 分钟左右)。

相关内容