Dropbear 已停止接受我的 SSH 密钥

Dropbear 已停止接受我的 SSH 密钥

我有两个 Raspberry Pi,都运行 Raspbian Buster,都设置了全磁盘加密,使用 dropbear(版本 2018.76-5)来支持远程解锁磁盘加密。多年来,这一直运行良好。然而,最近 dropbear 停止接受我的 SSH 密钥,我现在得到

root@<address>: Permission denied (publickey).

当我尝试远程解锁时。我没有进行任何配置更改。initramfs 中 authorized_keys 文件的内容是正确的。我能找到的最新成功远程解锁证据是 3 月 10 日,适用于两个 RPi。非常奇怪的是,initramfs 的修改日期确认自上次成功远程解锁以来,initramfs 文件尚未被修改!具体来说,在我现在正在使用的 RPi 上,3 月 10 日,在内核更新后,initramfs 于 09:38 重新生成(此后没有被修改),RPi 于 09:40 重新启动,并于 09:44 成功远程解锁。

编辑:我现在已经尝试生成新的 DSA、ECDSA、ED25519、RSA 2048 位、RSA 3072 位和 RSA 4096 位 SSH 密钥,并将它们全部添加到 authorized_keys 文件中,然后重新生成 initramfs。这样做之后,我能够使用 ECDSA 密钥进行连接,但不能使用任何其他密钥。以前,我在一个 RPi 上使用 RSA 2048 位密钥,在另一个 RPi 上使用 RSA 3072 位密钥。所以,从我的经验来看,Dropbear 似乎在 2022 年 3 月 10 日至 2022 年 6 月 12 日(我第一次发现无法连接时)之间的某个时间点停止接受 RSA 2048 和 3072 位密钥(可能还有其他一些类型),而没有对 dropbear 二进制文件或配置进行任何更新?!?

答案1

Dropbear 是 OpenSSH 的一个实现。在 Bullseye 更新后,我遇到了类似的问题,OpenSSH(我认为是版本 7 及以上)停止支持 RSA 密钥类型。我不得不将密钥类型更改为更现代的密码。我迁移到了 Ed25519,现在它可以正常工作了。虽然我在我的例子中没有使用 Dropbear,但我怀疑这是你的情况的根本原因。

相关内容