排解憑證相關問題

您可能會在 Google Cloud Directory Sync (GCDS) 記錄檔中看到以下憑證相關錯誤:

  • sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target
  • ldap_simple_bind_s() failed: Strong Authentication Required (必須採用高強度驗證)

請按照下列步驟修正這些錯誤。

本頁內容

修正憑證相關錯誤

Microsoft Windows 裝置上的操作步驟

更新 vmoption 檔案

  1. 關閉「設定管理員」。
  2. 在 GCDS 的安裝目錄中,開啟「sync-cmd.vmoptions」和「config-manager.vmoptions」檔案。

    安裝目錄的路徑通常是 C:\Program Files\Google Cloud Directory Sync。

  3. 編輯上述檔案,在其中新增下列資訊:

    -Djavax.net.ssl.trustStoreProvider=SunMSCAPI
    -Djavax.net.ssl.trustStoreType=Windows-ROOT
    -Dcom.sun.jndi.ldap.connect.pool.protocol=plain ssl
    -Dcom.sun.jndi.ldap.connect.pool.authentication=none simple

  4. 重新啟動「設定管理員」,然後前往「LDAP 設定」頁面。
  5. 為「連線類型」指定 LDAP+SSL。
  6. 在「通訊埠」部分,選擇下列任一選項:
    • 如果原先使用 389,請指定 636
    • 如果原先使用 3268,請指定 3269。
  7. 按一下「測試連線」。
  8. 如果收到以下錯誤:
    • 憑證錯誤:在執行 GCDS 的電腦上,確認使用的是 Windows 信任的憑證。接著,繼續按照本頁下方的「步驟 2:匯入伺服器憑證」操作。
    • 憑證撤銷檢查錯誤:請按照「GCDS 如何檢查憑證撤銷清單」中的步驟操作。
    • 其他錯誤 (例如網路錯誤):請參閱「排解 GCDS 常見問題」。

匯入伺服器憑證

您也可以透過下列步驟,為使用自行簽署憑證的 LDAP 伺服器或 HTTP Proxy 匯入憑證。

  1. 登入網域控制器並開啟命令提示字元。
  2. 如要匯出網域控制器憑證,請輸入下列指令:

    certutil -store My DomainController dccert.cer

  3. 將 dccert.cer 檔案複製到安裝 GCDS 的伺服器。
  4. 以系統管理員身分開啟命令提示字元。
  5. 如要開啟 GCDS Java Runtime Environment (JRE) 安裝資料夾,請輸入下列指令:

    cd "c:\Program Files\Google Cloud Directory Sync\jre"

    如果您在 64 位元版本的 Windows 上執行 32 位元版本的 GCDS,請使用 cd "c:\Program Files (x86)\Google Cloud Directory Sync\jre"

  6. 如要匯入網域控制器的憑證,請輸入下列指令:

    bin\keytool -keystore lib\security\cacerts -storepass changeit -import -file c:\dccert.cer -alias mydc

    如要匯入多個憑證,請使用「mydc」以外的其他別名重複執行上述步驟。

  7. 輸入 Yes 即可信任該憑證。
  8. 關閉「設定管理員」。
  9. 在 GCDS 安裝目錄中,使用文字編輯器開啟 sync-cmd.vmoptions 和 config-manager.vmoptions 檔案。
  10. 將下列資訊分別從上述檔案中移除:

    -Djavax.net.ssl.trustStoreProvider=SunMSCAPI
    -Djavax.net.ssl.trustStoreType=Windows-ROOT

    移除上述資訊後,GCDS 就會使用儲存在 lib/security/cacerts 的憑證,而非 Windows 系統中的憑證。

  11. 開啟「設定管理員」,前往「LDAP 設定」頁面,然後按一下「測試連線」。
  12. 如果系統仍然顯示憑證相關錯誤訊息,您可能必須匯入貴機構的憑證授權單位 (CA) 憑證,而不是網域控制站的憑證。如要執行此操作,請重複上述步驟,但改為匯出及匯入 CA 憑證。

Linux 步驟

您也可以透過下列步驟,為使用自行簽署憑證的 LDAP 伺服器或 HTTP Proxy 匯入憑證。

  1. 登入網域控制器並開啟命令提示字元。
  2. 如要找出網域憑證,請輸入下列指令:

    certutil -store My DomainController dccert.cer

  3. 將 dccert.cer 檔案複製到安裝 GCDS 的伺服器。
  4. 如要開啟 GCDS Java Runtime Environment (JRE) 安裝資料夾,請開啟命令提示字元並輸入下列指令:

    cd ~/GoogleCloudDirSync/jre

  5. 如要匯入網域控制器的憑證,請輸入下列指令:

    bin/keytool -keystore lib/security/cacerts -storepass changeit -import -file ~/dccert.cer -alias mydc

    如要匯入多個憑證,請使用「mydc」以外的其他別名重複執行上述步驟。

  6. 輸入 Yes 即可信任該憑證。
  7. 關閉「設定管理員」。
  8. 在 GCDS 安裝目錄中,使用文字編輯器開啟 sync-cmd.vmoptions 和 config-manager.vmoptions 檔案。

    安裝目錄通常是 ~/GoogleCloudDirSync。

  9. 將下列資訊分別從上述檔案中移除:

    -Djavax.net.ssl.trustStoreProvider=SunMSCAPI
    -Djavax.net.ssl.trustStoreType=Windows-ROOT

    移除上述資訊後,GCDS 就會使用儲存在 lib/security/cacerts 的憑證,而非 Windows 系統中的憑證。

  10. 開啟「設定管理員」,前往「LDAP 設定」頁面,然後按一下「測試連線」。
  11. 如果系統仍然顯示憑證相關錯誤訊息,您可能必須匯入貴機構的憑證授權單位 (CA) 憑證,而不是網域控制站的憑證。如要執行此操作,請重複上述步驟,但改為匯出及匯入 CA 憑證。

