hax*_*ode 14 linux ubuntu openldap
我对 openldap 很陌生,但非常精通 linux/unix 环境。我正在尝试使用此处的指南设置我的第一个测试 openldap 环境。我还阅读了这里的大部分管理指南,我不得不承认,其中有很多内容值得学习。
因此,按照 ubuntu 基本设置指南,我创建了一个如下所示的 ldif 文件:
dn: ou=People,dc=example,dc=com
objectClass: organizationalUnit
ou: People
dn: ou=Groups,dc=example,dc=com
objectClass: organizationalUnit
ou: Groups
dn: cn=engineers,ou=Groups,dc=example,dc=com
objectClass: posixGroup
cn: engineers
gidNumber: 5000
dn: uid=john,ou=People,dc=example,dc=com
objectClass: inetOrgPerson
objectClass: posixAccount
objectClass: shadowAccount
uid: john
sn: Doe
givenName: John
cn: John Doe
displayName: John Doe
uidNumber: 10000
gidNumber: 5000
userPassword: johnldap
gecos: John Doe
loginShell: /bin/bash
homeDirectory: /home/john
Run Code Online (Sandbox Code Playgroud)
每当我尝试使用以下方法添加它时:
$ ldapadd -x -D cn=admin,dc=example,dc=com -W -f add_content.ldif
Run Code Online (Sandbox Code Playgroud)
我收到以下错误:
adding new entry "cn=engineers,ou=Groups,dc=my-domain,dc=com"
ldap_add: Invalid syntax (21)
additional info: objectClass: value #0 invalid per syntax
adding new entry "uid=john,ou=People,dc=my-domain,dc=com"
ldap_add: Invalid syntax (21)
additional info: objectClass: value #0 invalid per syntax
Run Code Online (Sandbox Code Playgroud)
谷歌中针对此错误的结果没有提供任何有用的建议。我在这里做错了什么?
lar*_*sks 11
您的问题无疑是您需要将nis架构加载到您的 LDAP 服务器中。如何执行此操作取决于您使用的是旧slapd.conf配置文件还是目录中托管cn=config和支持的较新动态配置slapd.d。
slapd.conf您将需要通过沿以下行添加一行来include定义架构slapd.conf:
include /usr/local/etc/openldap/schema/nis.schema
Run Code Online (Sandbox Code Playgroud)
这假设nis.schema文件位于该路径;如果没有,请适当修改路径。
您将需要重新启动slapd以激活新架构。
slapd.d(为了完整性,我将其包括在内,尽管它与您当前的配置没有直接关系)。
slapd如果您使用的是动态cn=config配置,要将架构加载到其中,您可以使用ldapadd. 根据 ACL 的配置方式,该命令可能如下所示:
ldapadd -Y EXTERNAL -H ldapi:// -f /usr/local/etc/openldap/schema/nis.ldif
Run Code Online (Sandbox Code Playgroud)
这假设您运行slapd的 ACL 允许对root. 如果这不起作用,您需要使用-D和提供适当的绑定 DN 和密码-W。
在这种情况下不需要重新启动。
| 归档时间: |
|
| 查看次数: |
48740 次 |
| 最近记录: |