TLS 檢查用於偵測和防止已加密 TLS 通道上的進階威脅。TLS 檢查明確解密加密的流量,並提供給進階安全性功能使用,例如 IDS/IPS、惡意程式碼防護和 URL 篩選。這樣不必卸載就能查看加密的流量,同時保持端對端加密。

如果沒有 TLS 檢查,則即使您對閘道防火牆啟用所有進階安全性功能,也無法強制或查看可能在封包內隱藏惡意程式碼的加密流量。TLS 解密可讓管理員對加密流量進行更有效的存取控制及威脅偵測與防護。

注意: 該功能適用於技術預覽模式。如需有關技術預覽功能的詳細資訊,請參閱 《NSX-T Data Center 版本說明》
  • TLS 檢查支援
  • TLS 檢查概念
  • TLS 檢查原則
  • 建立 TLS 解密動作設定檔
  • TLS 檢查憑證管理

TLS 檢查支援

本主題說明 NSX-T Data Center 中的 TLS 檢查支援。

TLS 檢查支援包括:

  • 僅在第 1 層閘道上支援。
  • 支援 TLS 1.0 到 1.2 版。支援具有完全正向加密 (PFS) 的 TLS 1.2。如果使用 1.3 版,NSX Proxy 會與舊版交涉並建立連線。
  • 利用 TLS 用戶端問詢中的 TLS 伺服器名稱指示 (SNI) 將流量分類。
  • 不必卸載就能查看加密的流量,同時保持端對端加密。
  • 閘道防火牆上的 TLS 解密,可攔截流量並解密,再送往進階防火牆安全性功能。
  • TLS 檢查原則可建立一組規則來描述需符合的條件,並執行預先定義的動作。
  • TLS 檢查原則規則支援略過、外部和內部解密動作設定檔。

TLS 檢查概念

TLS 檢查透過加密的 TLS 通道來偵測並防止網路中的進階威脅。本主題涵蓋與 TLS 檢查功能相關聯的概念。

TLS 通訊協定

本主題介紹 TLS 通訊協定信號交換如何設法在用戶端和伺服器之間建立加密通道。下列 TLS 通訊協定圖提供形成加密通道所涉及的各個步驟。
圖 1. TLS 通訊協定
TLS 三向信號交換
摘要說明 TLS 通訊協定:
  • TLS 透過在用戶端和伺服器之間建立的 TCP 工作階段,起始 TLS 工作階段 (亦稱為三向信號交換)。
  • 用戶端傳送用戶端問詢,其中包含支援的 TLS 版本和密碼及伺服器名稱指示 (SNI) 延伸。TLS 檢查使用 TLS 用戶端問詢中的 SNI,根據內容設定檔將流量分類,以使用內部、外部或略過解密設定檔。
  • 伺服器以伺服器憑證來回應驗證和識別,並以客戶端建議的版本和密碼傳回伺服器問詢。
  • 用戶端驗證憑證並確認最終版本和密碼後,產生對稱工作階段金鑰並傳送至伺服器。
  • 為了起始安全 TLS 通道來透過加密 TLS 通道交換應用程式資料,伺服器驗證工作階段金鑰並傳送完成訊息。

依預設,TLS 通訊協定僅使用 X.509 憑證向客戶端證明伺服器的身分,而用戶端向伺服器驗證就留給應用程式層處理。

TLS 解密類型

TLS 檢查功能可讓使用者定義原則來解密或略過解密,TLS 檢查功能允許兩種類型的解密:
  • 內部 TLS 解密 - 適用於流向企業內部服務的流量,在此,您擁有服務、憑證和私密金鑰。這也稱為 TLS 反向 Proxy 或輸入解密。
  • 外部 TLS 解密 - 適用於流向外部服務 (網際網路) 的流量,在此,企業不擁有服務、憑證和私密金鑰。這也稱為 TLS 正向 Proxy 或輸出解密。
下圖描述 TLS 內部和外部解密類型如何處理流量。
圖 2. NSX TLS 解密類型
NSX 閘道防火牆 TLS 內部和外部類型的解密
下列圖形和表格說明 NSX TLS 外部解密如何與 NSX 搭配使用。
圖 3. 外部解密的運作方式
TLS 檢查的外部解密工作流程
標註 工作流程
1 TLS 用戶端問詢 SNI 符合 TLS 檢查原則內容設定檔。
2 NSX 攔截來自用戶端的 TLS 工作階段,對預定伺服器起始新的工作階段。
3 NSX 強制 TLS 版本和密碼 (可設定)。
4 伺服器以 TLS 憑證回應用戶端
5 NSX 使用受信任的 CA 服務包驗證伺服器憑證,然後動態產生 Proxy CA 憑證並提供給用戶端。

