Application Load Balancer 用の HTTPS リスナーを作成する - Elastic Load Balancing

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

Application Load Balancer 用の HTTPS リスナーを作成する

リスナーは、接続リクエストをチェックします。ロードバランサーを作成するときにリスナーを定義し、いつでもロードバランサーにリスナーを追加できます。

HTTPS リスナーを作成するには、ロードバランサーに SSL サーバー証明書を少なくとも 1 つデプロイする必要があります。ロードバランサーはサーバー証明書を使用してフロントエンド接続を終了してから、ターゲットにリクエストを送信する前に、クライアントからのリクエストを復号します。また、クライアントとロードバランサー間の安全な接続をネゴシエートするために使用されるセキュリティポリシーも指定する必要があります。

ロードバランサーが復号化せずに、暗号化されたトラフィックをターゲットに渡す必要がある場合は、ポート 443 で TCP リスナーを使用して Network Load Balancer または Classic Load Balancer を作成できます。TCP リスナーを使用すると、ロードバランサーは暗号化されたトラフィックを復号化せずにターゲットに渡します。

Application Load Balancer は、ED25519 キーをサポートしていません。

このページの情報は、ロードバランサー用の HTTPS リスナーを作成するのに役立ちます。ロードバランサーに HTTP リスナーを追加するには、Application Load Balancer 用の HTTP リスナーを作成する を参照してください。

SSL 証明書

ロードバランサーには X.509 証明書 (SSL/TLS サーバー証明書) が必要です。証明書とは、認証機関 (CA) によって発行された識別用デジタル形式です。証明書には、認識用情報、有効期間、パブリックキー、シリアル番号と発行者のデジタル署名が含まれます。

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

www.example.com などの証明書の完全修飾ドメイン名 (FQDN) または example.com などの apex ドメイン名を指定する必要があります。また、同じドメインで複数のサイト名を保護するために、アスタリスク (*) をワイルドカードとして使用できます。ワイルドカード証明書をリクエストする場合、アスタリスク (*) はドメイン名の一番左の位置に付ける必要があり、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 は、2048 ビット、3072 ビット、4096 ビットのキー長の RSA 証明書およびすべての ECDSA 証明書をサポートします。ACM は Elastic Load Balancing と統合して、ロードバランサーに証明書をデプロイできます。詳細については、AWS Certificate Manager ユーザーガイドを参照してください。

また、SSL/TLS ツールを使用して署名証明書リクエスト (CSR) を作成し、CA から CSR 署名を取得して証明書を発行し、ACM にこの証明書をインポートする、あるいは AWS Identity and Access Management(IAM) に証明書をアップロードすることもできます。ACM への証明書のインポートに関する詳細については、 『AWS Certificate Manager ユーザーガイド』の「Importing Certificates」 を参照してください。IAM への証明書のアップロードに関する詳細については、IAM ユーザーガイドの「IAM でのサーバー証明書の管理」を参照してください。

デフォルトの証明書

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

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

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

証明書リスト

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

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

  • パブリックキーアルゴリズム (RSA よりも ECDSA が優先)

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

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

  • 有効期間

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

証明書の更新

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

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

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

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

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

セキュリティポリシー

Elastic Load Balancing は、Secure Sockets Layer (SSL) ネゴシエーション設定 (セキュリティポリシーと呼ばれます) を使用して、クライアントとロードバランサー間の SSL 接続をネゴシエートします。セキュリティポリシーはプロトコルと暗号の組み合わせです。プロトコルは、クライアントとサーバーの間の安全な接続を確立し、クライアントとロードバランサーの間で受け渡しされるすべてのデータのプライバシーを保証します。暗号とは、暗号化キーを使用してコード化されたメッセージを作成する暗号化アルゴリズムです。プロトコルは、複数の暗号を使用し、インターネットを介してデータを暗号化します。接続ネゴシエーションのプロセスで、クライアントとロードバランサーでは、それぞれサポートされる暗号とプロトコルのリストが優先される順に表示されます。デフォルトでは、サーバーのリストで最初にクライアントの暗号と一致した暗号が安全な接続用に選択されます。

