Ldap
ldap 更改架構和配置密碼
我在fedora 20 上安裝了openldap 伺服器,並嘗試用它來管理bugzilla 帳戶。所以我首先為我的域配置它,加上設置密碼:
dn: olcDatabase={0}config,cn=config changetype: modify replace: olcRootPW olcRootPW: {SSHA}... dn: olcDatabase={2}hdb,cn=config changetype: modify replace: olcRootPW olcRootPW: {SSHA}... - replace: olcRootDN olcRootDN: cn=admin,dc=example,dc=com - replace: olcSuffix olcSuffix: dc=example,dc=com
並執行:
ldapmodify -a -Q -Y EXTERNAL -H ldapi:/// -f ./initial.ldif
之後我嘗試添加測試使用者:
# User account dn: uid=user1,ou=people,dc=example,dc=com cn: User Name givenName: Name sn: User uid: user1 mail: email@domain objectClass: top objectClass: inetOrgPerson objectClass: organizationalPerson objectClass: person userPassword: {CRYPT}*
並呼叫 ldapadd
ldapadd -v -v -f ./useradd.ldif -x -D "cn=admin,dc=example,dc=com" -w pass
但它失敗了,說它不知道inetOrgPerson。
所以我嘗試用這樣的類附加方案:
ldapadd -v -f ./inetorgperson.ldif -x -D "cn=admin,dc=example,dc=com" -w pass
但它失敗並顯示有關錯誤登錄名/密碼的消息,
現在問題開始了:
我認為 cn=config 和我使用 cn=admin 的問題(這是我使用 ldap 的第一天),所以我使用了:
dn: olcDatabase={0}config,cn=config changetype: 修改替換: olcRootDN olcRootDN: cn=admin,dc=example,dc=com
並且whoa ldapadd -v -f ./inetorgperson.ldif -x -D “cn=admin,dc=example,dc=com” -w pass start 有效,但 useradd 失敗:
ldap_add: 沒有這樣的對象 (32)
加上重新啟動 slapd 後,我得到了:
只有rootdn在後綴下才能設置
那麼任何人都可以給我建議如何使用“uid”,“mail”和密碼欄位添加有關使用者的新openldap記錄嗎?
我解決了問題。有兩個問題: 1)如何添加模式?感謝OpenLDAP 無法添加新架構 ,我通過對 ldapadd 使用“-Y external”解決了這個問題
2)初始配置,有olcDatabase={1}monitor,cn=config 也應該改成能正常工作的slapd。