附錄

設定 XSP 驗證服務(使用 mTLS)

完成本附錄中的程序,將 BroadWorks 上的驗證服務設定為使用 mTLS 驗證。 在不支援 CI 權杖驗證(使用 TLS)的情況下,必須執行 mTLS 驗證,包括下列情況:

  • 如果正在執行 R21SP1

  • 如果正在執行 R22 或更高版本,且有多個 Webex 組織在同一個 XSP 伺服器執行


如果正在執行 R22 或更高版本,但沒有多個 Webex 組織在同一個 XSP 伺服器上執行,則建議驗證服務使用 CI 權杖驗證(使用 TLS)。

安裝驗證服務

在 BroadWorks 21SP1 上,驗證服務是未受管理的應用程式。 請完成下列步驟來安裝它:

  1. 從 Xchange (https://xchange.broadsoft.com/node/499012) 下載 authenticationService_1.0.war (Web 應用程式資源) 檔案。

    在搭配 Webex 使用的每個 XSP 上,執行以下操作:

  2. 將 .war 檔案複製到 XSP 上的臨時位置,例如 /tmp/

  3. 使用下列 CLI 內容與指令安裝驗證服務應用程式:

    XSP_CLI/Maintenance/ManagedObjects> install application /tmp/authenticationService_1.0.war

設定驗證服務

BroadWorks 長時間使用權杖會由您 XSP 上託管的驗證服務產生及驗證。

需求

  • 託管驗證服務的 XSP 伺服器必須已設定 mTLS 介面。

  • XSP 必須共用相同的金鑰,以加密/解密 BroadWorks 長時間使用權杖。 將這些金鑰複製到每個 XSP 是一個手動過程。

  • XSP 必須與 NTP 同步。

組態概觀

您的 XSP 上的基本組態包括:

  • 部署驗證服務。

  • 將權杖持續時間設定為至少 60 天(將簽發者保留為 BroadWorks)。

  • 跨 XSP 產生和共用 RSA 金鑰。

  • 向 Web 容器提供 authService URL。

在 XSP 上部署驗證服務

在搭配 Webex 使用的每個 XSP 上:

  1. 啟動路徑 /authService 上的驗證服務應用程式(您必須使用此路徑):

    XSP_CLI/Maintenance/ManagedObjects> activate application authenticationService <version> /authService

    (其中 <version>1.0 ,這適用於 21SP1 上未受管理的應用程式)。

  2. 部署應用程式:

    XSP_CLI/Maintenance/ManagedObjects> deploy application /authService

設定權杖持續時間

  1. 檢查現有的權杖組態(小時):

    在 21SP1 上: XSP_CLI/Applications/authenticationService_1.0/TokenManagement> get

  2. 將持續時間設定為 60 天(最長為 180 天):

    在 21SP1 上: XSP_CLI/Applications/authenticationService_1.0/TokenManagement> set tokenDuration 1440

產生及共用 RSA 金鑰

  • 您必須在驗證服務的所有實例之間使用相同的公開/私密金鑰組進行權杖加密/解密。

  • 首次要求發出權杖時,驗證服務會產生金鑰組。

由於這兩個因素,您需要在一個 XSP 上產生金鑰,然後將金鑰複製到所有其他 XSP。


如果您迴圈金鑰或變更金鑰長度,您需要重複下列組態並重新啟動所有 XSP。

  1. 選取一個 XSP 用於產生金鑰組。

  2. 使用用戶端從該 XSP 請求加密權杖,方法是從用戶端的瀏覽器請求下列 URL:

    https://<XSP-IPAddress>/authService/token?key=BASE64URL(clientPublicKey)

    (如果還沒有的話,這會在 XSP 上產生私密/公開金鑰組)

  3. (僅 21SP1)使用下列指令檢查可設定金鑰位置:

    XSP_CLI/Applications/authenticationService_1.0/KeyManagement> get

  4. (僅 21SP1)記下返回的 fileLocation 參數。

  5. (僅 21SP1)複製整個 fileLocation 目錄(包含 publicprivate 子目錄)至所有其他 XSP。

向 Web 容器提供 authService URL

XSP 的 Web 容器需要 authService URL,才能驗證權杖。

在每個 XSP 上:

  1. 新增驗證服務 URL 作為 BroadWorks Communications 公用程式的外部驗證服務:

    XSP_CLI/System/CommunicationUtility/DefaultSettings/ExternalAuthentication/AuthService> set url http://127.0.0.1/authService

  2. 新增驗證服務 URL 至容器:

    XSP_CLI/Maintenance/ContainerOptions> add tomcat bw.authservice.authServiceUrl http://127.0.0.1/authService

    這可讓 Cisco Webex 使用驗證服務來驗證呈現為認證的權杖。

  3. 使用下列指令檢查參數: get

  4. 重新啟動 XSP。

設定驗證服務(使用 mTLS)的信任

設定信任 (R21 SP1)
  1. 登入 Partner Hub。

  2. 轉至 設定 > BroadWorks Calling,然後按一下下載 Webex CA 憑證以將CombinedCertChain.txt 下載至本地電腦。


    此檔案包含兩個憑證。 必須先分割檔案,然後再將其上傳至 XSP。
  3. 將憑證鏈分割為兩個憑證:

    1. 開啟 combinedcertchain.txt (在文字編輯器中)。

    2. 選取並剪下第一個文字區塊,包括行 -----BEGIN CERTIFICATE----------END CERTIFICATE----- ,然後將文字區塊貼至新檔案。

    3. 將新檔案儲存為 broadcloudroot.txt

    4. 將原始檔案儲存為 broadcloudissuing.txt

      現在,原始檔案應該只有一個文字區塊,被下列行所包圍: -----BEGIN CERTIFICATE----------END CERTIFICATE-----

  4. 將兩個文本檔案都複製到您正在保護的 XSP 上的臨時位置,例如: /tmp/broadcloudroot.txt/tmp/broadcloudissuing.txt

  5. 登入 XSP 並導覽至 /XSP_CLI/Interface/Http/ClientAuthentication>

  6. 執行 get 指令並讀取 chainDepth 參數。

    (預設情況下,chainDepth 為 1,對於擁有兩個憑證的 Webex 鏈,此預設值太低)

  7. 如果 chainDepth 不大於 2,請執行 set chainDepth 2

  8. (可選)執行 help updateTrust 以查看參數和指令格式。

  9. 將憑證檔案上傳至新的信賴起點:

    XSP_CLI/Interface/Http/ClientAuthentication/Trusts> updateTrust webexclientroot /tmp/broadcloudroot.txt

    XSP_CLI/Interface/Http/ClientAuthentication/Trusts> updateTrust webexclientissuing /tmp/broadcloudissuing.txt


    webexclientrootwebexclientissuing 是信賴起點的範例別名;您可使用自己的別名。
  10. 確認兩個憑證已上傳:

    /XSP_CLI/Interface/Http/ClientAuthentication/Trusts> get

設定信任(R22 及更高版本)

  1. 使用合作夥伴管理員帳戶來登入 Control Hub。

  2. 轉至 設定 > BroadWorks Calling,然後按一下下載 Webex CA 憑證以將CombinedCertChain.txt 下載至本地電腦。


    此檔案包含兩個憑證。 必須先分割檔案,然後再將其上傳至 XSP。
  3. 將憑證鏈分割為兩個憑證:

    1. 開啟 combinedcertchain.txt (在文字編輯器中)。

    2. 選取並剪下第一個文字區塊,包括行 -----BEGIN CERTIFICATE----------END CERTIFICATE----- ,然後將文字區塊貼至新檔案。

    3. 將新檔案儲存為 broadcloudroot.txt

    4. 將原始檔案儲存為 broadcloudissuing.txt

      現在,原始檔案應該只有一個文字區塊,被下列行所包圍: -----BEGIN CERTIFICATE----------END CERTIFICATE-----

  4. 將兩個文本檔案都複製到您正在保護的 XSP 上的臨時位置,例如: /tmp/broadcloudroot.txt/tmp/broadcloudissuing.txt

  5. (可選)執行 help UpdateTrust 以查看參數和指令格式。

  6. 將憑證檔案上傳至新的信賴起點:

    XSP_CLI/Interface/Http/SSLCommonSettings/ClientAuthentication/Trusts> updateTrust webexclientroot /tmp/broadcloudroot.txt

    XSP_CLI/Interface/Http/SSLCommonSettings/ClientAuthentication/Trusts> updateTrust webexclientissuing /tmp/broadcloudissuing.txt


    webexclientrootwebexclientissuing 是信賴起點的範例別名;您可使用自己的別名。
  7. 確認起點已更新:

    XSP_CLI/Interface/Http/SSLCommonSettings/ClientAuthentication/Trusts> get

      Alias   Owner                                   Issuer
    =============================================================================
    webexclientissuing    BroadCloud Commercial Issuing CA – DA3     BroadCloud Commercial Trusted Root CA
    webexclientroot       BroadCloud Commercial Trusted Root CA      BroadCloud Commercial Trusted Root CA[self-signed]

(選項)設定 HTTP 介面/連接埠層級的 mTLS

可設定 HTTP 介面/連接埠層級的 mTLS,或根據 Web 應用程式設定 mTLS。

該如何啟用應用程式的 mTLS 取決於您在 XSP 上託管的應用程式。 如果您託管的是需要 mTLS 的多個應用程式,則應啟用介面上的 mTLS。 如果您只需要防護使用同一 HTTP 介面的多個應用程式之一,則可設定應用程式層級的 mTLS。

設定 HTTP 介面/連接埠層級的 mTLS 時,透過此介面/連接埠存取的所有託管 Web 應用程式都需使用 mTLS。

  1. 登入要設定其介面的 XSP。

  2. 導覽至 XSP_CLI/Interface/Http/HttpServer> 並執行 get 指令以查看介面。

  3. 若要新增介面並要求在介面內驗證用戶端(等同於 mTLS):

    XSP_CLI/Interface/Http/HttpServer> add IPAddress Port Name true true

    如需詳細資訊,請參閱 XSP CLI 文件集。 實際上,第一個 true 使用 TLS 保護介面(需要時會建立伺服器憑證),第二個 true 強制介面要求用戶端憑證驗證(二者都是 mTLS)。

例如:

XSP_CLI/Interface/Http/HttpServer> get

Interface Port Name Secure Client Auth Req Cluster Fqdn
         =======================================================
         192.0.2.7 443 xsp01.collab.example.net true false 
         192.0.2.7 444 xsp01.collab.example.net true true

在此範例中,mTLS (Client Auth Req = true) 已在下列埠上啟用: 192.0.2.7444 。 TLS 已在下列埠上啟用: 192.0.2.7 443

(選項)為特定的 Web 應用程式設定 mTLS

可設定 HTTP 介面/連接埠層級的 mTLS,或根據 Web 應用程式設定 mTLS。

該如何啟用應用程式的 mTLS 取決於您在 XSP 上託管的應用程式。 如果您託管的是需要 mTLS 的多個應用程式,則應啟用介面上的 mTLS。 如果您只需要防護使用同一 HTTP 介面的多個應用程式之一,則可設定應用程式層級的 mTLS。

設定應用程式層級的 mTLS 時,無論 HTTP 伺服器介面組態為何,該應用程式都需使用 mTLS。

  1. 登入要設定其介面的 XSP。

  2. 導覽至 XSP_CLI/Interface/Http/SSLCommonSettings/ClientAuthentication/WebApps> 並執行 get 指令以查看哪些應用程式在執行中。

  3. 若要新增應用程式並要求驗證用戶端(等同於 mTLS):

    XSP_CLI/Interface/Http/SSLCommonSettings/ClientAuthentication/WebApps> add IPAddress Port ApplicationName true

    如需詳細資訊,請參閱 XSP CLI 文件集。 該處會列舉出應用程式名稱。 該 true (位於此指令中)會啟用 mTLS。

例如:

XSP_CLI/Interface/Http/SSLCommonSettings/ClientAuthentication/WebApps> add 192.0.2.7 443 AuthenticationService true

以上範例指令將 AuthenticationService 應用程式新增加至 192.0.2.7:443 並要求它向用戶端索取並驗證憑證。

使用下列指令進行檢查: get

XSP_CLI/Interface/Http/SSLCommonSettings/ClientAuthentication/WebApps> get

Interface Ip Port Application Name Client Auth Req
         ===================================================
         192.0.2.7 443 AuthenticationService      true          

AuthService 雙向 TLS 驗證的其他憑證需求

Cisco Webex 透過雙向 TLS 驗證連線與驗證服務互動。 這意味著 Webex 提供用戶端憑證,且 XSP 必須對其進行驗證。 若要信任此憑證,請使用 Webex CA 憑證鏈在 XSP(或 Proxy)上建立信任起點。 憑證鏈可透過 Partner Hub 下載:

  1. 移至設定 > BroadWorks Calling

  2. 按一下下載憑證鏈結。


部署此 Webex CA 憑證鏈的確切需求取決於您的公開 XSP 部署方式:

  • 透過 TLS 橋接 Proxy

  • 透過 TLS 傳遞 Proxy

  • 直接連線至 XSP

下圖總結了在下列三種情況下必須部署 Webex CA 憑證鏈。

TLS 橋接 Proxy 的雙向 TLS 憑證需求

  • Webex 向 Proxy 顯示 Webex CA 簽署的用戶端憑證。

  • Webex CA 憑證鏈部署在 Proxy 信任存放區上,因此 Proxy 信任用戶端憑證。

  • 公開簽署的 XSP 伺服器憑證也要載入 Proxy。

  • Proxy 向 Webex 顯示公開簽署的伺服器憑證。

  • Webex 信任簽署 Proxy 伺服器憑證的公用 CA。

  • Proxy 向 XSP 顯示內部簽署的用戶端憑證。

    此憑證必須在 x509.v3 擴充功能欄位的擴充金鑰使用方法填入 BroadWorks OID 1.3.6.1.4.1.6431.1.1.8.2.1.3 和 TLS clientAuth 用途。 例如:

    X509v3 extensions:

    X509v3 Extended Key Usage:

    1.3.6.1.4.1.6431.1.1.8.2.1.3, TLS Web Client
                  Authentication 

    針對 Proxy 產生內部用戶端憑證時,請注意 SAN 憑證不受支援。 XSP 的內部伺服器憑證可以是 SAN。

  • XSP 信任內部 CA。

  • XSP 顯示內部簽署的伺服器憑證。

  • Proxy 信任內部 CA。

DMZ 中雙向 TLS 傳遞 Proxy 或 XSP 的 TLS 憑證需求

  • Webex 向 XSP 顯示 Webex CA 簽署的用戶端憑證。

  • Webex CA 憑證鏈部署在 XSP 信任存放區上,因此 XSP 信任用戶端憑證。

  • 公開簽署的 XSP 伺服器憑證也要載入 XSP。

  • XSP 向 Webex 顯示公開簽署的伺服器憑證。

  • Webex 信任簽署 XSP 伺服器憑證的公用 CA。