下列圖形和表格說明 NSX TLS 內部解密如何與 NSX 搭配使用。

圖 4. 內部解密的運作方式
TLS 檢查的外部解密工作流程
標註 工作流程
1 TLS 用戶端問詢 SNI 符合設定給內部網域的 TLS 檢查原則內容設定檔。
2 NSX 攔截來自用戶端的 TLS 工作階段,對預定伺服器起始新的工作階段。
3 NSX 強制 TLS 版本/密碼 (可設定)。
4 伺服器在 TLS 信號交換過程中以憑證回應 (可選驗證)。
5 NSX 將伺服器的憑證 (隨組態一起上傳) 提供給用戶端。

TLS 檢查原則

TLS 檢查原則適用於一或多個所選的第 1 層閘道防火牆。您首次新增 TLS 檢查原則時可以使用精靈,也可以手動設定原則及相關聯的規則。本主題說明 TLS 檢查原則的概念和建立。

NSX TLS 檢查提供以下三種類別,以輕鬆管理原則。類似於閘道防火牆類別,您可以根據需求使用任何類別來定義 TLS 檢查原則。
  • 預先定義的規則 - 定義多個閘道的原則。
  • 本機閘道 - 定義特定原則。
  • 預設值 (事後規則) - 此 TLS 預設值類別與閘道原則規則不同,因為不含任何立即可用的規則或原則預設值。您也可以在預設值類別中定義事後規則 (不在閘道防火牆表格中)。例如,使用案例可能是在設定本機閘道後,將一些常用原則新增至多個閘道。

建立 TLS 檢查原則

若要簡化第一個 TLS 檢查原則的組態,您可以使用 [TLS 檢查] 精靈,或使用 UI 手動建立原則。本主題不說明精靈組態,僅介紹手動組態步驟。

此精靈提供適用於第 1 層閘道防火牆的 TLS 檢查組態工作流程的逐步說明。此精靈僅針對第一個原則顯示在 [TLS 檢查] 首頁上,但您可以在 [所有共用規則] 和 [閘道特定規則] 索引標籤中存取此精靈。您可以在開始頁面上按一下跳過以跳過組態精靈,並手動完成原則建立和解密動作設定檔設定。

必要條件

這些必要條件對 TLS 檢查原則有效。

啟動以下設定。依預設,它們已停用。
  • 啟動每個閘道的 TLS 檢查設定。

    導覽至安全性 > TLS 檢查,然後選取設定索引標籤。從支援 TLS 的閘道清單中選取一或多個閘道,然後按一下開啟

  • 在 Edge 叢集上啟動 URL 資料庫。

    導覽至安全性 > 一般設定 > URL 資料庫。Edge 節點必須具有網際網路連線,NSX Threat Intelligence Cloud 服務 (NTICS) 才能完成 URL 資料庫下載。

  • 若要使用 [安全性] 儀表板檢視 TLS 檢查統計資料,請在 NSX-T Data Center 3.2 或更新版本的環境中部署 NSX Application Platform,並確保其處於正常狀態。需要特定授權才能進行時間序列監控。如需詳細資料,請參閱《部署和管理 NSX Application Platform》指南和監控安全性統計資料

程序

  1. 使用管理員權限來登入 NSX Manager
  2. 選取安全性 > TLS 檢查
  3. 選取要定義原則的類別,然後按一下新增原則
  4. 輸入新原則的名稱。
  5. (選用) 如果您想要防止多個使用者變更此區段,請按一下進階組態圖示,然後按一下已鎖定套用
  6. 選取您建立的原則,然後按一下新增規則
    變數 說明
    來源、目的地和 L4 服務 符合與閘道防火牆規則相同的傳入流量欄位。
    內容設定檔 定義並選取內容設定檔,以便根據 URL 類別、信譽和網域名稱將流量加以分類。如需詳細資料,請參閱內容設定檔
    解密動作設定檔 為符合的流量定義並選取解密設定檔。這可以是外部、內部和略過設定檔。如需詳細資料,請參閱〈建立 TLS 解密動作設定檔〉。
    套用至 選取一或多個第 1 層閘道。
  7. 按一下發佈
    您已完成原則建立。

建立 TLS 解密動作設定檔

您可以在 TLS 檢查中建立三種類型的解密動作設定檔。本主題介紹設定檔以及如何使用它們。

