SSL 政策總覽

在本文件中,「SSL」SSL一詞指的是安全資料傳輸層 (SSL) 和傳輸層安全標準 (TLS) 通訊協定。本文資訊適用於透過 TCP 傳輸通訊協定的 TLS 連線,這類連線可使用任何支援的 TLS 版本。使用 HTTP/3 的負載平衡器會採用 QUIC 做為基礎傳輸通訊協定,且僅使用 TLS 1.3。

SSL 政策是 Google Cloud 設定物件,可讓您控管負載平衡器終止用戶端 TLS 連線的方式。SSL 政策會與目標 HTTPS Proxy 或目標 SSL Proxy 建立關聯。SSL 政策會指定 TLS 功能設定檔和最低 TLS 版本。

SSL 政策的每個預先定義設定檔,都會指定負載平衡器設定支援的 TLS 功能組合。最低 TLS 版本會進一步限制負載平衡器,只能使用特定版本的 TLS。如需指定支援 TLS 1.2 以下版本使用的特定加密套件,則可使用自訂設定檔。每個 SSL 政策都有相關聯的範圍,視負載平衡器而定,可以是全域或區域。

下列負載平衡器支援全域 SSL 政策:

  • 全域外部應用程式負載平衡器
  • 傳統版應用程式負載平衡器
  • 跨區域內部應用程式負載平衡器
  • 全域外部 Proxy 網路負載平衡器
  • 傳統版 Proxy 網路負載平衡器

下列負載平衡器支援區域性 SSL 政策:

  • 區域性外部應用程式負載平衡器
  • 區域性內部應用程式負載平衡器

您可以選擇是否將 SSL 政策與目標 HTTPS Proxy 或目標 SSL Proxy 建立關聯。每個目標 HTTPS Proxy 或目標 SSL Proxy 最多只能與一項 SSL 政策建立關聯。只要 SSL 政策和目標 Proxy 使用相同的範圍,您就可以將相同的 SSL 政策與多個目標 HTTPS Proxy 或多個目標 SSL Proxy 建立關聯。變更 SSL 政策不會改變或中斷現有的負載平衡器連線。

下列範例顯示如何在負載平衡器上建立及終止來自用戶端的連線。

外部應用程式負載平衡器或外部 Proxy 網路負載平衡器中的用戶端連線。 外部應用程式負載平衡器或外部 Proxy 網路負載平衡器中的用戶端連線 (按一下即可放大)。

您可以使用 SSL 政策,設定負載平衡器中啟用的最低 TLS 版本和 SSL 功能。SSL 政策會影響用戶端與負載平衡器之間的連線 (圖中的連線 1)。SSL 政策不會影響負載平衡器與後端之間的連線 (圖中的連線 2)。

建立 SSL 政策

建立 SSL 政策時,請指定下列資訊:

  • 設定檔,指定負載平衡器設定支援的 TLS 功能組合,以及
  • 最低 TLS 版本,進一步限制負載平衡器只能使用特定版本的 TLS。

連線至負載平衡器時,用戶端會公告其支援的傳輸層安全標準 (TLS) 通訊協定版本、加密套件和其他 TLS 功能。在 TLS 交握期間,負載平衡器會選擇負載平衡器和用戶端都支援的最新 TLS 通訊協定版本,並為連線選擇其他 TLS 參數 (包括加密套件)。如果負載平衡器和用戶端不支援重疊的傳輸層安全標準 (TLS) 版本、加密套件和其他功能,傳輸層安全標準 (TLS) 握手就會失敗。

預先定義的設定檔

Google Cloud 提供下列預先定義的設定檔。

  • COMPATIBLE:支援的用戶端組合範圍最廣,涵蓋僅能使用舊版 TLS 和 TLS 功能的用戶端。
  • MODERN。支援廣泛的 TLS 密碼,可讓使用現行版本的用戶端與 TLS 交涉。
  • RESTRICTED。支援較少的 TLS 加密法。RESTRICTED 設定檔適用於較嚴格的法規遵循規定。
  • FIPS_202205。支援一組 TLS 功能,旨在符合 FIPS 140-3 標準

自訂設定檔

當負載平衡器交涉 TLS 1.2 以下版本時,COMPATIBLEMODERNRESTRICTED 設定檔支援的加密套件組合有所不同。如要瞭解這些差異,請參閱「TLS 1.2 以下版本的密碼編譯套件」一節中的表格

您也可以建立 CUSTOM 設定檔,並個別指定負載平衡器支援的 TLS 1.2 以下版本加密套件。這不會影響負載平衡器交涉 TLS 1.3 的方式。

未指定 SSL 政策時的行為

如果未將 SSL 政策與目標 HTTPS Proxy 或目標 SSL Proxy 建立關聯,負載平衡器會以關聯 SSL 政策的方式運作,並採用下列設定:

  • 選取 COMPATIBLE 設定檔,以及
  • 最低 TLS 版本設為 1.0

