選擇如何 CloudFront 提供 HTTPS 要求 - Amazon CloudFront

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

選擇如何 CloudFront 提供 HTTPS 要求

如果您希望檢視者使用 HTTPS 並為檔案使用替代網域名稱,請選擇下列其中一個選項來處 CloudFront 理 HTTPS 要求的方式:

本節說明每個選項的運作方式。

使用 SNI 來提供 HTTPS 請求(適用於大多數客戶端)

伺服器名稱指示 (SNI) 是 TLS 通訊協定的延伸,2010 年之後推出的瀏覽器和用戶端支援此選項。如果您設定 CloudFront 為使用 SNI 提供 HTTPS 要求,請 CloudFront 將您的替代網域名稱與每個節點的 IP 位址建立關聯。當檢視器提交內容的 HTTPS 請求時,DNS 會將請求路由到正確節點的 IP 地址。您網域名稱的 IP 地址在 SSL/TLS 交握溝通期間決定;IP 地址並非專用於您的分佈。

SSL/TLS 溝通發生在建立 HTTPS 連線的初期。如果 CloudFront 無法立即判斷要求所使用的網域,就會中斷連線。當 SNI 支援的檢視器提交內容的 HTTPS 請求時,情況如下:

  1. 檢視器會自動從要求 URL 取得網域名稱,並將其新增至 TLS 用戶端 Hello 訊息的 SNI 延伸。

  2. CloudFront 收到 TLS 用戶端 Hello 時,它會使用 SNI 延伸模組中的網域名稱來尋找相符的 CloudFront 散佈,並傳回相關聯的 TLS 憑證。

  3. 檢視器並 CloudFront 執行 SSL/TLS 交涉。

  4. CloudFront 將要求的內容傳回給檢視者。

關於支援 SNI 的瀏覽器,最新的清單請參閱 Wikipedia 條目 Server Name Indication (伺服器名稱指示)。

如果您想要使用 SNI,但某些使用者的瀏覽器不支援 SNI,則您有幾個選項:

  • 設定 CloudFront 為使用專用 IP 位址而非 SNI 來提供 HTTPS 要求。如需詳細資訊,請參閱 使用專用 IP 地址來服務 HTTPS 請求(適用於所有客戶端)

  • 使用 CloudFront SSL/TLS 憑證而非自訂憑證。這需要您在檔案的 URL 中使用散佈的 CloudFront 網域名稱,例如https://d111111abcdef8.cloudfront.net/logo.png

    如果您使用預設 CloudFront 憑證,檢視者必須支援 SSL 通訊協定 TLSv1 或更新版本。 CloudFront 不支援使用預設CloudFront 憑證的 SSLv3。

    您也必須將使用的 SSL/TLS 憑證 CloudFront 從自訂憑證變更為預設 CloudFront 憑證:

    • 如果您尚未使用分佈來分配內容,可以只變更組態。如需詳細資訊,請參閱 更新分佈

    • 如果您已經使用分發來散佈內容,您必須建立新的 CloudFront 分發並變更檔案的 URL,以減少或減少內容無法使用的時間。如需詳細資訊,請參閱 從自訂 SSL/TLS 憑證還原為預設憑證 CloudFront

  • 如果您可以控制您的使用者使用哪些瀏覽器,請讓他們升級到支援 SNI 的瀏覽器。

  • 使用 HTTP,而非 HTTPS。

使用專用 IP 地址來服務 HTTPS 請求(適用於所有客戶端)

伺服器名稱指示 (SNI) 是將請求關聯至網域的一個方法。另一個方式是使用專用 IP 地址。如果您有使用者無法升級到 2010 年後推出的瀏覽器或用戶端,您可以使用專用 IP 地址來提供 HTTPS 請求。關於支援 SNI 的瀏覽器,最新的清單請參閱 Wikipedia 條目 Server Name Indication (伺服器名稱指示)。

重要

如果您設定 CloudFront 為使用專用 IP 位址提供 HTTPS 要求,則需支付每月額外費用。當您把 SSL/TLS 憑證與分佈相關聯並啟用此分佈時,即開始收費。如需有關 CloudFront 定價的詳細資訊,請參閱 Amazon CloudFront 定價。除此之外:請參閱 Using the Same Certificate for Multiple CloudFront Distributions

當您設定 CloudFront 使用專用 IP 位址提供 HTTPS 要求時,請 CloudFront將您的憑證與每個節 CloudFront 點中的專用 IP 位址建立關聯。當檢視器提交內容的 HTTPS 請求時,情況如下:

  1. DNS 將請求路由到適用節點中分佈的 IP 地址。

  2. 如果用戶端要求在ClientHello郵件中提供 SNI 延伸模組,則會 CloudFront 搜尋與該 SNI 相關聯的發佈。

    • 如果有相符項目,請使用 SSL/TLS 憑證 CloudFront 回應要求。

    • 如果沒有相符項目,請改 CloudFront 用 IP 位址來識別您的散佈,並決定要傳回給檢視器的 SSL/TLS 憑證。

  3. 檢視器並使用您的 SSL/TLS 憑證 CloudFront 執行 SSL/TLS 交涉。

  4. CloudFront 將要求的內容傳回給檢視者。

這種方式適用於每個 HTTPS 請求,無論使用者使用的是瀏覽器或其他檢視器。

注意

專用 IP 不是靜態 IP,可能會隨著時間而變化。系統會從邊緣伺服器清單的 IP 位址範圍動態配置給CloudFront 邊緣位置傳回的 IP 位址。

CloudFront 邊緣伺服器的 IP 位址範圍可能會變更。若要收到 IP 位址變更的通知,請透過 Amazon SNS 訂閱 AWS 公用 IP 位址變更

請求使用三個或更多專用 IP SSL/TLS 憑證的權限

如果您需要將三個或更多 SSL/TLS 專用 IP 憑證與永久關聯的權限 CloudFront,請執行下列程序。如需 HTTPS 請求的詳細資訊,請參閱 選擇如何 CloudFront 提供 HTTPS 要求

注意

此程序適用於在您的 CloudFront 發行版中使用三個以上的專用 IP 憑證。預設值為 2。請注意,您不可以繫結超過 1 個 SSL 憑證到分佈。

您一次只能將單一 SSL/TLS 憑證關聯至一個 CloudFront 發行版。此數字代表您可以在所有 CloudFront 發行版中使用的專用 IP SSL 憑證總數。

要求使用三個或更多憑證與 CloudFront散發的權限
  1. 請前往支援中心並建立案例。

  2. 請指出您需要許可才能使用的憑證有多少,以及說明請求中的情況。我們會儘快更新您的帳戶。

  3. 請繼續下一個程序。