解密動作設定檔如下:
  • 略過解密設定檔 - 此設定檔用於略過傳輸至特定類別網站的流量解密,確保合規性和隱私保護。例如,醫療保健和金融網站。無法變更略過設定檔。
  • 外部解密設定檔 - 這些設定檔是針對以非企業自有服務為目的地之 TLS 連線。例如,http://merriam-webster.com。通常為網際網路網站。
  • 內部解密設定檔 - 這些設定檔是針對以企業自有服務為目的地之 TLS 連線。例如,http://www.corp.internal.com。
有關如何建立 TLS 解密動作設定檔的步驟,請參閱以下主題:
  • 建立外部解密設定檔
  • 建立內部解密動作設定檔
  • 建立略過解密動作設定檔

建立外部解密設定檔

本主題提供手動設定外部解密動作設定檔的步驟。

必要條件

  • 具有設定 TLS 檢查的正確使用者角色和權限。
  • 匯入或備妥要匯入的受信任 Proxy CA 憑證和不受信任的 Proxy CA 憑證,或具備要產生憑證的相關資訊。

程序

  1. 使用管理員權限登入 NSX Manager
  2. 導覽至安全性 > TLS 檢查 > 設定檔
  3. 按一下新增解密動作設定檔 > 外部解密
  4. 輸入新設定檔的名稱。
  5. (選用) 選取設定檔設定:平衡 (預設)、高逼真度、高安全性,或使用 [自訂] 來變更各項次要設定。
    設定檔設定 說明
    無效憑證:允許或封鎖和記錄 設定規則,以便在伺服器提供的憑證無效時允許或封鎖流量。如果選取 [允許],但伺服器提供的憑證已過期或不受信任,則此選項允許向用戶端傳送不受信任的 Proxy 憑證來繼續連線。
    解密失敗:略過和記錄或封鎖和記錄 設定若因 mTLS (相互 TLS) 或正在使用憑證關聯而導致解密失敗時要執行什麼動作。如果選取 [略過和記錄],則 NSX 會快取此網域,並略過該網域的所有後續連線。
    加密強制執行:透明或強制執行 為用戶端和伺服器設定最低和最高 TLS 版本和密碼套件。您可以使用 [透明] 選項來略過它
  6. (選用) 修改閒置連線逾時。這是建立 TCP 連線後伺服器可以保持閒置的時間 (秒數)。預設值為 5400 秒。將此逾時值保持小於閘道防火牆閒置逾時值設定。
  7. (選用) 選取 [受信任的 CA] 設定,以選取受信任的 CA 服務包、CRL 和 OCSP 裝訂選項。
    選項 敘述
    受信任的 CA 服務包 驗證外部服務向 NSX 提供的憑證。您可以使用預設的受信任 CA 服務包或匯入新的 CA 服務包,然後根據需要為每個設定檔選擇多個服務包。此服務包不會自動更新,因此您必須根據需要進行更新。如需更多詳細資料,請參閱匯入或更新受信任的 CA 服務包的〈憑證管理〉。
    CRL NSX 還包括一個 CRL (憑證撤銷清單),用於驗證伺服器提供的憑證。您可以使用預設 CRL 或匯入新的 CRL,然後根據需要為每個設定檔選擇多個 CRL。此 CRL 不會自動更新,因此您必須根據需要進行更新。如需更多詳細資料,請參閱匯入和擷取 CRL的〈憑證管理〉。
    需要 OCSP 裝訂 為提供的伺服器憑證強制執行 OSCP 裝訂。在 OCSP 裝訂中,擁有憑證的伺服器會詢問 OCSP 回應程式,並將所接收到附有時間戳記和簽署的 OCSP 回應與其憑證併在一起,作為 CertificateStatusRequest 副檔名。如果伺服器具有鏈結的憑證,則伺服器還必須為所有中繼 CA 憑證執行 OCSP 裝訂。
  8. 若要匯入或產生受信任或不受信任的 Proxy CA,請選取 [Proxy CA] 下拉式清單,選取受信任的 Proxy CA不受信任的 Proxy CA 索引標籤,然後執行下列其中一項:
    • 選取匯入 > CA 憑證
    • 選取產生 > 自我簽署 CA 憑證

      輸入所需的詳細資料,然後按一下 [儲存]。如需有關匯入 Proxy CA 的詳細資料,請參閱匯入並取代憑證

  9. 若要儲存設定檔 (其隨後可用於 TLS 檢查原則),請選取儲存

結果

現在,您可以使用解密動作設定檔,在第 1 層閘道上設定外部解密規則。

下一步

建立 TLS 檢查外部解密原則和規則。

建立內部解密動作設定檔

