Openldap
在 OpenLDAP 中將組織單位 (ou) 添加到組織 (o)
在 Debian Buster 安裝中,我剛剛安裝了 OpenLDAP 伺服器
slapd
:~$ sudo apt install slapd ldap-utils ~$ sudo dpkg-reconfigure slapd
在使用預設選項進行設置時,系統提示我提供組織名稱。我用家,所以我得到
~$ ldapsearch -x -LLL -b dc=hoeft-online,dc=de dn: dc=hoeft-online,dc=de objectClass: top objectClass: dcObject objectClass: organization o: home dc: hoeft-online dn: cn=admin,dc=hoeft-online,dc=de objectClass: simpleSecurityObject objectClass: organizationalRole cn: admin description: LDAP administrator
現在我嘗試將組織單位 ( ou ) 添加到組織
o: home
中,如輸出所示,但沒有成功:~$ cat add.ldif dn: ou=posix,o=home,dc=hoeft-online,dc=de objectClass: organizationalUnit ou: posix ~$ ldapadd -xWD cn=admin,dc=hoeft-online,dc=de -f add.ldif Enter LDAP Password: adding new entry "ou=posix,o=home,dc=hoeft-online,dc=de" ldap_add: No such object (32) matched DN: dc=hoeft-online,dc=de
向domainComponent ( dc )添加ou可以:
~$ cat add.ldif dn: ou=posix,dc=hoeft-online,dc=de objectClass: organizationalUnit ou: posix ~$ ldapadd -xWD cn=admin,dc=hoeft-online,dc=de -f add.ldif Enter LDAP Password: adding new entry "ou=posix,dc=hoeft-online,dc=de"
我在這裡缺少什麼?是否可以將組織單元(ou)添加到組織(o)?如果不是,為什麼?它在哪裡定義?
您確定您的 LDAP 目錄包含 dn
o=home,dc=hoeft-online,dc=de
嗎?該錯誤表明它沒有,但是由於您沒有粘貼適當ldapsearch
命令的輸出,因此很難說。懷疑是問題所在,否則我無法重現您的問題。我從 Debian Stretch 上的 OpenLDAP 2.4.47 開始。我有一個數據庫
dc=example,dc=com
;我開始:$ ldapsearch ... -D cn=admin,dc=example,dc=com -x -w admin -b dc=example,dc=com -LLL dn: dc=example,dc=com objectClass: top objectClass: dcObject objectClass: organization o: Example Inc. dc: example
然後我可以
o=home
使用這個 LDIF 添加一個新的:dn: o=home,dc=example,dc=com objectClass: organization o: home
看起來像:
$ ldapadd -D cn=admin,dc=example,dc=com -x -W -f add-org.ldif Enter LDAP Password: adding new entry "o=home,dc=example,dc=com"
然後我可以添加
ou=posix
這樣的:dn: ou=posix,o=home,dc=example,dc=com objectClass: organizationalUnit ou: posix
看起來像:
$ ldapadd -D cn=admin,dc=example,dc=com -x -W -f add-ou.ldif Enter LDAP Password: adding new entry "ou=posix,o=home,dc=example,dc=com"
當我完成時:
$ ldapsearch ... -D cn=admin,dc=example,dc=com -x -w admin -b dc=example,dc=com -LLL dn: dc=example,dc=com objectClass: top objectClass: dcObject objectClass: organization o: Example Inc. dc: example dn: o=home,dc=example,dc=com objectClass: organization o: home dn: ou=posix,o=home,dc=example,dc=com objectClass: organizationalUnit ou: posix