crypttab 和 VeraCrypt

ano*_*non 10 cryptsetup veracrypt

我双启动 Fedora 和 Windows Vista 并希望它们共享一个分区,以便我可以在 Linux 和 Windows 中处理相同的文件,并且我需要对所有内容进行加密。

由于 TrueCrypt 已过时,我使用VeraCrypt加密了共享驱动器。Windows 可以在登录时轻松安装卷。

我试图在 Linux 中做同样的事情,但没有运气,因为我不知道如何使用crypttabveracrypt选项,或者即使它有一个选项。 cryptsetup工作正常,因为只需要添加--veracrypt选项,但crypttab似乎没有。

cryptsetup --veracrypt open --type tcrypt /dev/sdX veracrypt-volume
Run Code Online (Sandbox Code Playgroud)

如何挂载 VeraCrypt 卷crypttab?还有可能吗?

thi*_*rty 7

我有同样的问题!原来 systemd 缺少这样的选项,所以我自己实现了它。它包含在 systemd 232 或更高版本中。(您还需要 cryptsetup 1.67 或更高版本才能获得实际的加密支持,但听起来您已经有了,因为手动挂载有效。)

新的 crypttab 选项是tcrypt-veracrypt; 这意味着tcrypt你不需要单独指定。例如:

#Volume name  Device path     Crypto key file     Mounting options  
 data         /dev/sda7       /etc/volume.passwd  noauto,tcrypt-veracrypt
Run Code Online (Sandbox Code Playgroud)

当然,您需要将您的加密密钥(没有换行符)放在/etc/volume.passwd. 另请注意,如果您尝试解密系统分区,则需要指明使用该tcrypt-system选项,因为如果没有它,它将无法检测到不同的格式。这是一个例子。我还在UUID=此处演示了音量说明符的使用。

 data         UUID=your-uuid  /etc/volume.passwd  tcrypt-veracrypt,tcrypt-system
Run Code Online (Sandbox Code Playgroud)

有关更多信息,请参阅我提出的拉取请求tcrypt-veracrypt

  • 我无法按照 Debian 10 Buster 上的描述进行此操作。由于某种原因,密码文件没有被“cryptdisks_start”正确处理(确认它末尾没有新行)。它最终使用选项“tcrypt,veracrypt,keyscript=/bin/cat,noearly”。不知道为什么通过“/bin/cat”传递密码会产生影响,也不知道为什么“tcryrpt,veracrypt”比“tcrypt-veracrypt”更有效。 (4认同)
  • 然后映射的设备将作为 `/dev/mapper/data` 可用,然后你可以将其包含在你的 `/etc/fstab` 或 `mkdir /media/tcdata && mount /dev/mapper/data /media/tcdata` 中 (2认同)