本主題提供手動設定內部解密動作設定檔的步驟。

必要條件

  • 具有設定 TLS 檢查的正確使用者角色和權限。
  • 匯入或備妥要匯入的內部伺服器憑證,或具備要產生憑證的相關資訊。

程序

  1. 使用管理員權限來登入 NSX Manager
  2. 選取安全性 > TLS 檢查 > 設定檔
  3. 按一下新增解密動作設定檔 > 內部解密
  4. 輸入新原則的名稱。
  5. (選用) 選取設定檔設定:平衡 (預設)、高逼真度、高安全性,或使用 [自訂] 來變更各項次要設定。
    設定檔設定 說明
    解密失敗:略過和記錄或封鎖和記錄 設定若因 mTLS (相互 TLS) 或正在使用憑證關聯而導致解密失敗時要執行什麼動作。如果您選取 [略過和記錄],則 NSX 會快取此網域,並略過該網域的所有後續連線。
    加密強制執行:透明或強制執行 為用戶端和伺服器設定最低和最高 TLS 版本和密碼套件。您可以使用 [透明] 選項來略過它。
  6. (選用) 修改閒置連線逾時。這是建立 TCP 連線後伺服器可以保持閒置的時間 (秒數)。預設值為 5400 秒。將此逾時值保持小於閘道防火牆閒置逾時值設定。
  7. 展開伺服器憑證和金鑰區段,然後設定一或多個內部伺服器憑證。
    1. 匯入憑證或 CA 憑證。請參閱匯入自我簽署的憑證或 CA 簽署的憑證
    2. 產生自我簽署憑證或自我簽署 CA 憑證。
    3. 按一下列首的核取方塊,以選取現有的伺服器憑證。
    4. 按一下列尾的預設值選項按鈕,將現有伺服器憑證設為預設值。

    如果用戶端問詢中不存在 SNI 延伸,則會向用戶端提供預設伺服器憑證。如果未設定此選項,則 TLS Proxy 不會攔截用戶端問詢中不包含 SNI 延伸的連線。如果 SNI 延伸存在於用戶端問詢中,但在設定的憑證清單中沒有與之相符的憑證,則 TLS Proxy 不會攔截這些連線。

    當用戶端存取其中一個內部服務時,TLS Proxy 會根據伺服器網域的相符情形,將這個選取的憑證提供給 Issued-to-field (CN) 欄位。

    如果設定多個伺服器憑證,它們的網域必須不同,由 [一般名稱] (CN) 或 [主體替代名稱] (SAN) 指定。不能為同一個網域設定兩個憑證:FQDN (例如,www.vmware.com) 或萬用字元 (*.vmware.com)。但是,允許憑證中的萬用字元網域與特定 FQDN 憑證重疊。在這種情況下,當根據用戶端問詢中的 SNI 延伸來選取要提供給用戶端的憑證時,更具體的憑證將優於萬用字元憑證。

  8. (選用) 依預設,伺服器憑證驗證是選用的,依預設為停用。如果它是企業自有服務,則不需設定。如果您想要強制執行此驗證,請將 [伺服器憑證驗證] 切換至開啟
    1. 展開此區段並設定驗證選項。您可以選擇預設的受信任 CA 服務包和 CRL,或匯入它們。
    2. 按一下儲存

結果

現在,您可以使用內部解密動作設定檔在第 1 層閘道上設定 TLS 檢查原則和規則。

下一步

建立 TLS 檢查內部解密原則和規則。

建立略過解密動作設定檔

本主題提供有關略過解密動作設定檔的詳細資料。

必要條件

您所在地政府和企業隱私權政策可能禁止解密某些內容。例如,當客戶存取金融網站或醫療保健提供者網站時,法律可能禁止攔截和解密此類流量。

為了便於設定,NSX 包含一個預先定義的內容設定檔 default-bypass-highfidelity-profile,以滿足此類需求。NSX 使用內容設定檔來比對在解密時要跳過或略過的網域 URL。預設設定檔包括 URL 類別:醫療保健和金融。

在此版本中,您無法建立略過解密動作設定檔或修改預設設定檔。預設設定檔具有以下設定檔設定:
設定檔設定 說明
無效憑證:允許 設定為允許 - 如果伺服器提供的憑證已到期或不受信任,則此選項將允許繼續進行連線。
加密強制執行:透明 設定為透明 - 如果 URL 符合略過解密設定檔規則,則不會發生密碼或 TLS 版本強制執行。

TLS 檢查憑證管理

