openldap,我无法添加用户,无效的DN

时间:2015-01-25 14:26:53

标签: ldap redhat openldap

我在RedHat enterprise linux 6.5上启动我的测试openldap服务器。我认为我配置得当。我添加了我的base.ldif文件:

dn: dc=example,dc=com
dc: example
description: Root LDAP entry for example.com
objectClass: dcObject
objectClass: organizationalUnit
ou: rootObject

dn: ou=People,dc=exapmle,dc=com
ou: People
description: All people in organisation
objectClass: organizationalUnit

使用命令:

ldapadd -x -W -D "cn=Manager,dc=example,dc=com" -f base.ldif

我得到了一个输出:

[root@melita-bladekp ~]# ldapadd -x -W -D "cn=Manager,dc=example,dc=com" -f base.ldif
Enter LDAP Password:
adding new entry "dc=example,dc=com"

adding new entry "ou=People,dc=exapmle,dc=com"
ldap_add: Server is unwilling to perform (53)
        additional info: no global superior knowledge

但我第二次尝试了,我收到了:

[root@melita-bladekp ~]# ldapadd -x -W -D "cn=Manager,dc=example,dc=com" -f base.ldif
Enter LDAP Password:
adding new entry "dc=example,dc=com"
ldap_add: Already exists (68)

所以它对我来说没问题,接下来我试着添加一个用户:

dn: uid=ldapuser100,ou=People,dc=example,dc=com
uid: ldapuser100
cn: ldapuser100
objectClass: account
objectClass: posixAccount
objectClass: top
objectClass: shadowAccount
userPassword: {crypt}$6$E/tH1oRF$9.Km8Xs/wDIFgWgTT.domcw0PJGUZqK7mqdFPaNru2il5LMgsxaowq5bvjulQLR8CqSq.Pw.brZU77fzviQPG.
shadowLastChange: 16460
shadowMin: 0
shadowMax: 99999
shadowWarning: 7
loginShell: /bin/bash
uidNumber: 1400
gidNumber: 1400
homeDirectory: /exports/ldapuser100

使用命令:

[root@melita-bladekp ~]# ldapadd -x -W -D "cn=Manager,dc=example,dc=com" -f ldapuser100.ldif
Enter LDAP Password:
adding new entry "uid=ldapuser100,ou=People,dc=example,dc=com"
ldap_add: No such object (32)
        matched DN: dc=example,dc=com

我收到的DN不存在。我认为该基本文件存在问题,您是否知道我可以做些什么来修复它?

我的conf文件(我认为conf文件没问题):

/etc/openldap/ldap.conf中

  BASE dc=example,dc=com
    URI ldap://localhost
    TLS_REQCERT never   

/etc/openldap/slapd.conf

 include         /etc/openldap/schema/corba.schema
    include         /etc/openldap/schema/core.schema
    include         /etc/openldap/schema/cosine.schema
    include         /etc/openldap/schema/duaconf.schema
    include         /etc/openldap/schema/dyngroup.schema
    include         /etc/openldap/schema/inetorgperson.schema
    include         /etc/openldap/schema/java.schema
    include         /etc/openldap/schema/misc.schema
    include         /etc/openldap/schema/nis.schema
    include         /etc/openldap/schema/openldap.schema
    include         /etc/openldap/schema/ppolicy.schema
    include         /etc/openldap/schema/collective.schema

    pidfile         /var/run/openldap/slapd.pid
    argsfile        /var/run/openldap/slapd.args


    TLSCACertificatePath /etc/openldap/certs/ldap.crt
    TLSCertificateFile /etc/openldap/certs/ldap.crt
    TLSCertificateKeyFile /etc/openldap/certs/ldap.key

    database config
    access to *
            by dn.exact="gidNumber=0+uidNumber=0,cn=peercred,cn=external,cn=auth" manage
            by * none

    database monitor
    access to *
            by dn.exact="gidNumber=0+uidNumber=0,cn=peercred,cn=external,cn=auth" read
            by dn.exact="cn=Manager,dc=example,dc=com" read
            by * none

    database        bdb
    suffix          "dc=example,dc=com"
    checkpoint      1024 15
    rootdn          "cn=Manager,dc=example,dc=com"

    rootpw        {SSHA}MdddSPNLtlsVia4T534qLL6LWLRy2lBB
    directory       /var/lib/ldap

    index objectClass                       eq,pres
    index ou,cn,mail,surname,givenname      eq,pres,sub
    index uidNumber,gidNumber,loginShell    eq,pres
    index uid,memberUid                     eq,pres,sub
    index nisMapName,nisMapEntry            eq,pres,sub

1 个答案:

答案 0 :(得分:1)

看起来您的LDIF dn中有拼写错误

dn: ou=People,**dc=exapmle**,dc=com  

如果您将exapmle更改为example并重新运行LDIF并继续出错,则应获取示例条目,然后您就可以在之后添加用户。