SymasLDAP 維護工作

記錄檔位置

SymasLDAP 記錄檔位於 /opt/apigee/var/log 目錄中。您可以定期封存及移除這些檔案,確保不會占用過多磁碟空間。如要瞭解如何維護、封存及移除 SymasLDAP 記錄,請參閱 SymasLDAP 手冊第 19.2 節,網址為 https://kb.symas.com/configuration/logging-configuration。

手動設定使用者密碼

使用者可以在新版 Edge UI 中要求新的 Edge 密碼。使用者會收到一封電子郵件,內含設定密碼的相關資訊。不過,如果 SMTP 伺服器故障,或使用者因任何原因無法接收電子郵件,您可以使用 SymasLDAP 指令手動設定使用者密碼。

如何設定使用者密碼:

  1. 使用 ldapsearch 下載使用者資訊:
    /opt/symas/bin/ldapsearch -w ldapAdminPWord -D "cn=manager,dc=apigee,dc=com" -b "dc=apigee,dc=com" -LLL -x -H ldap://LDAP_IP:10389 > ldap.txt
  2. 在 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
  3. 使用 ldappasswd 根據使用者的 UID 設定密碼:
    /opt/symas/bin/ldappasswd -x -H ldap://LDAP_IP: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"

    系統會提示您輸入 SymasLDAP 管理員密碼。

使用者現在可以使用 newPassWord 登入。

手動設定 SymasLDAP 系統密碼

「重設 Edge 密碼」一文說明如何變更 SymasLDAP 系統密碼,但您必須知道現有密碼。如果忘記密碼,可以按照下列程序重設。

  1. 使用 slappasswd 為新密碼建立 SSHA 加密密碼:
    /opt/symas/sbin/slappasswd -h {SSHA} -s newPassWord

    這個指令會傳回以下形式的字串:

    {SSHA}+DOup9d6l+czfWzkIvajwYPArjPurhS6
  2. 在編輯器中開啟 /opt/apigee/data/apigee-openldap/slapd.d/cn=config/olcDatabase={2}mdb.ldif 檔案:
    vi /opt/apigee/data/apigee-openldap/slapd.d/cn=config/olcDatabase={2}mdb.ldif
  3. 找出以下格式的程式碼:
    olcRootPW:: OldPasswordString
  4. 將 OldPasswordString 替換為 slappasswd 傳回的字串。 如果 olcRootPw 後方有 2 個半形冒號,請移除其中一個,並確保半形冒號後方有空格:
    olcRootPW: {SSHA}RGon+bLCe+Sk+HyHholFBj8ONQfabrhw
  5. 重新啟動 SymasLDAP:
    /opt/apigee/apigee-service/bin/apigee-service apigee-openldap restart
  6. 使用 ldapsearch 檢查新密碼是否有效:
    /opt/symas/bin/ldapsearch -W -D "cn=manager,dc=apigee,dc=com" -b "dc=apigee,dc=com" -LLL -x -H ldap://LDAP_IP:10389

    系統會提示您輸入 SymasLDAP 管理員密碼。

  7. 在用於複製作業的其他 SymasLDAP 伺服器上,重複執行這些步驟。
  8. 更新管理伺服器,以便使用新密碼:
    /opt/apigee/apigee-service/bin/apigee-service edge-management-server store_ldap_credentials -p newPassWord

手動設定 Edge 管理員密碼

「重設 Edge 密碼」一文說明如何變更 Edge 系統密碼,但前提是您必須知道現有密碼。如果遺失 Edge 系統密碼,可以按照下列程序重設。

  1. 在「New Edge UI」節點上,停止「New Edge UI」:
    /opt/apigee/apigee-service/bin/apigee-service edge-management-ui stop
  2. 使用 ldappasswd 設定 Edge 系統管理員密碼:
    /opt/symas/bin/ldappasswd -x -H ldap://localhost:10389 -D "cn=manager,dc=apigee,dc=com" -W -s newPassWord \
      "uid=admin,ou=users,ou=global,dc=apigee,dc=com"

    系統會提示您輸入 SymasLDAP 管理員密碼。

  3. 使用新的 Edge 系統密碼,更新用於安裝 New Edge UI 的設定檔:
    APIGEE_ADMINPW=newPassWord
  4. 設定並重新啟動新版 Edge UI:
    /opt/apigee/apigee-setup/bin/setup.sh -p ue -f configFile
  5. (僅限在新版 Edge UI 啟用 TLS 的情況) 按照「為新版 Edge UI 設定 TLS」一文所述,重新啟用新版 Edge UI 的 TLS。

刪除 SLAPD 鎖定檔案

如果嘗試啟動 SymasLDAP 時,系統顯示 slapd.pid 鎖定檔案存在的錯誤訊息,您可以刪除該檔案。

這個檔案位於 /opt/apigee/apigee-openldap/var/run/slapd.pid。刪除檔案,然後嘗試重新啟動 SymasLDAP:

/opt/apigee/apigee-service/bin/apigee-service apigee-openldap restart

如果 SymasLDAP 未啟動,請嘗試以偵錯模式啟動,並檢查是否有錯誤:

/opt/symas/lib/slapd -h ldap://:10389/ -u apigee -d 255 -F /opt/apigee/data/apigee-openldap/slapd.d

錯誤可能代表資源、記憶體或 CPU 使用率有問題。

修改 SymasLDAP 複製作業

本節說明如何修改 SymasLDAP 複製。

在 SymasLDAP 複製器節點上執行下列程序中的步驟,將資料複製到其他 SymasLDAP 節點。舉例來說,如果您要設定從 node1 複製到 node2,請在 node1 執行指令。

  1. 查看目前狀態:
    /opt/symas/bin/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
  2. 建立 repl.ldif 檔案,並將下列指令貼到檔案中:
    dn: olcDatabase={2}mdb,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:您打算複製到的新 SymasLDAP 主機。
    • PORT:SymasLDAP 通訊埠。預設通訊埠為 10389。
    • PASSWORD:SymasLDAP 密碼。
  3. 執行 ldapmodify 指令:
    /opt/symas/bin/ldapmodify -x -w PASSWORD -D "cn=admin,cn=config" -H "ldap://HOST:PORT/" -f repl.ldif

    畫面會顯示如下的輸出內容:

    modifying entry "olcDatabase={2}mdb,cn=config"
  4. 驗證複製作業:
    /opt/symas/bin/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 值,確認兩者相符,藉此驗證複製作業是否正常運作。

    /opt/symas/bin/ldapsearch -w PASSWORD -D "cn=manager,dc=apigee,dc=com" -b "dc=apigee,dc=com" -LLL -x -H ldap://localhost:10389 contextCSN | grep contextCSN

排解 SymasLDAP 複寫問題

如果安裝作業使用多個 SymasLDAP 伺服器,您可以檢查複製設定,確保伺服器正常運作。

  1. 確認 ldapsearch 會傳回每個 SymasLDAP 伺服器的資料:
    /opt/symas/bin/ldapsearch -W -D "cn=manager,dc=apigee,dc=com" -b "dc=apigee,dc=com" -LLL -x -H ldap://LDAP_IP:10389

    系統會提示您輸入 SymasLDAP 管理員密碼。

  2. 檢查複製設定,方法是查看 /opt/apigee/data/apigee-openldap/slapd.d/cn=config/olcDatabase={2}mdb.ldif 檔案。
  3. 確認每個 OpenLDAP 伺服器上的系統密碼相同。
  4. 檢查 iptables 和 tcp wrapper 設定。