我之前问过这个问题:ldap.conf 中的多个绑定和基本 DN
由于前面的问题的答案是否定的,我正在寻找其他选项,例如拆分身份验证和 NSS 查找(如上面链接中提供的答案所建议的那样)。
身份验证和 NSS 查找如何分配到不同的服务器?
答案1
这很棘手。您需要一个执行 LDAP 身份验证的 PAM 模块,但是没有使用与 NSS 的 LDAP 插件相同的配置。这是有问题的,因为大多数发行版都假设您正在使用集成 LDAP 解决方案。
- PADL 的
pam_ldap
模块看起来可以配置为使用与 PADL 的 NSS LDAP 插件所使用的配置文件不同的配置文件。- 请注意,PADL 对 NSS 的 LDAP 实现不涉及类似的守护进程
nscld
,因此被认为是较差的。 - 如果您的发行版允许您同时使用 nslcd 和 PADL 的 pam_ldap,您可以尝试一下。(不太可能)这些软件包通常是互斥的,因为它们提供类似的功能。除非 NSS 插件单独打包,否则会发生文件冲突。(
libnss_ldap.so
)
- 请注意,PADL 对 NSS 的 LDAP 实现不涉及类似的守护进程
- 看看
pam_sssd
你的发行版是否支持它。我思考可能可以并排使用它们,但这依赖于sssd
并且我之前还没有设置过。 - 自定义编译 pam_ldap 实现并将其配置为使用单独的配置文件。这需要您自己处理。值得注意的是,PADL 的 pam_ldap 看起来可以与其 NSS 库分开构建。
- 如果您有 Kerberos 实现(即 Active Directory),您可以用来
pam_krb5.so
进行身份验证并将 NSS 指向 LDAP……但请注意,Kerberos 需要其自己的知识子集才能正确配置。
不管怎样,这都会很耗时。您最好在两个 LDAP 服务器之间复制必要的数据,以便将您的服务器指向单个服务器。