sha*_*dox 2 openldap ldap schema
我正在尝试向 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
Run Code Online (Sandbox Code Playgroud)
它给了我:
Enter LDAP Password:
ldap_bind: Invalid credentials (49)
Run Code Online (Sandbox Code Playgroud)
我也试过这个命令(即使我不知道我在这里做什么):
ldapadd -x -D "cn=admin,dc=linuxcbt,dc=internal" -W -f filesystem.ldif
Run Code Online (Sandbox Code Playgroud)
其中 dc=linuxcbt,dc=internal 是我的基础,我得到:
adding new entry "cn=filesystem,cn=schema,cn=config"
ldap_add: Insufficient access (50)
Run Code Online (Sandbox Code Playgroud)
我的 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 )
Run Code Online (Sandbox Code Playgroud)
现在我坚持这个。
尝试
ldapadd -Q -Y EXTERNAL -H ldapi:/// -f filesystem.ldif
Run Code Online (Sandbox Code Playgroud)
这仅在您以 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
Run Code Online (Sandbox Code Playgroud)
在olcDatabase={0}config,cn=config
。
要允许以“正常”方式访问,您可以将以下行添加到olcDatabase={0}config,cn=config
:
olcRootDN: cn=admin,cn=config
olcRootPW: <yourpassword>
Run Code Online (Sandbox Code Playgroud)
哪里<yourpassword>
应该通过slappasswd
.
归档时间: |
|
查看次数: |
8090 次 |
最近记录: |