我如何加密 Linux 内部磁盘,以便只能通过安装在 USB 驱动器上的独特系统(预装的 Debian bullseye)访问它?即使某人拥有加密密码和物理访问权限,如果没有 USB 驱动器保存其他系统,他也不应该能够访问它。
有没有办法做到这一点?
答案1
仅适用于安装在 USB 驱动器上的唯一系统(预装的 Debian bullseye),即使有人拥有加密密码
没有。在密码学中,加密的安全性始终由密钥的保密性提供,绝不不向某人提供解密软件。最后,这就是您所需要的:只有正确的软件才能解密您的驱动器。
然而,我认为稍微改一下你的问题可以让我们积极地回答这个问题。
我可以将解密密钥放在 USB 驱动器上,以便只有持有该 USB 驱动器的人才能解密吗?
是的,这非常标准。只需关注一有关如何将 LUKS 密钥放在外部 USB 驱动器上的许多指南,您就可以了。
另请注意,USB 驱动器上存储的任何内容都可以复制 - USB 驱动器只是“愚蠢”的存储。因此,如果您需要一些不可复制的东西,那么这也不是一个解决方案。
您将需要一个不可克隆的加密设备(即包含密钥本身的设备,并在内部进行解密,从不泄露密钥本身),这将允许您确保在不泄露密钥的情况下永远不会泄露解密访问权限卡片。 (除非您允许任何人更改驱动器加密的设置,因为那样他们就可以添加另一个密钥......但那是另一回事。)
然后,这变得有点特定于您要使用的设备类型(硝基键、TPM2 设备、FIDO 密钥...),但“LUKS + {设备名称}”将是要搜索的术语。