翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
Classic Load Balancer の HTTPS リスナーの設定
リスナーとは接続リクエストをチェックするプロセスです。リスナーは、フロントエンド (クライアントからロードバランサー) 接続用のプロトコルとポート、およびバックエンド (ロードバランサーからインスタンス) 接続用のプロトコルとポートを使用して設定します。Elastic Load Balancing でサポートされるポート、プロトコル、およびリスナー設定の詳細については、「Classic Load Balancer のリスナー」を参照してください。
ポート 80 で HTTP リクエストを受け付けるリスナーを持つロードバランサーがある場合は、ポート 443 で HTTPS リクエストを受け付けるリスナーを追加できます。HTTPS リスナーがポート 80 でインスタンスに SSL リクエストを送信する方法を指定すると、ロードバランサーはリクエストを終了し、ロードバランサーからインスタンスへの通信は暗号化されません。HTTPS リスナーがポート 443 でインスタンスにリクエストを送信する場合は、ロードバランサーからインスタンスへの通信は暗号化されます。
ロードバランサーがインスタンスとの通信に暗号化された接続を使用する場合、オプションでインスタンスでの認証を有効にできます。これにより、パブリックキーとロードバランサーにこのために指定したキーが一致した場合に限り、ロードバランサーがインスタンスと通信できます。
新しい HTTPS リスナーの作成については、「HTTPS リスナーを使用する Classic Load Balancer の作成」を参照してください。
前提条件
HTTPS リスナーの HTTPS サポートを有効にするには、ロードバランサーに SSL サーバー証明書をデプロイする必要があります。インスタンスにリクエストを送信する前に、ロードバランサーは証明書を使用してリクエストを終了し、次にリクエストを復号します。SSL 証明書がない場合は作成します。詳細については、「Classic Load Balancer 用の SSL/TLS 証明書」を参照してください。
コンソールを使用した HTTPS リスナーの追加
既存のロードバランサーに、HTTPS リスナーを追加できます。
コンソールを使用してロードバランサーに HTTPS リスナーを追加するには
Amazon EC2 コンソールの https://console.aws.amazon.com/ec2/
を開いてください。 -
ナビゲーションペインの [ロードバランシング] で [ロードバランサー] を選択します。
-
ロードバランサーの名前を選択して、その詳細ページを開きます。
-
[リスナー] タブで、[リスナーを追加] を選択します。
-
[リスナーを管理] ページの [リスナー] セクションで、 [リスナーの追加] を選択します。
-
[リスナープロトコル] で [HTTPS] を選択します。
重要
デフォルトでは、インスタンスプロトコルは HTTP です。バックエンドインスタンス認証を設定するには、インスタンスプロトコルを HTTPS に変更します。
-
[セキュリティポリシー] には、常に最新の事前定義されたセキュリティポリシーを使用することをお勧めします。別の事前定義されたセキュリティポリシーを使用する場合や、カスタムポリシーを作成する場合は、「SSL ネゴシエーション設定の更新」を参照してください。
-
[デフォルトの SSL 証明書] で、[編集] を選択し、次のいずれかの操作を行います。
-
を使用して証明書を作成またはインポートした場合は AWS Certificate Manager、ACM から を選択し、リストから証明書を選択し、変更の保存 を選択します。
注記
このオプションは、 がサポートされているリージョンでのみ使用できます AWS Certificate Manager
-
IAM を使用して証明書をインポートした場合は、[IAM から] を選択し、リストから証明書を選択して、[変更内容の保存] を選択します。
-
ACM にインポートする SSL 証明書がある場合は、[インポート] と [ACM へ] を選択します。[証明書のプライベートキー] に、PEM エンコードされたプライベートキーファイルの内容をコピーして貼り付けます。[証明書本文] に、PEM エンコードされたパブリックキー証明書ファイルの内容をコピーして貼り付けます。自己署名証明書を使用していて、ブラウザーがその証明書を暗黙的に受け入れることが重要ではない場合以外は、[証明書チェーン - オプション] に、PEM エンコードされた証明書チェーンファイルの内容をコピーして貼り付けます。
-
インポートする SSL 証明書があるが、このリージョンで ACM がサポートされていない場合は、[インポート] と [IAM へ] を選択します。[証明書名] に証明書の名前を入力します。[証明書のプライベートキー] に、PEM エンコードされたプライベートキーファイルの内容をコピーして貼り付けます。[証明書本文] に、PEM エンコードされたパブリックキー証明書ファイルの内容をコピーして貼り付けます。自己署名証明書を使用していて、ブラウザーがその証明書を暗黙的に受け入れることが重要ではない場合以外は、[証明書チェーン - オプション] に、PEM エンコードされた証明書チェーンファイルの内容をコピーして貼り付けます。
-
[Save changes] (変更の保存) をクリックします。
-
-
Cookie スティッキネスの場合、デフォルトは無効です。これを変更するには、[編集] を選択します。[ロードバランサーによって生成] を選択した場合は、[有効期限] を指定する必要があります。[アプリケーションによって生成] を選択した場合は、Cookie 名 を指定する必要があります。選択後、[変更を保存] を選択します。。
-
(オプション) [リスナーを追加] を選択してその他のリスナーを追加します。
-
[変更を保存] を選択して、先ほど設定したリスナーを追加します。
-
(オプション) 既存のロードバランサーのバックエンドインスタンス認証を設定するには、 AWS CLI または API を使用する必要があります。このタスクは コンソールではサポートされていないためです。詳細については、「バックエンドインスタンス認証の設定」を参照してください。
を使用して HTTPS リスナーを追加する AWS CLI
既存のロードバランサーに、HTTPS リスナーを追加できます。
を使用してロードバランサーに HTTPS リスナーを追加するには AWS CLI
-
SSL 証明書の Amazon リソースネーム (ARN) を取得します。以下に例を示します。
ACM
arn:aws:acm:region:123456789012:certificate/12345678-1234-1234-1234-123456789012IAM
arn:aws:iam::123456789012:server-certificate/my-server-certificate -
(ポート 443 で HTTPS リクエストを受け付け、そのリクエストを HTTP を使用してポート 80 でインスタンスに送信している) ロードバランサーに対しリスナーを追加するには、次の create-load-balancer-listeners コマンドを使用します。
aws elb create-load-balancer-listeners --load-balancer-namemy-load-balancer--listeners Protocol=HTTPS,LoadBalancerPort=443,InstanceProtocol=HTTP,InstancePort=80,SSLCertificateId=ARNバックエンドインスタンス認証をセットアップするには、次のコマンドを使用して、ポート 443 で HTTPS リクエストを受け付け、HTTPS を使用してポート 443 でインスタンスにリクエストを送信するリスナーを追加します。
aws elb create-load-balancer-listeners --load-balancer-namemy-load-balancer--listeners Protocol=HTTPS,LoadBalancerPort=443,InstanceProtocol=HTTPS,InstancePort=443,SSLCertificateId=ARN -
(オプション) 次の describe-load-balancers コマンドを使用して、ロードバランサーの更新後の詳細を表示できます。
aws elb describe-load-balancers --load-balancer-namemy-load-balancer以下に、応答の例を示します。
{ "LoadBalancerDescriptions": [ { ... "ListenerDescriptions": [ { "Listener": { "InstancePort": 80, "SSLCertificateId": "ARN", "LoadBalancerPort": 443, "Protocol": "HTTPS", "InstanceProtocol": "HTTP" }, "PolicyNames": [ "ELBSecurityPolicy-2016-08" ] }, { "Listener": { "InstancePort": 80, "LoadBalancerPort": 80, "Protocol": "HTTP", "InstanceProtocol": "HTTP" }, "PolicyNames": [] } ], ... } ] } -
(オプション) HTTPS リスナーは、デフォルトのセキュリティポリシーを使用して作成されています。異なる事前定義済みセキュリティポリシーや、カスタムのセキュリティポリシーを指定する場合は、create-load-balancer-policy コマンドおよび set-load-balancer-policies-of-listener コマンドを使用します。詳細については、「を使用して SSL ネゴシエーション設定を更新する AWS CLI」を参照してください。
-
(オプション) バックエンドインスタンス認証をセットアップするには、set-load-balancer-policies-for-backend-server コマンドを使用します。詳細については、「バックエンドインスタンス認証の設定」を参照してください。