Ldap

ldap 更改架構和配置密碼

  • April 8, 2016

我在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。

引用自:https://serverfault.com/questions/616062