支援的 TLS 版本

請注意,設定檔可以間接限制負載平衡器可以交涉的 TLS 版本。舉例來說,RESTRICTED 設定檔中啟用的加密套件包含 TLS 1.0 或 1.1 支援的任何加密套件;因此,即使 SSL 政策的最低 TLS 版本設為 1.0 或 1.1,選擇 RESTRICTED 設定檔實際上會禁止用戶端使用 TLS 1.0 和 1.1。

Cloud Load Balancing 不支援 SSL 3.0 以下版本。下表說明各個 TLS/SSL 版本的功能支援。

TLS/SSL 版本 功能支援
TLS 1.3

除了 FIPS_202205 設定檔以外,所有設定檔都支援下列 TLS 1.3 加密套件:

  • TLS_AES_128_GCM_SHA256
  • TLS_AES_256_GCM_SHA384
  • TLS_CHACHA20_POLY1305_SHA256

FIPS_202205 設定檔支援下列兩種 TLS 1.3 加密套件:

  • TLS_AES_128_GCM_SHA256
  • TLS_AES_256_GCM_SHA384
TLS 1.2 以下版本 SSL 政策使用的設定檔會控管搭配 TLS 1.2 以下版本使用的加密套件
SSL 3.0 或以下版本 使用 SSL 政策的負載平衡器不支援這項功能。

TLS 1.2 以下版本的加密套件

下表列出各預先定義設定檔中包含的 TLS 1.2 以下版本密碼編譯套件。建立使用 CUSTOM 設定檔的 SSL 政策時,您可以個別選取這些加密套件。使用 CUSTOM 設定檔的 SSL 政策必須包含下列清單中的至少一個加密套件。

IANA 功能 COMPATIBLE MODERN RESTRICTED FIPS_202205
0xCCA9 TLS_ECDHE_ECDSA_WITH_CHACHA20_POLY1305_SHA256
0xCCA8 TLS_ECDHE_RSA_WITH_CHACHA20_POLY1305_SHA256
0xC02B TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256
0xC02F TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256
0xC02C TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384
0xC030 TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384
0xC009 TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA
0xC013 TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA
0xC00A TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA
0xC014 TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA
0x009C TLS_RSA_WITH_AES_128_GCM_SHA256
0x009D TLS_RSA_WITH_AES_256_GCM_SHA384
0x002F TLS_RSA_WITH_AES_128_CBC_SHA
0x0035 TLS_RSA_WITH_AES_256_CBC_SHA
0x000A TLS_RSA_WITH_3DES_EDE_CBC_SHA

FIPS_202205 商家檔案詳細資料

FIPS_202205 設定檔會限制負載平衡器使用一組 TLS 功能,確保符合 FIPS 140-3 標準。如果 SSL 政策使用這個設定檔,負載平衡器會支援 TLS 1.2 或 1.3,但有下列限制:

  • 如果 TLS 連線使用 TLS 1.2,則只允許下列加密套件:

    • TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256
    • TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256
    • TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384
    • TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384
  • 如果 TLS 連線使用 TLS 1.3,則只允許下列加密套件:

    • TLS_AES_128_GCM_SHA256
    • TLS_AES_256_GCM_SHA384
  • 金鑰協議只能使用 P-256P-384

  • 只能使用下列負載平衡器憑證數位簽章:

    • PKCS#1/PSS,搭配 SHA-256SHA-384SHA-512
    • 搭配 P-256P-384SHA-256SHA-384 的 ECDSA

功能更新

我們保留權利,可更新 COMPATIBLEMODERNRESTRICTED 設定檔中啟用的功能組合,以及 CUSTOM 設定檔中可設定的功能。當我們移除對舊版 TLS 功能的支援並新增新版功能的支援時,Google 便會執行更新。

當我們新增強化 TLS 技術能力的功能時,可能會立即在 COMPATIBLEMODERNRESTRICTED 設定檔中啟用這些功能,如此採用這些設定檔的 SSL 政策便可使用新增功能。不過,如果您的政策選擇 CUSTOM 設定檔,則必須修改政策的設定才能使用新增的功能。

限制

  • 停用特定 SSL 版本或加密方式可能會導致某些舊版用戶端無法透過 HTTPS 或 SSL 連線至您的 Proxy。如果在 CUSTOM 設定檔中停用的加密方式範圍大到足夠的程度,就可能導致所有用戶端都無法與 HTTPS 交涉。

  • 與負載平衡器相關的 SSL 憑證會使用 ECDSA 或 RSA 數位簽章。預先定義的設定檔與這兩種類型的憑證簽名相容。自訂設定檔啟用的加密方式應與負載均衡器憑證使用的數位簽名相容。

後續步驟