IT博客汇
  • 首页
  • 精华
  • 技术
  • 设计
  • 资讯
  • 扯淡
  • 权利声明
  • 登录 注册

    Ubuntu14.04配置LDAP Client

    bear发表于 2016-01-14 02:39:30
    love 0

    Ubuntu 14.04系统上配置LDAP客户端的过程,记录一下。

    sudo apt-get install ldap-utils ldap-auth-client libnss-ldap libpam-ldap
    

    安装过程中提示填写ldap相关信息:ldap server地址,base dc等,信息保存在/etc/ldap.conf中,可通过dpkg-reconfigure ldap-auth-config重新配置,其中:

    lda地址格式 ldap://192.168.x.x:389
    Distinguished name of the search base: 就是你目录树的根,比如我的是dc=navinfo,dc=com
    LDAP version to use: 3
    Make local root Database admin: Yes
    Does the LDAP database require login? No
    LDAP account for root:  安装LDAP服务器时的创建的admin账号,我的是cn=admin,dc=navinfo,dc=com
    LDAP root account password: 
    

    修改/etc/nsswitch.conf文件,添加ldap登陆方式,同时系统查找顺序,以便在查询 LDAP服务器之前先检查您的本地passwd文件

    cp -p /etc/nsswitch.conf /etc/nsswitch.conf.bak
    sudo auth-client-config -t nss -p lac_ldap
    

    可以看到,执行完命令以后,nsswitch.conf文件变成了如下内容

    ……
    passwd: files ldap
    group:  files ldap
    shadow: files ldap
    ……
    

    修改/etc/pam.d/common-password,使得执行passwd时密码可以同步到LDAP服务器上去

    vim /etc/pam.d/common-password
    ……
    #找到第26行(删除use_authtok字段)
    password     [success=1 user_unknown=ignore default=die]     pam_ldap.so try_first_pass
    ……
    

    如果未操作这一步,登陆的LDAP用户在执行passwd命令修改密码时,会提示passwd: Authentication information cannot be recovered的错误

    自动创建home目录
    让pam_mkhomedir.so模块正常工作,用户第一次登录的时候创建主目录

    sudo vim /etc/pam.d/common-session
    #在末尾添加一行(必须添加在pam_ldap和pam_krb5项之前)
    session required        pam_mkhomedir.so umask=0022 skel=/etc/skel
    
    /etc/init.d/libnss-ldap restart
    

    然后可以测试连接一下LDAP Server了。如果遇到错误,请查看本机的/var/log/auth.log分析原因

    参考文档:
    Ubuntu LDAPClientAuthentication
    Ubuntu 14.04 OpenLDAP 服务器
    Configure LDAP Client



沪ICP备19023445号-2号
友情链接