OpenLDAP:尝试添加 LDIF 时出现无效语法错误

OpenLDAP:尝试添加 LDIF 时出现无效语法错误

尝试在 OpenLDAP (CentOS 7) 中创建用户时,我不断收到无效语法错误。

这是新安装的 OpenLDAP,用于测试目的。

到目前为止,我已经成功创建了一个名为“Lab Staff”的组,现在我正在尝试向其中添加用户

这是 LDIF 文件:

dn: uid=lsuarez,ou=Lab Staff,dc=sftest,dc=net
objectclass: top
objectclass: person
objectclass: organizationalPerson
objectclass: inetOrgPerson
cn: Luis Suarez
sn: Suarez
givenname: Luis
uid: lsuarez
ou: Lab Staff

然后我尝试添加如下:

ldapadd -x -D "cn=Admin,dc=sftest,dc=net" -W  -f /tmp/data.ldif
Enter LDAP Password:
adding new entry "uid=lsuarez,ou=Lab Staff,dc=sftest,dc=net"

我收到错误消息:

ldap_add: Invalid syntax (21)
        additional info: objectclass: value #3 invalid per syntax

在我看来,它不喜欢inetOrgPerson,但我不知道我做错了什么。

答案1

您需要将架构导入inetOrgPerson到 中slapd

我不知道 CentOS 7 上的 OpenLDAP 安装,但如果您有文件/etc/ldap/schema/inetorgperson.ldif和动态 slapd 配置 ( /etc/ldap/slapd.d/),它可能会接受以下命令(以 root 身份运行)。

ldapadd -Y EXTERNAL -H ldapi:/// -f /etc/ldap/schema/inetorgperson.ldif

答案2

要解决该问题,请运行以下命令:

ldapadd -Y EXTERNAL -H ldapi:/// -f /etc/openldap/schema/cosine.ldif 


ldapadd -Y EXTERNAL -H ldapi:/// -f /etc/openldap/schema/nis.ldif


ldapadd -Y EXTERNAL -H ldapi:/// -f /etc/openldap/schema/inetorgperson.ldif

相关内容