如何使用密钥文件进行 ZFS 整盘加密?

Rob*_*ans 6 zfs bsd encryption key-authentication

有没有人有使用密钥文件的工作实现,最好在 SD 卡上,而不是 ZFS 的提示?我知道如何使用 linux LVM/LUKS 做到这一点。在我看来,FreeBSD 全盘加密解决方案更安全,但我真的很想使用密钥文件而不是在启动时收到提示。

我找不到用 google-magic 做到这一点的方法。

bah*_*mat 9

2020 年 1 月更新

这个问题在 2011 年得到了回答,我给出的答案专门针对当代 Solaris 11 行为。这不适用于 Linux 上的 OpenZFS、illumos 或 ZFS

话虽如此,对于后人来说,最初的答案仍然存在。


您必须先创建您的密钥。ZFS 支持两种类型的基于文件的密钥。十六进制和原始。为此,您可以使用它openssl来生成密钥。

openssl rand -out /media/stick/key 16
Run Code Online (Sandbox Code Playgroud)

所述16创建了一个16字节(即,128位)键。对于 192 位或 256 位密钥2432分别使用或。

然后像往常一样创建数据集,指定键。

zfs create -o encryption=on -o keysource=raw,file:///media/stick/key rpool/encrypted
Run Code Online (Sandbox Code Playgroud)

您还可以使用的-hex标志openssl rand,并keysource=hex在文件中人类可读的十六进制值。