分离的 LUKS 标头有哪些限制

分离的 LUKS 标头有哪些限制

我试图了解 LUKS 分离标头与其各自的块设备之间的关系。据我了解,使用分离标头“格式化”实际上并不会更改其各自块设备的内容,只有当您开始写入打开的 ( cryptsetup luksOpen) 分区时才会发生这种情况。

所以我想知道:

  • 单个加密分区可以有两个独立的标头吗?例如,如果我有一个可移动驱动器间歇性地插入两台不同的计算机,那么每台计算机是否都可以拥有自己独立的标头副本,而无需重新同步标头的两个副本。
  • 单个分离接头可以用于两个单独的驱动器吗?例如,如果我有两个加密的备份驱动器,是否可以将单个标头用于这两个驱动器,或者标头是否以某种方式绑定到分区?

答案1

这是可能的。如果您阅读了 cryptsetup 手册和常见问题解答,您会发现不鼓励这样做。但无论如何,没有什么可以阻止你这样做。

您可以根据需要使用任意多个标头副本,甚至可以修改这些副本,例如,一个副本使用密码短语 A,另一个副本使用密码短语 B - 或者一个副本可以采用 LUKS1 格式,而另一个副本采用 LUKS2 格式。只要加密本身保持不变,一切都会发生。缺点是,如果您无法控制所有 LUKS 标头副本,则无法撤销密码。

您可以对任意数量的驱动器使用相同的标头,并且它可以工作,但缺点是,它们都将使用完全相同的主密钥进行加密。更常见的是使用不同的标头(不同的主密钥),可能具有相同的密码,例如systemd支持在启动时重新使用相同的密码来打开许多独立的 LUKS 容器。

LUKS 标头只是存储实际加密密钥(LUKS 称之为“主密钥”)和相关元数据(例如要使用的密码和数据偏移量)的一种奇特方式。它不记录分区名称或大小,因此没有太多限制。 LVM 或 mdadm 元数据对这些事情更加挑剔。

相关内容