Ubuntu客户端使用OpenLDAP服务认证登陆

这段时间在架设ldap服务器,客户端使用的都是ubuntu操作系统,所以计划是让ubuntu客户端采用openldap用户验证来登陆系统,实现linux用户同意管理,现将过程写下,供大家分享。
前面的如何安装openldap就不再这里讲述了,相信大家都会了,也不难。
安装配置 LDAP 认证
安装下列包:libpam-ldap libnss-ldap (参见 InstallingSoftware )。注意你必须激活 universe 库。
$ apt-get install libpam-ldap libnss-ldap
在安装时,您将询问下列问题:
所用 LDAP 服务器地址 在这里您也可以使用完整的域名。如ldap.example.co
搜索所基的标识名。如dc=example,dc=com
所用 LDAP 版本 在这您通常可以选 3。
您的数据库是否要求登录 这里您通常可以选 no。
您是否只想为自己配置可读/可写权限 这里应该回答 no
显示的对话框说明它不能自动管理 nsswitch.conf。只需选择 OK。
您是否想让本地根用户成为数据库管理员 这里通常选 yes
再次询问您的数据库是否要求登录 这里您将选择 no
您的根用户登录帐号 如:cn=manager,dc=example,dc=com
您的根用户密码
然后,一个对话框显示不同的加密方式以指定 发送您密码前所用的加密方式。 exop 通常是个好的选择。
配置 nsswitch.conf
不幸的是我们在 /etc/nsswitch.conf 被配置之前还不能测试上述配置:
$ sudo vi /etc/nsswitch.conf
输入下列命令,以便用 ldap files 代替 compat:
:%s/compat/ldap files/g
使用getent测试nsswitch.conf配置
现在您可以使用下列命令来测试配置(用用户代替 并用您 LDAP 服务已知组代替 ):
$ getent passwd
$ getent group
如果您在上述情形下得到回复,那么您 LDAP nsswitch.conf 配置就是正确的,所有您所需做的就是去配置 PAM 了。
改变nsswitch.conf中的查找顺序
您也许想交换 ldap 和 files 的顺序,以便在查询 LDAP 服务器之前先检查您的本地 passwd 文件:
$ sudo vi /etc/nsswitch.conf
然后按下面形式改变每行的顺序:
passwd: files ldap
group: files ldap
shadow: files ldap
配置 PAM
PAM 配置被拆分成 4 个文件:common-account, common-auth, common-password and common-session
/etc/pam.d/common-account
$ sudo vi /etc/pam.d/common-account
输入下列语句:
account sufficient pam_ldap.so
account required pam_unix.so
/etc/pam.d/common-auth
$ sudo vi /etc/pam.d/common-auth
输入下列语句:
auth sufficient pam_ldap.so
auth required pam_unix.so nullok_secure use_first_pass
/etc/pam.d/common-password
标准配置
$ sudo vi /etc/pam.d/common-password
输入下列语句:
password sufficient pam_ldap.so
password required pam_unix.so nullok obscure min=4 max=8 md5
使用强口令
如果您想使用强口令,您也许会对 libpam-cracklib 感兴趣。安装下列软件包:
$ sudo vi /etc/pam.d/common-password
输入下列语句:
password required pam_cracklib.so retry=3 minlen=6 difok=3
password sufficient pam_ldap.so use_authtok nullok md5
password required pam_unix.so use_authtok use_first_pass
/etc/pam.d/common-session
标准配置
$ sudo vi /etc/pam.d/common-session
输入下列语句:
session sufficient pam_ldap.so
session required pam_unix.so
在首次登录时自动创建主文件夹
如果您想在首次登录时自动创建用户主文件夹,您需要再次编辑 common-session 文件:
$ sudo vi /etc/pam.d/common-session
输入下列语句:
session required pam_unix.so
session required pam_mkhomedir.so skel=/etc/skel/
session optional pam_ldap.so

发表评论

电子邮件地址不会被公开。 必填项已用*标注