考慮事項:
  • Application Load Balancer は、ターゲット接続のみの SSL 再ネゴシエーションをサポートしています。

  • Application Load Balancer は、カスタムセキュリティポリシーをサポートしていません。

  • ELBSecurityPolicy-TLS13-1-2-2021-06 ポリシーは、 を使用して作成された HTTPS リスナーのデフォルトのセキュリティポリシーですAWS Management Console。

  • ELBSecurityPolicy-2016-08 ポリシーは、 を使用して作成された HTTPS リスナーのデフォルトのセキュリティポリシーですAWS CLI。

  • HTTPS リスナーを作成するときは、セキュリティポリシーを選択する必要があります。

    • TLS 1.3 を含み、TLS 1.2 と下位互換性がある ELBSecurityPolicy-TLS13-1-2-2021-06 セキュリティポリシーをお勧めします。

  • フロントエンド接続に使用するセキュリティポリシーは選択できますが、バックエンド接続には選択できません。

    • バックエンド接続では、HTTPS リスナーが TLS 1.3 セキュリティポリシーを使用している場合、ELBSecurityPolicy-TLS13-1-0-2021-06 セキュリティポリシーが使用されます。それ以外の場合、バックエンド接続には ELBSecurityPolicy-2016-08 セキュリティポリシーが使用されます。

  • 特定の TLS プロトコルバージョンを無効にする必要があるコンプライアンスおよびセキュリティ標準を満たす、または非推奨の暗号を必要とするレガシークライアントをサポートするには、 ELBSecurityPolicy-TLS- セキュリティポリシーのいずれかを使用できます。Application Load Balancer へのリクエストの TLS プロトコルバージョンを表示するには、ロードバランサーのアクセスログ記録を有効にし、対応するアクセスログエントリを調べます。詳細については、「Application Load Balancer のアクセスログ」を参照してください。

  • IAM AWS アカウントおよびサービスコントロールポリシー (SCPs) の Elastic Load Balancing 条件キーAWS Organizationsを使用して、 および 全体のユーザーが使用できるセキュリティポリシーを制限できます。詳細については、「 AWS Organizationsユーザーガイド」のSCPs」を参照してください。

TLS1.3 セキュリティポリシー

注記

Application Load Balancer の TLS 1.3 セキュリティポリシーは、新しい EC2 エクスペリエンスでのみサポートされています。古い EC2 エクスペリエンスを使用する場合、TLS 1.3 セキュリティポリシーを選択することはできません。

Elastic Load Balancing は、Application Load Balancer に次の TLS 1.3 セキュリティポリシーを提供します。

  • ELBSecurityPolicy-TLS13-1-2-2021-06 (推奨)

  • ELBSecurityPolicy-TLS13-1-2-Res-2021-06

  • ELBSecurityPolicy-TLS13-1-2-Ext1-2021-06

  • ELBSecurityPolicy-TLS13-1-2-Ext2-2021-06

  • ELBSecurityPolicy-TLS13-1-1-2021-06

  • ELBSecurityPolicy-TLS13-1-0-2021-06

  • ELBSecurityPolicy-TLS13-1-3-2021-06

FIPS セキュリティポリシー

重要

Application Load Balancer にアタッチされたすべてのセキュアリスナーは、FIPS セキュリティポリシーまたは非 FIPS セキュリティポリシーのいずれかを使用する必要があります。これらを混在させることはできません。既存の Application Load Balancer に非 FIPS ポリシーを使用するリスナーが 2 つ以上あり、リスナーが代わりに FIPS セキュリティポリシーを使用できるようにする場合は、1 つだけになるまですべてのリスナーを削除します。リスナーのセキュリティポリシーを FIPS に変更し、FIPS セキュリティポリシーを使用して追加のリスナーを作成します。または、FIPS セキュリティポリシーのみを使用して、新しいリスナーで新しい Application Load Balancer を作成することもできます。

連邦情報処理規格 (FIPS) は、機密情報を保護する暗号化モジュールのセキュリティ要件を指定する米国およびカナダ政府の規格です。詳細については、AWS「 クラウドセキュリティコンプライアンス」ページの「連邦情報処理規格 (FIPS) 140」を参照してください。

