Centos下LDAP服务器的部署安装

2022年5月4日 16点热度 0人点赞

OpenLDAP是轻量目录访问协议,在我们工作中会经常使用到,下面是我记录的部署过程,希望能给大家带来一些帮助。

工具/原料

  • Centos7
  • ldap administrator
  • 虚拟机

方法/步骤

  1. 1

    一、openldap安装,确保安装好centos7.0的虚拟机能正常上互联网。

     # yum install -y openldap-* openldap-clients openldap-servers migrationtools freeradius-ldap freeradius-utils 

  2. 2

    配置 OpenLDAP:

    #vim /etc/openldap/slapd.d/cn\=config/olcDatabase\=\{2\}hdb.ldif

    olcSuffix: dc=baidu,dc=cn           

    olcRootDN: cn=admin,dc=baidu,dc=cn

    添加一行:

    olcRootPW: 123456 #密码根据自己需要修改

  3. 3

    配置监控数据库文件:

    #vim /etc/openldap/slapd.d/cn\=config/olcDatabase\=\{1\}monitor.ldif

    olcAccess: {0}to * by dn.base="gidNumber=0+uidNumber=0,cn=peercred,cn=extern

    al,cn=auth" read by dn.base="cn=admin,dc=baidu,dc=cn" read by * none

  4. 4

    拷贝LDAP数据库配置文件到指定目录并赋予权限:

    #cp /usr/share/openldap-servers/DB_CONFIG.example /var/lib/ldap/DB_CONFIG

    # chown -R ldap.ldap /var/lib/ldap

  5. 5

    测试配置文件是否正确

    slaptest -u

    [root@localhost ~]# slaptest -u

    57e4dcb4 ldif_read_file: checksum error on "/etc/openldap/slapd.d/cn=config/olcDatabase={1}monitor.ldif"

    57e4dcb4 ldif_read_file: checksum error on "/etc/openldap/slapd.d/cn=config/olcDatabase={2}hdb.ldif"

    config file testing succeeded

  6. 6

    开启和启用slapd在启动服务,并确认:

    #systemctl start slapd     //启动

    # systemctl enable slapd    //开机自动启动

     #netstat -lt | grep ldap    //确认是否启动

    tcp 0 0 0.0.0.0:ldap 0.0.0.0:* LISTEN 

    tcp6 0 0 [::]:ldap [::]:* LISTEN

  7. 7

    LDAP服务器的配置,添加需要schema模式:

    # cd /etc/openldap/schema/

    # ldapadd -Y EXTERNAL -H ldapi:/// -D "cn=config" -f cosine.ldif

    # ldapadd -Y EXTERNAL -H ldapi:/// -D "cn=config" -f nis.ldif

    # ldapadd -Y EXTERNAL -H ldapi:/// -D "cn=config" -f collective.ldif

    # ldapadd -Y EXTERNAL -H ldapi:/// -D "cn=config" -f corba.ldif

    # ldapadd -Y EXTERNAL -H ldapi:/// -D "cn=config" -f core.ldif

    # ldapadd -Y EXTERNAL -H ldapi:/// -D "cn=config" -f duaconf.ldif

    # ldapadd -Y EXTERNAL -H ldapi:/// -D "cn=config" -f dyngroup.ldif

    # ldapadd -Y EXTERNAL -H ldapi:/// -D "cn=config" -f inetorgperson.ldif

    # ldapadd -Y EXTERNAL -H ldapi:/// -D "cn=config" -f java.ldif

    # ldapadd -Y EXTERNAL -H ldapi:/// -D "cn=config" -f misc.ldif

    # ldapadd -Y EXTERNAL -H ldapi:/// -D "cn=config" -f openldap.ldif

    # ldapadd -Y EXTERNAL -H ldapi:/// -D "cn=config" -f pmi.ldif

    # ldapadd -Y EXTERNAL -H ldapi:/// -D "cn=config" -f ppolicy.ldif

    [root@localhost ~]# cd /etc/openldap/schema/

    [root@localhost schema]# ldapadd -Y EXTERNAL -H ldapi:/// -D "cn=config" -f ppolicy.ldif

    SASL/EXTERNAL authentication started

    SASL username: gidNumber=0+uidNumber=0,cn=peercred,cn=external,cn=auth

    SASL SSF: 0

    adding new entry "cn=ppolicy,cn=schema,cn=config"

    [root@localhost schema]# ldapadd -Y EXTERNAL -H ldapi:/// -D "cn=config" -f pmi.ldif

    SASL/EXTERNAL authentication started

    SASL username: gidNumber=0+uidNumber=0,cn=peercred,cn=external,cn=auth

    SASL SSF: 0

    adding new entry "cn=pmi,cn=schema,cn=config"

  8. 8

    使用迁移工具来创建LDAP:

    #cd /usr/share/migrationtools/

    # vim migrate_common.ph 

    //在61行

    $NAMINGCONTEXT{'group'} = "ou=Groups";

    //在 71行

    $DEFAULT_MAIL_DOMAIN = "baidu.cn";

    //在74行, 

    $DEFAULT_BASE = "dc=baidu,dc=cn";

    //在90行

    $EXTENDED_SCHEMA = 1;

    :wq!

  9. 9

    生成一个ldif文件并导入ladp数据库:

    cd /usr/share/migrationtools/

    # ./migrate_base.pl > /root/base.ldif

    #ldapadd -x -W -D "cn=admin,dc=baidu,dc=cn" -f /root/base.ldif

    输入密码:    //第二步里面设置的密码

  10. 10

    在liunx系统中建立一些用户并设置密码:

     #mkdir /home/guests

     #useradd -d /home/guests/ldapuser1 ldapuser1

     #useradd -d /home/guests/ldapuser2 ldapuser2

     #useradd -d /home/guests/ldapuser3 ldapuser3

     #echo 'baidu@123' | passwd --stdin ldapuser1

     #echo 'baidu@123' | passwd --stdin ldapuser2

     #echo 'baidu@123' | passwd --stdin ldapuser3

  11. 11

    从/etc/shadow过滤掉这些用户、组、密码:

    #getent passwd | tail -n 6 > /root/users

    #getent shadow | tail -n 6 > /root/shadow

    # getent group | tail -n 6 > /root/groups

  12. 12

    使用migrationtools ldif文件创建这些用户: 

    #cd /usr/share/migrationtools

    #vim migrate_passwd.pl

    找到188行 /etc/shadow  改成 /root/shadow 

    # ./migrate_passwd.pl /root/users > users.ldif

    # ./migrate_group.pl /root/groups > groups.ldif

  13. 13

    上传这些用户和组ldif文件到LDAP数据库:

    #cd /usr/share/migrationtools

    # ldapadd -x -W -D "cn=admin,dc=baidu,dc=cn" -f users.ldif

    输入密码

    # ldapadd -x -W -D "cn=admin,dc=baidu,dc=cn" -f groups.ldif

    输入密码

    最后,使用ladp administrator软件可以看到ldap目录已经看到了,如下图:

    END

注意事项

  • 域名一定不要搞错,配置过程要细心。
经验内容仅供参考,如果您需解决具体问题(尤其法律、医学等领域),建议您详细咨询相关领域专业人士。
作者声明:本篇经验系本人依照真实经历原创,未经许可,谢绝转载。
展开阅读全部

laozhao

这个人很懒,什么都没留下

文章评论