Application Load Balancer のリスナールールを使用して、HTTP リクエストを HTTPS にリダイレクトしたいと考えています。
解決策
ロードバランサーのバージョンを確認する
- Amazon Elastic Compute Cloud (Amazon EC2) コンソールを開きます。
- サイドバーの [ロードバランシング] で **[ロードバランサー]**を選択します。
- リスナールールを作成するロードバランサーを探し出します。[タイプ] 列に表示されているバージョン (アプリケーション、クラシック、ネットワーク、ゲートウェイ) を確認します。
以下の手順は、Application Load Balancer にのみ適用されます。Classic Load Balancer を使用している場合は、「Classic Load Balancer で HTTP トラフィックを HTTPS にリダイレクトする方法を教えてください。」を参照してください。
**注:**以下の手順を実行する前に、ターゲットグループを作成する必要があります。
HTTP リクエストを HTTPS にリダイレクトする HTTP リスナールールを作成する
- Amazon EC2 コンソールを開きます。
- サイドバーの [ロードバランシング] で **[ロードバランサー]**を選択します。
- ロードバランサーを選択し、[リスナー]、**[リスナーの追加]**を選択します。**注:**すでに HTTP リスナーがある場合は、ステップ 6 に進んでください。
- [プロトコル: ポート] で **[HTTP]**を選択します。デフォルトのポートをそのまま使用することも、カスタムポートを指定することもできます。
- [デフォルトアクション] で [アクションを追加]、[リダイレクト先] を選択し、**ポート 443 ** (デフォルトを使用していない場合は別のポート) を入力します。詳細については、「ルールアクションタイプ」を参照してください。保存するには、チェックマークアイコンを選択します。**注:**これらのタスクの手順 3 ~ 5 に従って新しい HTTP リスナーを作成した場合は、「HTTPS リスナーを作成する」に進んでください。
- ロードバランサーを選択し、**[HTTP リスナー]**を選択します。
- [ルール] で **[ルールの表示/編集]**を選択します。
- [ルールを編集] を選択すると、既存のデフォルトルールが変更され、すべての HTTP リクエストが HTTPS にリダイレクトされます。または、既存のルールの間にルールを挿入します (ユースケースに適切な場合)。
- [アクション] で既存の条件を削除します。次に、[リダイレクト先] アクションを使用して新しい条件を追加します。
- [HTTPS] には 443 ポートを入力します。
- 残りのオプションはデフォルトのままにします。
**注:**URL またはリターンコードを変更する場合は、必要に応じてこれらのオプションを変更できます。
- 保存するには、チェックマークアイコンを選択します。
HTTPS リスナーを作成する
**注:**それぞれのターゲットグループにリクエストを転送するルールが設定された HTTPS リスナーがすでにある場合は、「Application Load Balancer のセキュリティグループが 443 のトラフィックを許可していることを確認する」に進んでください。
- [リスナー]、**[リスナーの追加]**を選択します。
- [プロトコル: ポート] で **[HTTPS]**を選択します。デフォルトのポートをそのまま使用するか、カスタムポートを指定します。
- [デフォルトアクション] で、[アクションを追加]、**[転送先]**を選択します。
- アプリケーションインスタンスをホストするターゲットグループを選択します。
- 設定に最適な定義済みのセキュリティポリシーを選択します。
- デフォルトのセキュリティ証明書を選択します。(それがない場合は、セキュリティ証明書を作成できます。)
- **[保存]**を選択します。
Application Load Balancer のセキュリティグループが 443 のトラフィックを許可していることを確認します
- ロードバランサーの **[説明]**を選択します。
- [セキュリティ] で **[セキュリティグループ ID]**を選択します。
- インバウンドルールを確認します。セキュリティグループには、HTTP と HTTPS のトラフィックを許可するインバウンドルールが必要です。インバウンドルールがない場合は、次の手順を実行して追加します。
インバウンドルールを追加するには (まだ持っていない場合):
- [アクション]、[インバウンドルールを編集] を選択し、セキュリティグループを変更します。
- **[ルールを追加]**を選択します。
- [タイプ] で **[HTTPS]**を選択します。
- [ソース] で [カスタム] (0.0.0.0/0 またはソース CIDR) を選択します。
- **[保存]**を選択します。