如何将Ubuntu配置为LDAP客户端?


Answers:


16

这篇文章的内容基于本指南。在12.04中应该可以正常工作。

1)发出以下命令:

sudo apt-get install ldap-utils libpam-ldap libnss-ldap nslcd

注意:在安装上述软件包期间,将弹出一个对话框,询问一些LDAP配置。确保为您的LDAP配置输入正确的值。

2)编辑/etc/nsswitch.conf(通过sudo)。在这些行上附加“ ldap”:

#Original file looks like this 
passwd: compat 
group : compat  
shadow: compat 

#After appending "ldap" lines look like these
passwd: compat ldap
group : compat ldap  
shadow: compat ldap 

3)注释掉该行rootbinddn,我不确定为什么需要这样做。

4)编辑/etc/pam.d/login(通过sudo)并粘贴:

session required pam_mkhomedir.so skel=/etc/skel umask=0022 

5)编辑/etc/pam.d/lightdm(通过sudo)并粘贴:

session required pam_mkhomedir.so skel=/etc/skel umask=0022 

6)发出以下命令:

sudo update-rc.d nslcd enable

重新启动后,您应该能够以LDAP用户身份登录。如果不重新启动计算机,则必须使用以下命令重新启动nscd:

/etc/init.d/nscd restart

可能的问题和解决方案:

  • 以LDAP用户身份登录需要花费很长时间(分钟):nss-lap很可能在查找用户组时遇到问题。确保该用户位于本地识别的组中,或者该用户位于LDAP中定义的组中。如果该组在LDAP中定义,请确保它是真实的POSIX组。
  • 始终检查/var/log/auth.log日志文件。如果看到“无法联系ldap服务器”,请检查LDAP服务器是否可访问并且端口是否打开。
  • 尝试按名称ping LDAP服务器
  • 尝试检查LDAP端口是否打开:
    • LDAP可以侦听不同的端口,但通常可以在389和636上找到
    • 您可以使用telnet来检查端口是否打开:
    • telnet 389 要么 telnet 636
    • 如果您在控制台上看到任何字符,则说明该端口已打开,并且LDAP服务器应该正在运行。
    • 如果您什么也没有看到或收到错误消息,则说明LDAP服务器未运行或某些原因(例如防火墙)阻止了连接。

如果您使用的是ldap,则可能还需要按照askubuntu.com/questions/73287/…
sweetfa '16

5

为了获得登录时自动创建的主目录,我必须输入以下行:

session required pam_mkhomedir.so skel=/etc/skel umask=0022

/etc/pam.d/common-session代替/etc/pam.d/login-当我刚做了它在后来我的主目录未创建。



1

为了可以输入用户名,您必须lightdm configuration使用以下命令进行修改:

/usr/lib/lightdm/lightdm-set-defaults -m true

0

关于在ligthdm迎宾器中键入用户名,从16.04版本开始,lightdm-set-defaults命令消失了。

相反,您可以在lightdm配置文件中添加用于键入用户名的选项。例如,创建文件/etc/lightdm/lightdm.conf并添加以下行:

[SeatDefaults]
greeter-show-manual-login=true
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.