我正在尝试在我的 ubuntu 客户端上启用 LDAP 身份验证。到目前为止,我尝试了以下说明: https ://www.tecmint.com/configure-ldap-client-to-connect-external-authentication/
https://www.howtoforge.com/linux_ldap_authentication
https://wiki.archlinux.org/index.php/LDAP_authentication#Client_Setup
https://computingforgeeks.com/how-to-configure-ubuntu-18-04-ubuntu-16-04-lts-as-ldap-client/
并且由于它不起作用,我遇到了一些解决方案,例如根据16.04 服务器将libnss-ldap更改为libnss-ldapd :启用 LDAP 身份验证会导致 systemd-logind 失败
在某个时候,我开始将所有这些解决方案混合在一起等等,但到目前为止还没有运气。我可以在客户端机器上运行ldapsearch并在我的 ldap 服务器中获取用户的所有信息,但是在运行时我看不到passwd文件中的任何 ldap 用户getent passwd
,因此我无法使用我的任何 ldap 用户登录到客户端机器。在我的 passwd 文件中添加的唯一新用户是 nslcd,其描述为“名称服务 LDAP 连接守护程序”。因此,如果有人可以帮助我解决这个问题,我将不胜感激。
我应该让你知道我的 openldap 在 docker 容器内的另一台机器上运行。到目前为止,我设法成功地将它连接起来,以便进行 keycloak、bookstack 和lime 调查。所以它实际上已经使用了相当长的一段时间了。
非常感谢您提前
当您运行 getent passwd 命令或尝试使用 ldap 用户登录时,您是否遇到任何特定错误?此时,您已对配置进行了所有编辑,如果您已遵循这些教程中的每一个,则最好重新设置客户端配置以重新开始。我确实注意到您列出的其中一个教程的 ldapi uri 格式为 ldapi:///domain,而它很可能应该更像 ldapi://domain:389/ 在我的情况下,我已经成功使用 ldap:/ /domainOrIP:389/ 作为 URI 的格式。此外,默认客户端配置将指向 cn=manager dn=example dn=net。可能很容易忽略不一致,例如您的 openldap 服务器的域是 dn=com 或 cn=admin。要重新开始您的客户端配置,您可以运行类似 sudo apt -y remove --purge libnss-ldap libpam-ldap ldap-utils 然后重新安装并通过运行 sudo apt -y install libnss-ldap libpam- 开始新配置ldap ldap-utils 在终端中。极客指令的计算似乎与我设置客户端配置的过程相似,但欢迎您尝试我的指令。
https://tux-techie.com/2020/10/13/configuring-ubuntu-linux-to-authenticate-to-an-ldap-server/
我希望那里有帮助。让我们随时了解您的进展。