Ubuntu 通过ldap集成AD账号登录
注:该方式不依赖于AD的server for nis,单纯AD服务即可
安装libnss-ldapd(会自动安装nscd、nslcd)、libpam-ldapd
# apt-get install libnss-ldapd libpam-ldapd (中间配ldap部分可直接回车或随便写,后面调nslcd.conf文件即可)
# vi /etc/nsswitch.conf
passwd: files ldap
group: files ldap
shadow: files ldap
:wq
# vi /etc/nslcd.conf
uri ldap://10.0.1.4:3268
base dc=ming,dc=com
binddn cn=adminldap,cn=Users,dc=ming,dc=com (adminldap为AD账号,一般权限即可)
bindpw ****** (adminldap的密码)
filter passwd (&(objectClass=user)(objectClass=person)(!(objectClass=computer)))
map passwd uid cn
map passwd uidNumber objectSid:S-1-5-21-3623811015-3361044348-30300820
map passwd gidNumber objectSid:S-1-5-21-3623811015-3361044348-30300820
map passwd homeDirectory "/home/$cn"
map passwd gecos displayName
map passwd loginShell "/bin/bash"
filter shadow (objectClass=person)
map shadow uid sAMAccountName
filter group (|(objectClass=group)(objectClass=person))
map group gidNumber objectSid:S-1-5-21-3623811015-3361044348-30300820
:wq
认证后自动创建用户家目录:
# vi /etc/pam.d/common-session
session required pam_mkhomedir.so skel=/etc/skel umask=0022
:wq
# service nscd restart
# service nslcd restart
# getent passwd\shadow\group (查看是否可以显示AD信息,可以才算正常)
nslcd debug模式(看报错用,正常情况下就restart即可)
# service nslcd stop
# nslcd -d
确认AD账号登录:
# su - aa.yang
# ssh aa.yang@10.0.1.6 (即通过远程ssh,直接写名字,不带域名)
给sudo权限(/etc/sudoers)
新账号登录后是否自动创建家目录
目前发现的bug:
1、显示的AD账号的uid和gid和AD里的真实uid不一致
2、不认原有的group,显示的账号gid同uid
3、显示的AD账号中间为空格,需在AD里右击重命名中间带点,否则登录时需用‘’引起来
本文转自linux博客51CTO博客,原文链接http://blog.51cto.com/yangzhiming/1907710如需转载请自行联系原作者
yangzhimingg