すべての FIPS ポリシーは、AWS-LC FIPS 検証済み暗号化モジュールを利用します。詳細については、NIST 暗号化モジュール検証プログラムサイトの「AWS-LC 暗号化モジュール」ページを参照してください。

Elastic Load Balancing は、Application Load Balancer に対して次の FIPS セキュリティポリシーを提供します。

  • ELBSecurityPolicy-TLS13-1-3-FIPS-2023-04

  • ELBSecurityPolicy-TLS13-1-2-Res-FIPS-2023-04

  • ELBSecurityPolicy-TLS13-1-2-FIPS-2023-04 (推奨)

  • ELBSecurityPolicy-TLS13-1-2-Ext0-FIPS-2023-04

  • ELBSecurityPolicy-TLS13-1-2-Ext1-FIPS-2023-04

  • ELBSecurityPolicy-TLS13-1-2-Ext2-FIPS-2023-04

  • ELBSecurityPolicy-TLS13-1-1-FIPS-2023-04

  • ELBSecurityPolicy-TLS13-1-0-FIPS-2023-04

FS がサポートするポリシー

Elastic Load Balancing は、Application Load Balancer に対して次の FS (フォワードセキュリティ) がサポートするセキュリティポリシーを提供します。

  • ELBSecurityPolicy-FS-1-2-Res-2020-10

  • ELBSecurityPolicy-FS-1-2-Res-2019-08

  • ELBSecurityPolicy-FS-1-2-2019-08

  • ELBSecurityPolicy-FS-1-1-2019-08

  • ELBSecurityPolicy-FS-2018-06

TLS 1.0 - 1.2 セキュリティポリシー

