8.9. SSSD 选项控制 PAM 服务的 GSSAPI 身份验证

您可以在 /etc/sssd/sssd.conf 配置文件中使用以下选项来调整 SSSD 服务中的 GSSAPI 配置。

pam_gssapi_services
默认情况下,禁用带有 SSSD 的 GSSAPI 身份验证。您可以使用此选项来指定以逗号分隔的 PAM 服务的列表,这些服务允许使用 pam_sss_gss.gss.so PAM 模块来尝试 GSSAPI 身份验证。要明确禁用 GSSAPI 身份验证,请将这个选项设为 -
pam_gssapi_indicators_map

这个选项只适用于身份管理(IdM)域。使用此选项可以列出向服务授予 PAM 访问权限所需的Kerberos 身份验证指示符。对的格式必须是 <PAM_service>: _<required_authentication_indicator>_

有效的验证指示符为:

  • otp 用于双因素身份验证
  • radius 用于 RADIUS 身份验证
  • pkinit 用于PKINIT、智能卡或证书身份验证
  • hardened 用于强化的密码
pam_gssapi_check_upn
默认启用这个选项,并将其设为 true。如果启用了这个选项,SSSD 服务要求用户名与 Kerberos 凭证匹配。如果为 falsepam_ss_gss.so PAM 模块将验证能够获取所需服务票据的每个用户。

示例

以下选项为 sudosudo-i 服务启用 Kerberos 身份验证,要求 sudo 用户通过一次性密码进行身份验证,并且用户名必须与 Kerberos 主体匹配。由于这些设置位于 [pam] 部分中,因此适用于所有域:

[pam]
pam_gssapi_services = sudo, sudo-i
pam_gssapi_indicators_map = sudo:otp
pam_gssapi_check_upn = true

您还可以在单独的 [domain] 部分中设置这些选项,以覆盖 [pam] 部分中的任何全局值。以下选项将不同的 GSSAPI 设置应用到每个域:

对于 idm.example.com
  • sudosudo -i 服务启用 GSSAPI 身份验证。
  • 需要 sudo 命令的验证证书或智能卡验证器。
  • 需要 sudo -i 命令的一次性密码身份验证器.
  • 强制实施匹配用户名和 Kerberos 主体。
对于 ad.example.com
  • 仅为 sudo 服务启用 GSSAPI 身份验证。
  • 不强制匹配用户名和主体。
[domain/idm.example.com]
pam_gssapi_services = sudo, sudo-i
pam_gssapi_indicators_map = sudo:pkinit, sudo-i:otp
pam_gssapi_check_upn = true
...

[domain/ad.example.com]
pam_gssapi_services = sudo
pam_gssapi_check_upn = false
...