Network Load Balancer のサーバー証明書 - Elastic Load Balancing

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

Network Load Balancer のサーバー証明書

Network Load Balancer のセキュアリスナーを作成するときは、少なくとも 1 つの証明書をロードバランサーにデプロイする必要があります。ロードバランサーには X.509 証明書 (サーバー証明書) が必要です。証明書とは、認証機関 (CA) によって発行された識別用デジタル形式です。証明書には、認識用情報、有効期間、パブリックキー、シリアル番号と発行者のデジタル署名が含まれます。

ロードバランサーで使用する証明書を作成するときに、ドメイン名を指定する必要があります。TLS 接続を検証できるように、証明書のドメイン名はカスタムドメイン名レコードと一致する必要があります。一致しない場合、トラフィックは暗号化されません。

証明書には、 などの完全修飾ドメイン名 (FQDN) www.example.comまたは などの apex ドメイン名を指定する必要がありますexample.com。また、同じドメインで複数のサイト名を保護するために、アスタリスク (*) をワイルドカードとして使用できます。ワイルドカード証明書をリクエストする場合、アスタリスク (*) はドメイン名の一番左の位置に付ける必要があり、1 つのサブドメインレベルのみを保護できます。例えば、*.example.comcorp.example.comimages.example.com を保護しますが、test.login.example.com を保護することはできません。また、*.example.com は、example.com のサブドメインのみを保護し、ネイキッドドメインまたは apex ドメイン (example.com) は保護しないことに注意してください。ワイルドカード名は、証明書の [サブジェクト] フィールドと [サブジェクト代替名] 拡張子に表示されます。公開証明書の詳細については、AWS Certificate Manager ユーザーガイドの「公開証明書」を参照してください。

AWS Certificate Manager (ACM) を使用してロードバランサーの証明書を作成することをお勧めします。ACM は Elastic Load Balancing と統合されるため、ロードバランサーに証明書をデプロイできます。詳細については、AWS Certificate Manager ユーザーガイドをご参照ください。

または、TLS ツールを使用して証明書署名リクエスト (CSR) を作成し、CA によって署名された CSR を取得して証明書を生成し、証明書を ACM にインポートするか、証明書を AWS Identity and Access Management (IAM) にアップロードすることもできます。詳細については、AWS Certificate Manager 「 ユーザーガイド」の「証明書のインポート」またはIAM ユーザーガイド」の「サーバー証明書の操作」を参照してください。

サポートされているキーアルゴリズム

  • RSA 1024 ビット

  • RSA 2048 ビット

  • RSA 3072 ビット

  • ECDSA 256 ビット

  • ECDSA 384 ビット

  • ECDSA 521 ビット

デフォルトの証明書

TLS リスナーを作成するときは、証明書を 1 つだけ指定する必要があります。この証明書は、default certificate として知られています。TLS リスナーを作成した後、デフォルトの証明書を置き換えることができます。詳細については、「デフォルトの証明書の置き換え」を参照してください。

証明書リストで追加の証明書を指定する場合、デフォルトの証明書は、クライアントが Server Name Indication (SNI) プロトコルを使用してホスト名を指定せずに接続する場合、または証明書リストに一致する証明書がない場合にのみ使用されます。

追加の証明書を指定せずに、単一のロードバランサーを介して複数の安全なアプリケーションをホストする必要がある場合は、ワイルドカード証明書を使用するか、追加のドメインごとにサブジェクト代替名 (SAN) を証明書に追加できます。

証明書リスト

TLS リスナーを作成すると、デフォルトの証明書と空の証明書リストが作成されます。リスナーの証明書リストに証明書を追加することもできます。証明書リストを使用すると、ロードバランサーは同じポートで複数のドメインをサポートし、ドメインごとに異なる証明書を提供できます。詳細については、「証明書リストに証明書を追加する」を参照してください。

ロードバランサーは、SNI をサポートするスマート証明書選択アルゴリズムを使用します。クライアントから提供されたホスト名が証明書リスト内の単一の証明書と一致する場合、ロードバランサーはこの証明書を選択します。クライアントが提供するホスト名が証明書リストの複数の証明書と一致する場合、ロードバランサーはクライアントがサポートできる最適な証明書を選択します。証明書の選択は、次の条件と順序に基づいて行われます。

  • ハッシュアルゴリズム (SHA よりも MD5 を優先)

  • キーの長さ (最大が優先)

  • 有効期間

ロードバランサーアクセスログエントリは、クライアントが指定したホスト名とクライアントが提出する証明書を示します。詳細については、「アクセスログのエントリ」を参照してください。

証明書の更新

各証明書には有効期間が記載されています。有効期間が終了する前に、必ずロードバランサーの各証明書を更新するか、置き換える必要があります。これには、デフォルトの証明書と証明書リスト内の証明書が含まれます。証明書を更新または置き換えしても、ロードバランサーノードが受信し、正常なターゲットへのルーティングを保留中の未処理のリクエストには影響しません。証明書更新後、新しいリクエストは更新された証明書を使用します。証明書置き換え後、新しいリクエストは新しい証明書を使用します。

証明書の更新と置き換えは次のとおりに管理できます。

  • によって提供され AWS Certificate Manager 、ロードバランサーにデプロイされた証明書は、自動的に更新できます。ACM は有効期限が切れる前に証明書の更新を試みます。詳細については、AWS Certificate Manager ユーザーガイドの 管理された更新 を参照してください。

  • 証明書を ACM にインポートした場合は、証明書の有効期限をモニタリングし、有効期限が切れる前に更新する必要があります。詳細については、AWS Certificate Manager ユーザーガイドの 証明書のインポート を参照してください。

  • 証明書を IAM にインポートした場合は、新しい証明書を作成し、新しい証明書を ACM または IAM にインポートし、新しい証明書をロードバランサーに追加して、期限切れの証明書をロードバランサーから削除する必要があります。