Elastic Load Balancing は、Application Load Balancer に対して次の TLS 1.0~1.2 セキュリティポリシーを提供します。

  • ELBSecurityPolicy-TLS-1-2-Ext-2018-06

  • ELBSecurityPolicy-TLS-1-2-2017-01

  • ELBSecurityPolicy-TLS-1-1-2017-01

  • ELBSecurityPolicy-2016-08

  • ELBSecurityPolicy-TLS-1-0-2015-04

  • ELBSecurityPolicy-2015-05 ( と同じELBSecurityPolicy-2016-08

TLS プロトコルと暗号

TLS 1.3

次の表は、使用可能な TLS 1.3 セキュリティポリシーでサポートされている TLS プロトコルと暗号を示しています。

注: セキュリティポリシー行のポリシー名からELBSecurityPolicy-プレフィックスが削除されました。

例: セキュリティポリシーELBSecurityPolicy-TLS13-1-2-2021-06は と表示されますTLS13-1-2-2021-06

セキュリティポリシー 
                                            TLS13-1-2-2021-06*
                                        
                                            TLS13-1-3-2021-06
                                        
                                            TLS13-1-2-Res-2021-06
                                        
                                            TLS13-1-2-Ext2-2021-06
                                        
                                            TLS13-1-2-Ext1-2021-06
                                        
                                            TLS13-1-1-2021-06
                                        
                                            TLS13-1-0-2021-06
TLS Protocols
Protocol-TLSv1
Protocol-TLSv1.1
Protocol-TLSv1.2
Protocol-TLSv1.3
TLS Ciphers
TLS_AES_128_GCM_SHA256
TLS_AES_256_GCM_SHA384
TLS_CHACHA20_POLY1305_SHA256
ECDHE-ECDSA-AES128-GCM-SHA256
ECDHE-RSA-AES128-GCM-SHA256
ECDHE-ECDSA-AES128-SHA256
ECDHE-RSA-AES128-SHA256
ECDHE-ECDSA-AES128-SHA
ECDHE-RSA-AES128-SHA
ECDHE-ECDSA-AES256-GCM-SHA384
ECDHE-RSA-AES256-GCM-SHA384
ECDHE-ECDSA-AES256-SHA384
ECDHE-RSA-AES256-SHA384
ECDHE-RSA-AES256-SHA
ECDHE-ECDSA-AES256-SHA
AES128-GCM-SHA256
AES128-SHA256
AES128-SHA
AES256-GCM-SHA384
AES256-SHA256
AES256-SHA
CLI を使用して TLS 1.3 ポリシーを使用する HTTPS リスナーを作成するには

TLS 1.3 セキュリティポリシー create-listener コマンドを使用します。

この例では、 ELBSecurityPolicy-TLS13-1-2-2021-06 セキュリティポリシーを使用しています。

aws elbv2 create-listener --name my-listener \ --protocol HTTPS --port 443 \ --ssl-policy ELBSecurityPolicy-TLS13-1-2-2021-06
CLI を使用して TLS 1.3 ポリシーを使用するように HTTPS リスナーを変更するには

TLS 1.3 セキュリティポリシー modify-listener コマンドを使用します。

この例では、 ELBSecurityPolicy-TLS13-1-2-2021-06 セキュリティポリシーを使用しています。

aws elbv2 modify-listener \ --listener-arn arn:aws:elasticloadbalancing:us-east-1:123456789012:listener/app/my-load-balancer/abcdef01234567890/1234567890abcdef0 \ --ssl-policy ELBSecurityPolicy-TLS13-1-2-2021-06
CLI を使用してリスナーが使用するセキュリティポリシーを表示するには

リスナーarnの で describe-listener コマンドを使用します。

aws elbv2 describe-listener \ --listener-arn arn:aws:elasticloadbalancing:us-east-1:123456789012:listener/app/my-load-balancer/abcdef01234567890/1234567890abcdef0
CLI を使用して TLS 1.3 セキュリティポリシーの設定を表示するには

任意の TLS 1.3 セキュリティポリシー describe-ssl-policies コマンドを使用します。

この例では、 ELBSecurityPolicy-TLS13-1-2-2021-06 セキュリティポリシーを使用しています。

aws elbv2 describe-ssl-policies \ --names ELBSecurityPolicy-TLS13-1-2-2021-06
FIPS
重要

ポリシー ELBSecurityPolicy-TLS13-1-1-FIPS-2023-04および ELBSecurityPolicy-TLS13-1-0-FIPS-2023-04は、従来の互換性のためにのみ提供されています。FIPS140 モジュールを使用して FIPS 暗号化を利用していますが、TLS 設定に関する最新の NIST ガイダンスに準拠していない可能性があります。

次の表は、使用可能な FIPS セキュリティポリシーでサポートされている TLS プロトコルと暗号を示しています。

注: セキュリティポリシー行のポリシー名からELBSecurityPolicy-プレフィックスが削除されました。

例: セキュリティポリシーELBSecurityPolicy-TLS13-1-2-FIPS-2023-04が として表示されますTLS13-1-2-FIPS-2023-04

セキュリティポリシー 
                                            TLS13-1-3-FIPS-2023-04
                                        
                                            TLS13-1-2-Res-FIPS-2023-04
                                        
                                            TLS13-1-2-FIPS-2023-04
                                        
                                            TLS13-1-2-Ext0-FIPS-2023-04
                                        
                                            TLS13-1-2-Ext1-FIPS-2023-04
                                        
                                            TLS13-1-2-Ext2-FIPS-2023-04
                                        
                                            TLS13-1-1-FIPS-2023-04
                                        
                                        TLS13-1-0-FIPS-2023-04
TLS Protocols
Protocol-TLSv1
Protocol-TLSv1.1
Protocol-TLSv1.2
Protocol-TLSv1.3
TLS Ciphers
TLS_AES_128_GCM_SHA256
TLS_AES_256_GCM_SHA384
ECDHE-ECDSA-AES128-GCM-SHA256
ECDHE-RSA-AES128-GCM-SHA256
ECDHE-ECDSA-AES128-SHA256
ECDHE-RSA-AES128-SHA256
ECDHE-ECDSA-AES128-SHA
ECDHE-RSA-AES128-SHA
ECDHE-ECDSA-AES256-GCM-SHA384
ECDHE-RSA-AES256-GCM-SHA384
ECDHE-ECDSA-AES256-SHA384
ECDHE-RSA-AES256-SHA384
ECDHE-RSA-AES256-SHA
ECDHE-ECDSA-AES256-SHA
AES128-GCM-SHA256
AES128-SHA256
AES128-SHA
AES256-GCM-SHA384
AES256-SHA256
AES256-SHA
CLI を使用して FIPS ポリシーを使用する HTTPS リスナーを作成するには

FIPS セキュリティポリシーcreate-listener コマンドを使用します。

この例では、 ELBSecurityPolicy-TLS13-1-2-FIPS-2023-04 セキュリティポリシーを使用しています。

aws elbv2 create-listener --name my-listener \ --protocol HTTPS --port 443 \ --ssl-policy ELBSecurityPolicy-TLS13-1-2-FIPS-2023-04
CLI を使用して FIPS ポリシーを使用するように HTTPS リスナーを変更するには

FIPS セキュリティポリシーmodify-listener コマンドを使用します。

この例では、 ELBSecurityPolicy-TLS13-1-2-FIPS-2023-04 セキュリティポリシーを使用しています。

aws elbv2 modify-listener \ --listener-arn arn:aws:elasticloadbalancing:us-east-1:123456789012:listener/app/my-load-balancer/abcdef01234567890/1234567890abcdef0 \ --ssl-policy ELBSecurityPolicy-TLS13-1-2-FIPS-2023-04
CLI を使用してリスナーが使用するセキュリティポリシーを表示するには

リスナーarnの で describe-listener コマンドを使用します。

aws elbv2 describe-listener \ --listener-arn arn:aws:elasticloadbalancing:us-east-1:123456789012:listener/app/my-load-balancer/abcdef01234567890/1234567890abcdef0
CLI を使用して FIPS セキュリティポリシーの設定を表示するには

FIPS セキュリティポリシー describe-ssl-policies コマンドを使用します。

この例では、 ELBSecurityPolicy-TLS13-1-2-FIPS-2023-04 セキュリティポリシーを使用しています。

aws elbv2 describe-ssl-policies \ --names ELBSecurityPolicy-TLS13-1-2-FIPS-2023-04
FS

次の表は、FS がサポートするセキュリティポリシーでサポートされている TLS プロトコルと暗号を示しています。

注: セキュリティポリシー行のポリシー名からELBSecurityPolicy-プレフィックスが削除されました。

例: セキュリティポリシーELBSecurityPolicy-FS-2018-06が として表示されますFS-2018-06

セキュリティポリシー 
                                            ELBSecurityPolicy-2016-08
                                        
                                            ELBSecurityPolicy-FS-1-2-Res-2020-10
                                        
                                            ELBSecurityPolicy-FS-1-2-Res-2019-08
                                        
                                            ELBSecurityPolicy-FS-1-2-2019-08
                                        
                                            ELBSecurityPolicy-FS-1-1-2019-08
                                        
                                            ELBSecurityPolicy-FS-2018-06
TLS Protocols
Protocol-TLSv1
Protocol-TLSv1.1
Protocol-TLSv1.2
TLS Ciphers
ECDHE-ECDSA-AES128-GCM-SHA256
ECDHE-RSA-AES128-GCM-SHA256
ECDHE-ECDSA-AES128-SHA256
ECDHE-RSA-AES128-SHA256
ECDHE-ECDSA-AES128-SHA
ECDHE-RSA-AES128-SHA
ECDHE-ECDSA-AES256-GCM-SHA384
ECDHE-RSA-AES256-GCM-SHA384
ECDHE-ECDSA-AES256-SHA384
ECDHE-RSA-AES256-SHA384
ECDHE-RSA-AES256-SHA
ECDHE-ECDSA-AES256-SHA
AES128-GCM-SHA256
AES128-SHA256
AES128-SHA
AES256-GCM-SHA384
AES256-SHA256
AES256-SHA
CLI を使用して FS でサポートされているポリシーを使用する HTTPS リスナーを作成するには

FS がサポートするセキュリティポリシーcreate-listener コマンドを使用します。

この例では、 ELBSecurityPolicy-FS-2018-06 セキュリティポリシーを使用しています。

aws elbv2 create-listener --name my-listener \ --protocol HTTPS --port 443 \ --ssl-policy ELBSecurityPolicy-FS-2018-06
CLI を使用して FS でサポートされているポリシーを使用するように HTTPS リスナーを変更するには

FS がサポートするセキュリティポリシー で modify-listener コマンドを使用します。 FS がサポートするポリシー

この例では、 ELBSecurityPolicy-FS-2018-06 セキュリティポリシーを使用しています。

aws elbv2 modify-listener \ --listener-arn arn:aws:elasticloadbalancing:us-east-1:123456789012:listener/app/my-load-balancer/abcdef01234567890/1234567890abcdef0 \ --ssl-policy ELBSecurityPolicy-FS-2018-06
CLI を使用してリスナーが使用するセキュリティポリシーを表示するには

リスナーarnの で describe-listener コマンドを使用します。

aws elbv2 describe-listener \ --listener-arn arn:aws:elasticloadbalancing:us-east-1:123456789012:listener/app/my-load-balancer/abcdef01234567890/1234567890abcdef0
CLI を使用して FS でサポートされているセキュリティポリシーの設定を表示するには

FS がサポートするセキュリティポリシー describe-ssl-policies コマンドを使用します。

この例では、 ELBSecurityPolicy-FS-2018-06 セキュリティポリシーを使用しています。

aws elbv2 describe-ssl-policies \ --names ELBSecurityPolicy-FS-2018-06
TLS 1.0 - 1.2

次の表は、使用可能な TLS 1.0-1.2 セキュリティポリシーでサポートされている TLS プロトコルと暗号を示しています。

注: セキュリティポリシー行のポリシー名からELBSecurityPolicy-プレフィックスが削除されました。

例: セキュリティポリシーELBSecurityPolicy-TLS-1-2-Ext-2018-06が として表示されますTLS-1-2-Ext-2018-06

セキュリティポリシー 
                                            ELBSecurityPolicy-2016-08
                                        
                                            ELBSecurityPolicy-TLS-1-2-Ext-2018-06
                                        
                                            ELBSecurityPolicy-TLS-1-2-2017-01
                                        
                                            ELBSecurityPolicy-TSL-1-1-2017-01
                                        
                                            ELBSecurityPolicy-TLS-1-0-2015-04
TLS Protocols
Protocol-TLSv1
Protocol-TLSv1.1
Protocol-TLSv1.2
TLS Ciphers
ECDHE-ECDSA-AES128-GCM-SHA256
ECDHE-RSA-AES128-GCM-SHA256
ECDHE-ECDSA-AES128-SHA256
ECDHE-RSA-AES128-SHA256
ECDHE-ECDSA-AES128-SHA
ECDHE-RSA-AES128-SHA
ECDHE-ECDSA-AES256-GCM-SHA384
ECDHE-RSA-AES256-GCM-SHA384
ECDHE-ECDSA-AES256-SHA384
ECDHE-RSA-AES256-SHA384
ECDHE-RSA-AES256-SHA
ECDHE-ECDSA-AES256-SHA
AES128-GCM-SHA256
AES128-SHA256
AES128-SHA
AES256-GCM-SHA384
AES256-SHA256
AES256-SHA
DES-CBC3-SHA

* DES-CBC3-SHA 暗号 (弱い暗号) を必要とするレガシークライアントをサポートする必要がない限り、このポリシーは使用しないでください。

CLI を使用して TLS 1.0-1.2 ポリシーを使用する HTTPS リスナーを作成するには

TLS 1.0-1.2 でサポートされているセキュリティポリシー で create-listener コマンドを使用します。

この例では、 ELBSecurityPolicy-2016-08 セキュリティポリシーを使用しています。

aws elbv2 create-listener --name my-listener \ --protocol HTTPS --port 443 \ --ssl-policy ELBSecurityPolicy-2016-08
CLI を使用して TLS 1.0-1.2 ポリシーを使用するように HTTPS リスナーを変更するには

TLS 1.0-1.2 でサポートされているセキュリティポリシー で modify-listener コマンドを使用します。

この例では、 ELBSecurityPolicy-2016-08 セキュリティポリシーを使用しています。

aws elbv2 modify-listener \ --listener-arn arn:aws:elasticloadbalancing:us-east-1:123456789012:listener/app/my-load-balancer/abcdef01234567890/1234567890abcdef0 \ --ssl-policy ELBSecurityPolicy-2016-08
CLI を使用してリスナーが使用するセキュリティポリシーを表示するには

リスナーarnの で describe-listener コマンドを使用します。

aws elbv2 describe-listener \ --listener-arn arn:aws:elasticloadbalancing:us-east-1:123456789012:listener/app/my-load-balancer/abcdef01234567890/1234567890abcdef0
CLI を使用して TLS 1.0-1.2 セキュリティポリシーの設定を表示するには

TLS 1.0-1.2 でサポートされているセキュリティポリシー describe-ssl-policies コマンドを使用します。

この例では、 ELBSecurityPolicy-2016-08 セキュリティポリシーを使用しています。

aws elbv2 describe-ssl-policies \ --names ELBSecurityPolicy-2016-08

HTTPS リスナーの追加

クライアントからロードバランサーへの接続用のプロトコルとポート、およびデフォルトのリスナールールのターゲットグループでリスナーを設定します。詳細については、「リスナーの設定」を参照してください。

前提条件
  • HTTPS リスナーを作成するには、証明書とセキュリティポリシーを指定する必要があります。ターゲットにリクエストをルーティングする前に、ロードバランサーはこの証明書を使用して接続を終了し、クライアントからのリクエストを復号します。ロードバランサーは、クライアントと SSL 接続のネゴシエーションを行うときにセキュリティポリシーを使用します。

  • 転送アクションをデフォルトのリスナールールに追加するには、利用可能なターゲットグループを指定する必要があります。詳細については、「ターゲットグループの作成」を参照してください。

  • 複数のリスナーで同じターゲットグループを指定できますが、これらのリスナーは同じロードバランサーに属している必要があります。ロードバランサーでターゲットグループを使用するには、ターゲットグループが他のロードバランサーのリスナーによって使用されていないことを確認する必要があります。

New EC2 experience
コンソールを使用した HTTPS リスナーを追加するには
  1. Amazon EC2 コンソール (https://console.aws.amazon.com/ec2/) を開きます。

  2. ナビゲーションペインで、[ロードバランサー] を選択します。

  3. ロードバランサーを選択します。

  4. [リスナーとルール] タブから、[リスナーの追加] を選択します。

  5. [プロトコル : ポート] で、[HTTPS] を選択してデフォルトのポートのままにするか、別のポートを入力します。

  6. (オプション) 認証を有効にするには、[認証] で [OpenID または Amazon Cognito を使用する] を選択し、要求された情報を提供してください。詳細については、「Application Load Balancer を使用してユーザーを認証する」を参照してください。

  7. [Default actions (デフォルトアクション)] で、次のいずれかを実行します。

    • [ターゲットグループへ転送] — トラフィックを転送するターゲットグループを 1 つ以上選択します。ターゲットグループを追加するには、[ターゲットグループの追加] を選択します。複数のターゲットグループを使用している場合は、ターゲットグループごとに重みを選択し、それに関連付けられている割合を確認します。1 つ以上のターゲットグループに対して維持設定を有効にしている場合は、ルールのグループレベルの維持設定を有効にする必要があります。

    • [URL にリダイレクト] — クライアントリクエストのリダイレクト先の URL を指定します。これを行うには、部分ごとに分けて [URI 部分] タブに入力するか、完全なアドレスを [完全な URL] タブに入力します。必要に応じて、[ステータスコード] で、一時的 (HTTP 302) または恒久的 (HTTP 301) としてリダイレクトを設定します。

    • [固定レスポンスを返す] — ドロップされたクライアントリクエストに対して返される [レスポンスコード] を指定します。[コンテンツタイプ] と [レスポンス本文] の指定もできますが、これは必須ではありません。

  8. [セキュリティポリシー] では、常に最新の事前定義されたセキュリティポリシーを使用することをお勧めします。

  9. [デフォルトの SSL/TLS 証明書] では、以下のオプションがあります。

    • AWS Certificate Manager を使用して証明書を作成またはインポートした場合は、[ACM から] を選択して、[証明書の選択] を選択します。

    • IAM を使用して証明書をすでにインポートしている場合は、[IAM から] を選択し、[証明書の選択] から対象の証明書を選択します。

    • インポートする証明書はあるが、リージョンで ACM を利用できない場合は、[インポート] を選択し、次に [IAM へ] を選択します。[証明書名] フィールドに証明書の名前を入力します。[証明書のプライベートキー] に、PEM エンコードされたプライベートキーファイルの内容をコピーして貼り付けます。[証明書本文] に、PEM エンコードされたパブリックキー証明書ファイルの内容をコピーして貼り付けます。自己署名証明書を使用しておらず、ブラウザが暗黙的に証明書を受け入れることが重要である場合に限り、[Certificate Chain] に、PEM エンコードされた証明書チェーンファイルの内容をコピーして貼り付けます。

  10. (オプション) 相互認証を有効にするには、クライアント証明書の処理相互認証 (mTLS) を有効にします。

    有効にすると、デフォルトの相互 TLS モードはパススルー になります。

    Trust Store で検証を選択した場合:

    • デフォルトでは、期限切れのクライアント証明書を持つ接続は拒否されます。この動作を変更するには、mTLS の詳細設定 を拡張し、クライアント証明書の有効期限、期限切れのクライアント証明書を許可する を選択します。

    • 信頼ストアで既存の信頼ストアを選択するか、新しい信頼ストアを選択します

      • 新しい信頼ストア を選択した場合は、信頼ストア名 S3 URI 認証機関の場所 、およびオプションで S3 URI 証明書失効リストの場所 を指定します。

  11. [保存] を選択します。

Old EC2 experience
コンソールを使用した HTTPS リスナーを追加するには
  1. Amazon EC2 コンソール (https://console.aws.amazon.com/ec2/) を開きます。

  2. ナビゲーションペインで、[ロードバランサー] を選択します。

  3. ロードバランサーを選択します。

  4. [Listeners] (リスナー) タブで、[Add listener] (リスナーの追加) を選択します。

  5. [プロトコル : ポート] で、[HTTPS] を選択してデフォルトのポートのままにするか、別のポートを入力します。

  6. (オプション) ユーザーを認証するには、[Default actions (デフォルトアクション)] で、[Add action (アクションの追加)]、[Authenticate (認証)] の順に選択し、必要な情報を入力します。詳細については、「Application Load Balancer を使用してユーザーを認証する」を参照してください。

  7. [Default actions (デフォルトアクション)] で、次のいずれかを実行します。

    • [転送] を選択し、ターゲットグループを選択します。

    • [リダイレクト] を選択し、URL とステータスコードを入力します。詳細については、「リダイレクトアクション」を参照してください。

    • [固定レスポンスを返す] を選択し、レスポンスコード、オプションの ID プロバイダー、(オプション) レスポンスの本文を指定します。詳細については、「固定レスポンスアクション」を参照してください。

  8. [セキュリティポリシー] では、コンソールが推奨するセキュリティポリシーを維持することをお勧めします。

  9. [デフォルトの SSL/TLS 証明書] で、次のいずれかを実行します。

    • AWS Certificate Manager を使用して証明書を作成またはインポートした場合は、[From ACM (ACM から)] を選択して、証明書を選択します。

    • IAM を使用して証明書をアップロードした場合は、[IAM から] を選択し、証明書を選択します。

  10. [追加] を選択します。

  11. (オプション) パスパターンまたはホスト名に基づいてリクエストを転送する追加のリスナールールを定義する方法については、「ルールの追加」を参照してください。

  12. (オプション) SNI プロトコルで使用するための証明書リストを追加するには、証明書リストに証明書を追加する を参照してください。

AWS CLI を使用した HTTPS リスナーを追加するには

create-listener コマンドを使用してリスナーとデフォルトのルールを作成し、create-rule コマンドを使用して追加のリスナールールを定義します。