将 SSSD 与多个 LDAP 服务器/域结合使用

将 SSSD 与多个 LDAP 服务器/域结合使用

我需要使用两个单独的 LDAP 服务器对用户进行身份验证。已为 SSSD 配置了两个域,但似乎只有一个域有效。我运行了该命令authconfig --enablemkhomedir --enablesssd --enablesssdauth --updateall并更新了 sssd.conf,如下所示:

[sssd]
domains = domain1, domain2
services = nss, pam
config_file_version = 2

[nss]
filter_groups = root
filter_users = root

[pam]
offline_credentials_expiration = 0


[domain/domain1]

auth_provider = ldap
id_provider = ldap

ldap_uri = ldaps://domain1
ldap_tls_reqcert = allow


[domain/domain2]

auth_provider = ldap
id_provider = ldap

ldap_uri = ldaps://domain2
ldap_tls_reqcert = allow

结果是识别了来自域 2 的用户 (user2),但是找不到来自域 1 的用户 (user1):

# id user2
uid=10(user2) gid=10(admin) groups=10(admin)

# id user1
id: 'user1': no such user

有什么办法可以让 domain1 正常工作吗?当我们回到 nslcd.conf 时,该服务器/身份验证工作正常,但当然不能使用带有 nslcd 的两个服务器,只有定义的第一个服务器才能工作。在涉及这些事情时,我是个新手,所有 nscd、nslcd、nsswitch.conf、authconfig 等都变得相当混乱。我没有注意到 /var/log/messages 或 SSSD 日志中有任何错误。

答案1

问题是我们需要指定一些证书和密钥信息,即ldap_tls_cacertldap_tls_certldap_tls_key定义这些后,domain1就可以访问了。

相关内容