7.4. 可信域的 Kerberos FAST

Kerberos 灵活身份验证安全隧道(FAST)也称为活动目录(AD)环境中的 Kerberos armoring。Kerberos FAST 为客户端与密钥分发中心(KDC)之间的 Kerberos 通信提供额外的安全层。在 IdM 中,KDC 运行在 IdM 服务器上,FAST 会被默认启用。IdM 中的双因素身份验证(2FA)也需要启用 FAST。

在 AD 中,AD 域控制器(DC)上默认禁用 Kerberos armoring。您可以在 Tools>Group Policy Management>Default Domain Controller Policy 的域控制器中启用它:

  • 右键点 Default Domain Controller Policy,再选择 编辑。进入到 Computer Configuration>Policies>Administrative Templates>System>KDC,双击 KDC support for claims, compound authentication, and Kerberos armoring

为声明启用 KDC 支持后,策略设置允许以下选项:

  • "不支持"
  • "支持"
  • "始终提供声明"
  • "未发送更多身份验证请求"

Kerberos FAST 在 IdM 客户端的 Kerberos 客户端库中实现。您可以将 IdM 客户端配置为对所有发布 FAST 的可信域使用 FAST 或根本不使用 Kerberos FAST 。如果您在可信 AD 林中启用了 Kerberos armoring,则 IdM 客户端默认使用 Kerberos FAST。FAST 通过密钥的帮助建立起一个安全隧道。为了保护与可信域的域控制器的连接,Kerberos FAST 必须从可信域获得跨域 Ticket Granting Ticket Granting Ticket (TGT),因为这些密钥仅在 Kerberos 域中有效。Kerberos FAST 使用 IdM 客户端的 Kerberos 主机密钥来在 IdM 服务器的帮助下请求跨领域的 TGT。这只在 AD 林信任 IdM 域时才可以正常工作。这意味着需要双向信任。

如果 AD 策略需要强制使用 Kerberos FAST,则需要在 IdM 域和 AD 林间建立双向信任。您必须在连接建立之前规划此项,因为 IdM 和 AD 必须有方向和信任类型的记录。

如果您已建立单向信任,请运行 ipa trust-add …​ --two-way=true 命令来删除现有信任协议并创建双向信任。这需要使用管理凭据。当 IdM 尝试从 AD 端删除现有信任协议,因此需要 AD 访问的管理员权限。如果您使用共享的机密而不是 AD 管理帐户建立原始信任,那么它会以双向方式重新创建信任,并只在 IdM 一侧更改可信的域对象。Windows 管理员必须使用 Windows UI 重复相同的步骤,才能选择双向信任并使用同一共享 secret 来重新创建信任。

如果无法使用双向信任,则必须在所有 IdM 客户端上禁用 Kerberos FAST。来自可信 AD 林的用户可以通过密码或直接智能卡进行身份验证。要禁用 Kerberos FAST,请在 [domain] 部分的 sssd.conf 文件中添加以下设置:

krb5_use_fast = never

请注意,当验证是基于 ssh-keys、GSSAPI 身份验证或 使用远程 Windows 客户端的智能卡进行 ssh 时,您不需要使用此选项。这些方法不使用 Kerberos FAST,因为 IdM 客户端不必与 DC 通信。另外,在 IdM 客户端上禁用 FAST 后,双因素验证 IdM 功能也不可用。