NSX-T Data Center 上的 TLS 檢查需要安全性憑證。若要攔截、解密和加密 TLS 檢查及其他進階安全性應用程式的流量,您必須準備將 TLS Proxy 當作 TLS 連線的透明 Proxy。NSX Manager 需要這些憑證,才能在應用程式之間建立信任。

憑證管理支援下列 TLS 檢查選項。
  • 匯入現有憑證或產生新的自我簽署或 CA 自我簽署 CSR (憑證簽署要求)。
  • 匯出現有憑證。
  • 匯入或更新預設受信任的 CA 服務包。
  • 匯入或更新預設公用憑證撤銷清單 (CRL)。
  • 進階篩選所有預先定義的篩選器選項。
  • [憑證] 頁面上到期的憑證橫幅。
  • 有效或無效憑證的色彩編碼通知。

如需這些選項的相關資訊,請參閱憑證

TLS Proxy 需要 CA 憑證 (也稱為 Proxy CA)。NSX Manager 使用 Proxy CA 來產生憑證,以在攔截的連線中模擬端點。換句話說,這有助於對網站伺服器上攔截的流量偽裝憑證。有兩種 Proxy CA 憑證供您選擇:

若要產生憑證在攔截的連線中模擬端點,TLS Proxy 需要 CA 憑證 (也稱為 Proxy CA)。 NSX Manager 使用 Proxy CA。換句話說,這有助於偽裝。有兩種 Proxy CA 憑證供您選擇:
  • 自我簽署憑證通常用於不受信任的測試或有限部署。此工作流程首先向 NSX Manager 要求產生 CA 憑證金鑰配對及 CSR (憑證簽署要求)。接著向 NSX manager 要求自我簽署 CSR。
  • 核發 CA 的企業簽署受信任的下層 CA 憑證。此工作流程首先向 NSX Manager 要求產生 CA 憑證金鑰配對及 CSR,下載 CSR,然後將 CSR 提交到核發 CA,進而接收簽署的憑證。接著,將簽署的公用 CA 憑證上傳至 NSX Manager。上傳時可以包含憑證鏈結。憑證鏈結是介於新憑證和根 CA 憑證之間的中繼簽署憑證。

有幾種方法可將新的 CA 憑證上傳至 NSX manager:使用 UI 中的 TLS 精靈、在 UI 中手動新增憑證,或使用 NSX API。如需詳細資料,請參閱匯入 CA 憑證

受信任的 CA 服務包

設定後,這些 CA 憑證會分發給執行 TLS Proxy 的節點。您可以上傳不同名稱的多個 CA 憑證服務包。TLS Proxy 使用的每個 CA 服務包都在解密動作設定檔中設定。上傳後,將驗證 CA 服務包是否為一連串正確格式的 PEM 編碼憑證,如果無效,則不會儲存。如果服務包無效,則會傳回 API 錯誤訊息。

單一服務包以 1 MB 大小和 1,000 個憑證為限。

憑證撤銷清單

為了確保所攔截連線的端點提供的憑證不被撤銷,您可以使用 TLS Proxy CRL:default_public_crl。您可以上傳新的 CRL 取代現有 CRL,以更新此物件。您可以將它用在原則設定檔中。若要將新的 CRL 上傳至 NSX Manager,請使用 UI 或 API。CRL 會分發給執行 TLS Proxy 的節點。上傳 CRL 後,API 會立即驗證 CRL,如果無效,則拒絕儲存。 NSX 支援兩種 CRL 格式:
  • PEM 編碼的 X.509 CRL - 大小上限為 40 MB,項目為 500,000 個
  • Mozilla OneCRL - 大小上限為 5 MB,項目為 10,000 個

TLS 檢查憑證的警示處理

如果您不維護 Proxy CA 憑證,而憑證即將到期或已到期,或您收到已到期的 CA 憑證,NSX Manager 會透過警示來通知您。

對於 CA 服務包中即將到期或已到期的憑證,NSX 會發出同一組警示。

您也可能由於 TLS 憑證無效而收到遠端記錄伺服器錯誤。記錄的事件錯誤是 Log messages to logging server {hostname_or_ip_address_with_port}({entity_id}) cannot be delivered possibly due to an unresolvable FQDN, an invalid TLS certificate or missing NSX appliance iptables rule.。若要驗證指定的憑證是否有效,請使用 openssl 命令 openssl x509 -in <cert-file-path> -noout -dates。您也可以在 TLS 檢查 UI 中檢視和更新憑證。

如需憑證到期的更多詳細資料,請參閱憑證到期的警示通知。有關 NSX Manager 發出的 TLS 特定「憑證事件」的詳細資料,請參閱事件目錄