Назад | Перейти на главную страницу

Как добавить пользователя, содержащего UID, в OpenLDAP, работающий на CentOS7?

Добавить пользователя

user.ldif

dn: uid=sampleuser,ou=people,dc=my-domain,dc=com
objectClass: top
objectClass: inetOrgPerson
cn: sample user
uid: sampleuser

Проблема

[root@host ~]# ldapadd -x -W -D "cn=Manager,dc=my-domain,dc=com" -f user.ldif
Enter LDAP Password:
adding new entry "uid=sampleuser,ou=people,dc=my-domain,dc=com"
ldap_add: Invalid syntax (21)
        additional info: objectClass: value #1 invalid per syntax

Попытка решить проблему

Изменение inetOrgPerson к uidObject и снова создать пользователя:

[root@controller ~]# ldapadd -x -W -D "cn=Manager,dc=my-domain,dc=com" -f user.ldif
Enter LDAP Password:
adding new entry "uid=sampleuser,ou=people,dc=my-domain,dc=com"
ldap_add: Object class violation (65)
        additional info: no structural object class provided

Попытка 2 решить проблему

ObjectClass inetOrgPerson не найден:

Попытка 3 решить проблему

Невозможно добавить inetOrgPerson схема:

[root@controller ~]# ldapadd -Y EXTERNAL -H ldapi:/// -f /etc/openldap/schema/inetorgperson.ldif
SASL/EXTERNAL authentication started
SASL username: gidNumber=0+uidNumber=0,cn=peercred,cn=external,cn=auth
SASL SSF: 0
adding new entry "cn=inetorgperson,cn=schema,cn=config"
ldap_add: Other (e.g., implementation specific) error (80)
        additional info: olcObjectClasses: AttributeType not found: "audio"

Источники, которые уже были прочитаны и не содержат решения, решающего проблему

http://docs.adaptivecomputing.com/viewpoint/hpc/Content/topics/1-setup/installSetup/settingUpOpenLDAPOnCentos6.htm

http://www.zytrax.com/books/ldap/ch3/

https://stackoverflow.com/questions/28938957/openldap-structural-objectclass-not-found

http://www.openldap.org/doc/admin24/schema.html

http://www.openldap.org/lists/openldap-software/200503/msg00640.html

http://www.openldap.org/lists/openldap-technical/201002/msg00147.html

http://www.openldap.org/lists/openldap-technical/201002/msg00139.html

inetOrgPerson зависит от обоих core и cosine. Похоже, у вас уже есть ядро. Добавьте косинус, затем инеторгерсон. Косинус должен быть на /etc/openldap/schema/cosine.ldif.