

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

# Application Load Balancer 的 SSL 憑證
<a name="https-listener-certificates"></a>

當您為 Application Load Balancer 建立安全接聽程式時，您必須在負載平衡器上部署至少一個憑證。負載平衡器需要 X.509 憑證 (SSL/TLS 伺服器憑證)。憑證為憑證授權機構 (CA) 發出的數位形式身分證明。憑證包含識別資訊、有效期間、公有金鑰、序號和發行者的數位簽章。

建立憑證以搭配您的負載平衡器使用時，您必須指定網域名稱。憑證上的網域名稱必須與自訂網域名稱記錄相符，如此我們就可以確認 TLS 連線。如果其不相符，就不會加密流量。

您必須為憑證指定完整網域名稱 (FQDN)，例如 `www.example.com`；或者指定 apex 網域名稱 (FQDN)，例如 `example.com`。您也可以使用星號 (\$1) 做為萬用字元，以保護相同網域中的多個網站名稱。請求萬用字元憑證時，星號 (\$1) 必須在網域名稱的最左方，而且僅能保護一個子網域層級。例如，`*.example.com` 保護 `corp.example.com` 和 `images.example.com`，但它無法保護 `test.login.example.com`。另請注意，`*.example.com` 只可以保護 `example.com` 的子網域，無法保護 bare 或 apex 網域 (`example.com`)。萬用字元名稱會顯示於憑證的**主體**欄位和**主體別名**延伸。如需公有憑證的詳細資訊，請參閱*AWS Certificate Manager 《 使用者指南*》中的[請求公有憑證](https://docs.aws.amazon.com/acm/latest/userguide/acm-public-certificates.html)。

建議您使用 [AWS Certificate Manager (ACM)](https://aws.amazon.com/certificate-manager/) 為負載平衡器建立憑證。ACM 支援具有 2048、3072 和 4096 位元金鑰長度的 RSA 憑證，以及所有 ECDSA 憑證。ACM 會與 Elastic Load Balancing 整合，以便您在負載平衡器上部署憑證。如需詳細資訊，請參閱[「AWS Certificate Manager 使用者指南」](https://docs.aws.amazon.com/acm/latest/userguide/)。

或者，您可以使用 SSL/TLS 工具建立憑證簽署請求 (CSR)，然後取得 CA 簽署的 CSR 來產生憑證，然後將憑證匯入 ACM 或上傳憑證至 AWS Identity and Access Management (IAM)。如需有關將憑證匯入 ACM 的詳細資訊，請參閱《AWS Certificate Manager 使用者指南》**中的[匯入憑證](https://docs.aws.amazon.com/acm/latest/userguide/import-certificate.html)。如需上傳憑證至 IAM 的詳細資訊，請參閱 *IAM 使用者指南*中的[使用伺服器憑證](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_server-certs.html)。

## 預設憑證
<a name="default-certificate"></a>

建立 HTTPS 接聽程式時，您必須指定剛好一個憑證。此憑證稱為*預設憑證*。您可以在建立 HTTPS 接聽程式之後取代預設憑證。如需詳細資訊，請參閱[更換預設憑證](listener-update-certificates.md#replace-default-certificate)。

如果您在[憑證清單](#sni-certificate-list)中指定額外憑證，只有當用戶端連接時未使用伺服器名稱指示 (SNI) 通訊協定來指定主機名稱，或憑證清單中沒有相符的憑證時，才會使用預設憑證。

如果您不指定額外憑證，但需要透過單一負載平衡器來託管多個安全應用程式，您可以使用萬用字元憑證，或將每個額外網域的主體別名 (SAN) 新增至憑證。

## 憑證清單
<a name="sni-certificate-list"></a>

建立 HTTPS 接聽程式之後，您可以將憑證新增至憑證清單。如果您使用 建立接聽程式 AWS 管理主控台，我們會將預設憑證新增至憑證清單。否則，憑證清單為空白。使用憑證清單可讓負載平衡器在相同連接埠上支援多個網域，並為每個網域提供不同的憑證。如需詳細資訊，請參閱[將憑證新增至憑證清單](listener-update-certificates.md#add-certificates)。

負載平衡器使用支援 SNI 的智慧憑證選擇演算法。如果用戶端提供的主機名稱符合憑證清單中的單一憑證，負載平衡器會選取此憑證。如果用戶端提供的主機名稱符合憑證清單中的多個憑證，負載平衡器會選取用戶端可支援的最佳憑證。憑證選擇是根據採用下列順序的以下條件：
+ 公有金鑰演算法 (ECDSA 優於 RSA)
+ 過期 （偏好未過期）
+ 雜湊演算法 （偏好 SHA 而非 MD5)。如果有多個 SHA 憑證，則偏好最高的 SHA 號碼。
+ 金鑰長度 (最好是最大)
+ 有效期間

負載平衡器存取日誌項目會指出用戶端指定的主機名稱和向用戶端出示的憑證。如需詳細資訊，請參閱[存取日誌項目](load-balancer-access-logs.md#access-log-entry-format)。

## 憑證續約
<a name="ssl-certificate-renewal"></a>

每個憑證均附帶有效期間。您必須確保在有效期間結束之前，續約或更換負載平衡器的每個憑證。這包括預設憑證和憑證清單中的憑證。續約或更換憑證不會影響負載平衡器節點收到並且等待路由到運作狀態良好目標的傳輸中請求。續約憑證之後，新請求會使用續約的憑證。更換憑證之後，新請求會使用新的憑證。

您可以如下所示管理憑證續約和更換：
+ 負載平衡器上提供 AWS Certificate Manager 和部署的憑證可以自動續約。ACM 會在憑證過期之前嘗試續約。如需詳細資訊，請參閱 *AWS Certificate Manager 使用者指南*中的[受管續約](https://docs.aws.amazon.com/acm/latest/userguide/managed-renewal.html)。
+ 如果您將憑證匯入至 ACM，則必須監控憑證的過期日期，並在憑證過期之前續約。如需詳細資訊，請參閱 *AWS Certificate Manager 使用者指南*中的[匯入憑證](https://docs.aws.amazon.com/acm/latest/userguide/import-certificate.html)。
+ 如果您將憑證匯入至 IAM，則必須建立新的憑證、將新的憑證匯入至 ACM 或 IAM、將新憑證新增至負載平衡器，並從負載平衡器移除過期的憑證。