OpenLDAP 无法添加新架构

OpenLDAP 无法添加新架构

我正在尝试向我的 OpenLDAP 服务器添加新架构。slapd 的版本是 2.4.23。我使用的是 Debian 6。

如果我理解正确的话,slapd 2.4+ 默认使用带有 (cn=config) 的 OLC 配置,我无需修改 slapd.conf 中的任何内容或 cn=config 树中的其他点(我错了吗?)。但是当我尝试使用以下命令添加架构时:

ldapadd -x -D "cn=admin,cn=config" -W -f filesystem.ldif

它给了我:

Enter LDAP Password: 
ldap_bind: Invalid credentials (49)

我也尝试了这个命令(即使我不知道我在这里做什么):

ldapadd -x -D "cn=admin,dc=linuxcbt,dc=internal" -W -f filesystem.ldif

其中 dc=linuxcbt,dc=internal 是我的基础,我得到:

adding new entry "cn=filesystem,cn=schema,cn=config"
ldap_add: Insufficient access (50)

我的 filesystem.ldif 文件是:

dn: cn=filesystem,cn=schema,cn=config
objectClass: olcSchemaConfig
cn: filesystem

olcAttributeTypes: ( 1000.1.1.1 NAME ( 'fn' 'filename' )
   DESC 'Nome del file'
   EQUALITY 'Case exact match'
   SUBSTR caseExactSubstringsMatch
   SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )

olcAttributeTypes: ( 1000.1.1.2 NAME ( 'fs' 'filesize'  )
   DESC 'Dimensione del file'
   EQUALITY integerMatch
   ORDERING integerOrderingMatch
   SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 )

olcObjectClasses: ( 1000.1.2.1 NAME ( 'dir'
   DESC 'Una directory'
   MUST fn
   MAY fs
   AUXILIARY )

olcObjectClasses: ( 1000.1.2.2 NAME ( 'file'
   DESC 'Un file'
   MUST (fn $ fs)
   AUXILIARY )

现在我被这个问题困住了。

答案1

尝试

ldapadd -Q -Y EXTERNAL -H ldapi:/// -f filesystem.ldif

这仅在您以 root (uid=0) 身份或通过 sudo 直接在 LDAP 服务器上工作时才有效。它根据用户 ID 连接到 LDAP 服务器并绕过常规身份验证方法。

olcAccess此访问权限由规则授予

{0}to *  by dn.base="gidNumber=0+uidNumber=0,cn=peercred,cn=external,cn=auth" manage  by * none

olcDatabase={0}config,cn=config

为了允许以“正常”方式访问,您可以将以下行添加到olcDatabase={0}config,cn=config

olcRootDN: cn=admin,cn=config
olcRootPW: <yourpassword>  

其中<yourpassword>应该通过 进行预加密slappasswd

相关内容