GCDS 如何檢查憑證撤銷清單

GCDS 連線至 Google API (透過 HTTPS) 與 LDAP over SSL 時,需驗證安全資料傳輸層 (SSL) 憑證,方法是透過 HTTP 從憑證授權單位擷取憑證撤銷清單 (CRL)。有時驗證會失敗,這通常是因為 Proxy 或防火牆封鎖了 HTTP 要求。

請確認 GCDS 伺服器可透過 HTTP (通訊埠 80) 存取下列網址:

  • http://crl.pki.goog
  • http://c.pki.goog

如要進一步瞭解目前的 CRL,請參閱「CRL 檢查」。如果您使用自己的 LDAP over SSL 憑證,日後可能需要其他網址。

如果您不允許使用者存取 CRL,可以關閉 CRL 檢查功能。

  1. 在 GCDS 安裝目錄中,使用文字編輯器開啟 sync-cmd.vmoptions 和 config-manager.vmoptions 檔案。

    安裝目錄的路徑通常是 C:\Program Files\Google Cloud Directory Sync (Windows) 或 ~/GoogleCloudDirSync (Linux)。

  2. 在檔案中加入下列幾行內容:

    -Dcom.sun.net.ssl.checkRevocation=false
    -Dcom.sun.security.enableCRLDP=false

改用 LDAP + SSL 後同步處理速度變慢

如果您已改用 LDAP+SSL,但同步處理速度變慢,請按照下列步驟操作:

  1. 關閉「設定管理員」。
  2. 在 GCDS 安裝目錄中,使用文字編輯器開啟 sync-cmd.vmoptions 和 config-manager.vmoptions 檔案。

    安裝目錄的路徑通常是 C:\Program Files\Google Cloud Directory Sync (Windows) 或 ~/GoogleCloudDirSync (Linux)。

  3. 編輯上述檔案,在其中新增下列資訊:

    -Dcom.sun.jndi.ldap.connect.pool.protocol=plain ssl
    -Dcom.sun.jndi.ldap.connect.pool.authentication=none simple

  4. 儲存檔案並重新嘗試同步處理。

在 Microsoft ADV190023 更新後確認驗證作業正常

如果您使用 Microsoft Active Directory 時已開啟通道繫結和 LDAP 簽署功能,就必須採取額外步驟,確保 GCDS 透過 SSL 使用 LDAP 進行驗證,否則 GCDS 將無法連線至 Active Directory,您的同步處理作業也會失敗。即使您先前使用標準 LDAP 驗證執行同步作業,也必須採取這些步驟。如要進一步瞭解 Microsoft 諮詢 ADV190023,請參閱 Microsoft 說明文件。

如果您已成功使用 LDAP over SSL 進行驗證,則無須採取任何步驟。

步驟 1:在 Active Directory 中開啟 TLS

傳輸層安全標準 (TLS) 和安全資料傳輸層 (SSL) 這兩個詞經常是互通的。

如要在 Active Directory 中啟用 TLS,請參閱下列 Microsoft 文章:

步驟 2:確認使用可信任的憑證

簽署網域控制站憑證的憑證授權單位 (CA) 必須受到 GCDS 信任。而 GCDS 信任大多數知名的網際網路 CA (例如 Verisign、Comodo 和 Let's Encrypt)。如果您使用的是這些 CA,即可略過這個步驟。

如果您的 CA 不受信任,或是您使用自己的根 CA,請按照上述「修正憑證相關錯誤」一節的步驟操作。

步驟 3:配置設定管理員

  1. 開啟「設定管理員」,然後前往「LDAP Configuration」(LDAP 設定) 頁面。
  2. 在「Connection type」(連線類型) 設定中,指定「LDAP + SSL」連線類型。
  3. 在「Port」(通訊埠) 設定中,指定「636」(如果原先使用 389) 或是「3269」(如果原先使用 3268)。
  4. 按一下「測試連線」。


Google、Google Workspace 和其他相關符號及標誌均為 Google LLC 的商標。所有其他公司名稱和產品名稱則為相關公司的商標。