Linux 全盘加密是否可以提供像 FileVault(macOS)或 BitLocker(Windows)一样的无缝用户体验?

Linux 全盘加密是否可以提供像 FileVault(macOS)或 BitLocker(Windows)一样的无缝用户体验?

我找到了一些适用于 Linux 操作系统的全盘加密 (FDE) 解决方案。具体来说,我研究了适用于 Linux Mint 或 Ubuntu 的解决方案,因为我倾向于使用这两种系统。但我确信这个问题也适用于其他发行版。

我正在寻找一种全磁盘解决方案,以便为用户体验提供与 macOS 上的 FileVault 一样无缝的体验。

FileVault的体验如下:

  • FileVault 加密整个磁盘。只需在“安全”首选项面板中单击一下即可完成此操作。
  • FV 提供了一个预启动环境,可以解锁 Mac 上的可信平台模块(它实际上可能是 TPM,但我不这么认为),它可以锁定实际执行磁盘加密的密钥
  • 登录后,您实际上登录的是预启动环境。这样,FV 的密钥就会被解锁。只有这样,操作系统磁盘才会被解锁。
  • OS 用户的密码与 FV 密码同步;对于最终用户来说,这一切都是无缝的(除了少数用例)

在 Windows 上,BitLocker 与 TPM 的工作方式与上面描述的 FileVault 非常相似。

然而,在 Linux 上,即使安装了 TPM 工具,我遇到的每个全盘加密方案都需要启动密码除了登录用户名和密码之外。

例如,这个(写得非常好且详细的)Linux Mint 示例:

https://community.linuxmint.com/tutorial/view/2026

在这个例子中(顺便说一下,这就像一百万个容易出错的 CLI 步骤),FDE 已经完成,但是您可以看到用户必须在启动时在 Grub 提示符中输入解密密码。

有谁解决过 Linux 的这个问题吗?

要求

  • 用户体验是这样的,用户只需输入一次登录名和密码
  • 全盘加密(包括启动分区)
  • (很高兴有)设置很容易,或者至少是 Simple(TM)

答案1

您无法加密启动分区,因为您需要从该分区启动预启动环境。加密启动分区没有任何帮助。

许多标准 Linux 安装(包括 Ubuntu)允许您在启动时选择“全盘加密”,并且不需要在 GUI 中输入 grub 密码。它通过从 RAM 磁盘加载“预启动”环境并使用此环境和 LUKS 解锁分区来实现这一点。

一旦启动,通常还有第二步,即使用密码以特定用户身份登录,但是你可以设置自动登录 GUI。当然,如果您离开计算机并将其留在计算机中,您的系统将处于敞开状态。

显然(但我没有测试过),Ubuntu支持 TPM 2.0原生。(我承认我对自动配置功能持怀疑态度,但我还没有尝试过)

答案2

即使在 Windows 上,系统分区(由 Microsoft 命名,用户看不到。使用磁盘管理器查看)也未加密。必须有一个未加密的部分来加载初始启动文件。对于 linux,此分区为 /boot

有一个 github 项目可以满足这个愿望: https://github.com/fox-it/linux-luks-tpm-boot

相关内容