LUKS 与 FIDO2 *和* 密码

LUKS 与 FIDO2 *和* 密码

我刚刚完成了 LUKS 加密系统的设置,该系统使用 FIDO2 硬件令牌解锁,如下所示这篇博文。然而,在家里我通常会将硬件令牌插入,只有在旅行时才将其移除。因此,如果有人窃取笔记本电脑以及插入的硬件令牌,他们可以轻松启动笔记本电脑并解密磁盘。

为了解决这个问题,我想使用带有密码和硬件令牌的 2FA,但到目前为止,我只找到了使用密码 + HMAC-SHA1 的解决方案,即使用密码作为质询并将生成的哈希值存储为实际密码LUKS,所以这并不能推广到 FIDO2。有没有办法让 2FA 也与 FIDO2 一起使用?

答案1

Systemd 从版本 248 开始就有一个模块。它叫做systemd-cryptenroll。根据 FIDO2 棒的功能,2FA 可以使用多个选项:

  • --fido2-with-user-presence=true配置系统,因此您需要触摸 FIDO2 棒。
  • --fido2-with-client-pin=true配置系统,以便您需要 FIDO2 棒并输入 PIN。
  • --fido2-with-user-verification=true配置系统,以便您需要 FIDO2 棒并对系统进行身份验证。

一个示例调用是 systemd-cryptenroll --fido2-device=auto --fido2-with-user-verification=true /dev/sda3

但您应该尝试使用备用 USB 驱动器或映像。在将 FIDO2 密钥注册到真实设备之前,请确保一切正常。

将密钥注册到设备后,在fido2-device=auto中的设备选项中/etc/crypttab

可以看到多个例子这里

相关内容