記錄檔位置
OpenLDAP 記錄檔包含在 /opt/apigee/var/log
目錄中。這些檔案可以是
定期封存並移除,以免佔用過多磁碟
空白鍵。如要瞭解如何維護、封存及移除 OpenLDAP 記錄,請參閱本節
http://www.openldap.org/doc/admin24/maintenance.html 的 OpenLDAP 手冊 19.2。
手動設定使用者密碼
使用者可以在 Edge UI 中要求新 Edge 密碼。接著,使用者收到電子郵件,內含 關於設定密碼的資訊不過,如果您的 SMTP 伺服器故障,或是使用者無法 無論原因為何,您都可以使用 OpenLDAP 手動設定使用者的密碼 指令
如何設定使用者密碼:
- 使用
ldapsearch
下載使用者資訊:ldapsearch -w ldapAdminPWord -D "cn=manager,dc=apigee,dc=com" -b "dc=apigee,dc=com" -LLL -h LDAP_IP -p 10389 > ldap.txt
- 在 ldap.txt 檔案中搜尋使用者的電子郵件地址。您應該會在表單中看到一個區塊:
dn: uid=29383a67-9279-4aa8-a75b-cfbf901578fc,ou=users,ou=global,dc=apigee,dc=com mail: foo@bar.com userPassword:: e1NTSEF9a01UUDdSd01BYXRuUURXdXN5OWNPRzBEWWlYZFBRTm14MHlNVWc9PQ== uid: 29383a67-9279-4aa8-a75b-cfbf901578fc
- 使用
ldappasswd
,即可根據使用者的 uid 設定使用者密碼:ldappasswd -h LDAP_IP -p 10389 -D "cn=manager,dc=apigee,dc=com" -W -s newPassWord \ "uid=29383a67-9279-4aa8-a75b-cfbf901578fc,ou=users,ou=global,dc=apigee,dc=com"
系統會提示您輸入 OpenLDAP 管理員密碼。
使用者現在可以使用 newPassWord 登入。
手動設定 OpenLDAP 系統密碼
「重設邊緣密碼」一節說明如何變更 OpenLDAP 系統密碼,但你必須知道現有密碼。如果您已遺失 密碼,請依照下列程序重設密碼。
- 使用
slappasswd
為新密碼建立 SSHA 加密密碼:slappasswd -h {SSHA} -s newPassWord
這個指令會以下列格式傳回字串:
{SSHA}+DOup9d6l+czfWzkIvajwYPArjPurhS6
- 打開
/opt/apigee/data/apigee-openldap/slapd.d/cn=config/olcDatabase={2}bdb.ldif
:vi /opt/apigee/data/apigee-openldap/slapd.d/cn=config/olcDatabase={2}bdb.ldif
- 您可以在表單中找到該行:
olcRootPW:: OldPasswordString
- 將 OldPasswordString 替換為從
slappasswd
傳回的字串。 如果olcRootPw
後方有 2 個半形冒號,請移除其中一個,確保有空格 冒號後:olcRootPW: {SSHA}RGon+bLCe+Sk+HyHholFBj8ONQfabrhw
- 重新啟動 OpenLDAP:
/opt/apigee/apigee-service/bin/apigee-service apigee-openldap restart
- 請使用
ldapsearch
檢查新密碼是否有效:ldapsearch -W -D "cn=manager,dc=apigee,dc=com" -b "dc=apigee,dc=com" -LLL -h LDAP_IP -p 10389
系統會提示您輸入 OpenLDAP 管理員密碼。
- 對其他要用於複製的 OpenLDAP 伺服器重複執行這些步驟。
- 更新管理伺服器即可使用新密碼:
/opt/apigee/apigee-service/bin/apigee-service edge-management-server store_ldap_credentials -p newPassWord
手動設定 Edge 管理員密碼
重設邊緣密碼說明如何變更 邊緣系統密碼,但你必須知道現有密碼。如果遺失邊緣 系統密碼,您可透過下列程序重設密碼。
- 在 UI 節點上停止 Edge UI:
/opt/apigee/apigee-service/bin/apigee-service edge-ui stop
- 使用
ldappasswd
設定 Edge sys admin 密碼:ldappasswd -h localhost -p 10389 -D "cn=manager,dc=apigee,dc=com" -W -s newPassWord \ "uid=admin,ou=users,ou=global,dc=apigee,dc=com"
系統會提示您輸入 OpenLDAP 管理員密碼。
- 更新用來安裝 Edge UI 及新 Edge 系統的設定檔
密碼:
APIGEE_ADMINPW=newPassWord
- 設定並重新啟動 Edge UI:
/opt/apigee/apigee-setup/bin/setup.sh -p ui -f configFile
- (僅在使用者介面已啟用 TLS 的情況下) 在 Edge UI 上重新啟用 TLS,如下所示: 參閱設定用於管理網域的 TLS 使用者介面。
刪除 SLAPD 鎖定檔案
如果嘗試啟動 OpenLDAP 時收到錯誤訊息,表示 slapd.pid
鎖定檔案
,您就可以刪除檔案。
這個檔案位於 /opt/apigee/apigee-openldap/var/run/slapd.pid
。刪除
檔案,然後嘗試重新啟動 OpenLDAP:
/opt/apigee/apigee-service/bin/apigee-service apigee-openldap restart
如果 OpenLDAP 並未啟動,請嘗試以偵錯模式啟動,並檢查是否有錯誤:
slapd -h ldap://:10389/ -u apigee -d 255 -F /opt/apigee/data/apigee-openldap/slapd.d
錯誤可能代表資源問題、記憶體或 CPU 使用率問題。
修改 OpenLDAP 複製
本節說明如何修改 OpenLDAP 複製作業。
請在複製資料的 OpenLDAP 複製器節點上執行下列程序 將資料傳送至 其他 OpenLDAP 節點舉例來說,如要設定從 node1 複製到 node2, 則會在 node1 上執行指令
- 檢查目前狀態:
ldapsearch -H ldap://{HOST}:{PORT} -LLL -x -b "cn=config" -D "cn=admin,cn=config" -w {PASSWORD} -o ldif-wrap=no 'olcSyncRepl' | grep olcSyncrepl
畫面會顯示如下的輸出內容:
olcSyncrepl: {0}rid=001 provider=ldap://{HOST}:{PORT}/ binddn="cn=manager,dc=apigee,dc=com" bindmethod=simple credentials={PASSWORD} searchbase="dc=apigee,dc=com" attrs="*,+" type=refreshAndPersist retry="60 1 300 12 7200 +" timeout=1
- 建立檔案
repl.lidf
,並將下列指令貼到檔案中:dn: olcDatabase={2}bdb,cn=config changetype: modify replace: olcSyncRepl olcSyncRepl: rid=001 provider=ldap://{NEW_HOST}:{PORT}/ binddn="cn=manager,dc=apigee,dc=com" bindmethod=simple credentials={PASSWORD} searchbase="dc=apigee,dc=com" attrs="*,+" type=refreshAndPersist retry="60 1 300 12 7200 +" timeout=1
請務必針對下列預留位置替換適當的值:
{NEW_HOST}
:您打算複製的新 OpenLDAP 主機。{PORT}
:OpenLDAP 通訊埠。預設通訊埠為10389
。{PASSWORD}
:OpenLDAP 密碼。
- 執行
ldapmodify
指令:ldapmodify -x -w {PASSWORD} -D "cn=admin,cn=config" -H "ldap://{HOST}:{PORT}/" -f repl.ldif
The output should be similar to the following:
modifying entry "olcDatabase={2}bdb,cn=config"
- 驗證複製作業:
ldapsearch -H ldap://{HOST}:{PORT} -LLL -x -b "cn=config" -D "cn=admin,cn=config" -w {PASSWORD} -o ldif-wrap=no 'olcSyncRepl' | grep olcSyncrepl
畫面會顯示類似以下的輸出內容:
olcSyncrepl: {0}rid=001 provider=ldap://{NEW_HOST}:{PORT}/ binddn="cn=manager,dc=apigee,dc=com" bindmethod=simple credentials={PASSWORD} searchbase="dc=apigee,dc=com" attrs="*,+" type=refreshAndPersist retry="60 1 300 12 7200 +" timeout=1
您可以讀取及比較 每個伺服器的
contextCSN
值並確認兩者相符。ldapsearch -w {PASSWORD} -D "cn=manager,dc=apigee,dc=com" -b "dc=apigee,dc=com" -LLL -h localhost -p 10389 contextCSN | grep contextCSN
排解 OpenLDAP 複製問題 問題
如果您的安裝作業使用多個 OpenLDAP 伺服器,您可以檢查複製設定, 確保伺服器正常運作
- 確保
ldapsearch
會傳回每個 OpenLDAP 伺服器的資料:ldapsearch -W -D "cn=manager,dc=apigee,dc=com" -b "dc=apigee,dc=com" -LLL -h LDAP_IP -p 10389
系統會提示您輸入 OpenLDAP 管理員密碼。
- 檢查
/opt/apigee/conf/openldap/slapd.d/cn=config/olcDatabase={2}bdb.ldif
以檢查複製設定 檔案。 - 確認每個 OpenLDAP 伺服器的系統密碼都相同。
- 檢查 iptable 和 tcp 包裝函式設定。