在 Linux 中使用 TPM

信息安全 加密 linux 磁盘加密 可信计算
2021-09-07 21:27:49

我需要一台包含我们的 java 应用程序的公司笔记本电脑 (Dell e6540) 用于评估目的。出于这个原因,我想确保 HDD 受到保护,客户(或其他任何人)能够从笔记本电脑上取下我们的 Java 应用程序并查看源代码。我们已经采取了许多必要的预防措施,并强化了操作系统,使其进入了自定义的“类似信息亭”的模式。

我的最后一个障碍是获取存储在戴尔笔记本电脑 TPM 上的磁盘加密密钥。这样我就可以在不向客户提供密码/密钥的情况下拥有加密磁盘。到目前为止,在 Ubuntu 12 下,这已被证明是一场噩梦。我找到的所有文档都至少有 4-5 年的历史。使用 LUKS 与 TPM-LUKS 和 Trousers 的交互在较新的 linux 版本上不稳定(充其量)

要求是磁盘加密(分区或 FDE),无需向用户提供密码。有人知道Linux上的解决方案吗?这在使用 BitLocker 的 Windows 上是无缝的。我提供了 SecureDoc 作为解决方案,但他们认为他们的产品并不合适。

2个回答

我怀疑TPM-LUKS是您正在寻找的。

它使用广泛支持的 luks 加密卷,并将密码/密钥存储在 TPM (NVRAM) 中。

可以根据正确的引导顺序(BIOS、PCI ROM、MBR、引导加载程序等)密封密钥(可信计算术语)。换句话说,密钥来自运行环境。如果发生变化,密钥将不一样,因此卷的解密不起作用。

这是一个安全问题,因为您确实需要 DRM 解决方案。让我们忽略这样一个事实,即如果他们尝试,他们会击败您使用的任何东西。;) 你只是想让偷你的东西来阻止临时攻击者变得很痛苦。这是为您提供的基本解决方案:

  1. 在 BIOS 中禁用 USB、网络等,以防止通过这些进行注入或泄漏。只需保留足够的设备,让他们在本地与应用程序交互。如果它是一个联网的应用程序,请使用板载客户端+服务器进行模拟并禁用网络硬件。并对 BIOS 进行密码锁定更改。

  2. 如果难以处理开放的内容,请使用易于使用的商业 FDE 产品,例如 BestCrypt 或 PGP Whole Disk Encryption。两者都支持 TPM。

  3. 系统应该自动启动到只能演示软件的有限权限帐户。你似乎已经涵盖了这部分。

  4. 在演示期间使用 RAMdisk 或低权限临时文件夹来满足任何持久存储应用程序的需求。