IT袋

当前位置:主页 > 经验教程 > 系统教程 >

如何在Fedora

如何在Fedora Linux上使用FIDO U2F安全密钥(2)

时间:2023-09-17 19:27:27 来源:IT袋 作者:苏晓敏
导读:如何在Fedora,FIDO2 密钥还支持 FIDO U2F 协议(现已更名为 CTAP1)。该协议旨在提供第二或多因素(但非无密码)认证。Linux 的 PAM 认证系统也可以配置为使用 U2F 协议。虽

如何在Fedora

FIDO2 密钥还支持 FIDO U2F 协议(现已更名为 CTAP1)。该协议旨在提供第二或多因素(但非无密码)认证。Linux 的 PAM 认证系统也可以配置为使用 U2F 协议。虽然 FIDO U2F 不是为无密码认证设计的,但 U2F PAM 模块允许无密码认证。

安全影响

FIDO2 / U2F 通过将安全密钥与用户账户绑定来工作。大多数密钥默认启用/使用基本的存在性检查。它们通常通过点亮并提示你触摸密钥来进行存在性检查。FIDO2 PIN 是可选的,默认情况下未设置。当密钥用于登录 Linux 帐户或用于使用 sudo 时,只需确保设备和密钥物理上存在即可。FIDO2 PIN 是一个重要的附加验证步骤,用于确保只有你才能使用密钥进行身份验证。

等一下!现在我还要记住额外的 PIN 吗?这不就是一个更短的密码吗?

—— 担心的读者

FIDO2 PIN 不是密码,它是一个简短、容易记住的短语。这并不是一个问题,因为:

  1. 你需要物理访问密钥需要知道 PIN。
  2. 输入 PIN 错误达到八次会使密钥失效,这使得暴力破解变得困难。

相反地,现在你可以使用存储在密码管理器中的安全密码,而无需记住它。

谷歌在 2016 年进行的一项案例研究,题为 《安全密钥:现代网络的实用密码学第二因素》,显示了安全密钥有效地保护用户免受密码重用、钓鱼和中间人攻击的影响。

使用 PAM 进行用户认证

本地系统认证使用 可插拔认证模块(PAM)。U2F 设备的 PAM 模块(因此进行认证)是pam_u2f。你的密钥是否支持 FIDO2 或 FIDO U2F 取决于其固件版本和硬件型号。

设置如下:

  1. 安装 PAM 模块。
  2. 将密钥注册到你的用户账户上。
  3. 使用authselect在 PAM 中激活智能卡支持。

authselect是一个用于配置带有可重现配置文件的 PAM 的工具。使用authselect的配置文件可以避免手动修改/etc/pam.d目录下的配置文件。

依赖项

所需的软件包可在官方仓库中获取。

[…]$ sudo dnf install pam-u2f pamu2fcfg fido2-tools

在密钥上设置 FIDO2 PIN

FIDO2 标准定义了一种用于访问保护的可选 PIN。如果 PIN 丢失或失效,没有 PUK 或其他恢复方式,请确保你有一种备用的身份验证方法。如果通过连续输入无效的 PIN 使 PIN 失效,恢复的唯一方法是重置密钥。然而,重置密钥会删除其所有凭据,并将其与以前注册的所有服务断开连接。

fido2-tools包含一个用于设置密钥的 FIDO2 PIN 的工具:fido2-token。使用fido2-token -L获取当前连接的 FIDO2 设备列表,并使用fido2-token -C设置一个新的 PIN:

相关阅读