同一のリスナーで異なるドメイン名への HTTPS リクエストを異なるバックエンドサーバーグループに転送するには、Classic Load Balancer (CLB) の追加ドメイン機能を使用します。この機能により、複数の SSL 証明書をアタッチして、各ドメインへのリクエストをそれぞれのバックエンドサーバーグループに転送できます。
基本概念
Server Name Indication (SNI) は SSL/TLS プロトコルの拡張機能であり、単一の IP アドレスで複数の SSL 証明書をホストできます。クライアントがロードバランサーに接続すると、CLB はデフォルトで、リクエストされたドメイン名に設定された証明書を使用してトラフィックを復号します。一致する証明書が見つからない場合、CLB はリスナーに設定された証明書を使用します。
追加ドメインに関連付けられたサーバー証明書の有効期限が切れると、CLB はその期限切れの証明書に対する SNI マッチングロジックをスキップします。クライアントリクエストの SNI が期限切れの証明書のドメイン名と完全に一致する場合でも、CLB は期限切れの証明書を使用しません。代わりに、CLB は HTTPS リスナーに設定されたデフォルトの証明書にフォールバックします。この動作により、クライアントが期待した追加ドメインの証明書ではなくデフォルトの証明書を受信し、SSL/TLS 証明書の不一致に関する警告が表示される可能性があります。ビジネスへの影響を避けるため、追加ドメインの証明書は有効期限が切れる前に更新してください。
制限事項
-
パフォーマンス保証型 CLB インスタンスのみが SNI をサポートします。
-
デフォルトでは、HTTPS リスナーに最大 3 つの追加ドメインを追加できます。この上限は最大 10 まで引き上げることができます。上限の引き上げをリクエストするには、クォータセンターに移動してください。
追加ドメインの最大上限 10 で要件を満たせない場合は、以下の解決策を検討してください:
-
異なるポートで複数の HTTPS リスナーを使用し、各リスナーに異なる追加ドメインを設定します。
-
Application Load Balancer (ALB) へ移行してください。ALB は証明書と転送ルールを使用して複数のドメイン名を管理し、最大 300 の追加証明書をサポートし、より高度な転送条件とアクションを提供します。
-
-
CLB は、以下の公開鍵アルゴリズムをサポートしています:
-
RSA 1024
-
RSA 2048
-
RSA 4096
-
注意事項
-
追加ドメインは、選択したサーバー証明書のドメイン名と一致する必要があります。
-
複数のワイルドカード証明書を設定した場合、すべての対象サブドメインのリクエストに自動的に一致するのは、最初のワイルドカード証明書のみです。後続のワイルドカード証明書は自動的にリクエストに一致しません。特定のサブドメインごとに追加ドメインを設定し、対応するワイルドカード証明書に明示的に関連付ける必要があります。
たとえば、最初に
*.example.comの証明書を設定し、次に*.test.comの証明書を設定した場合、abc.example.comへのリクエストは自動的に一致します。しかし、abc.test.comへのリクエストはデフォルトでは自動的に一致しません。abc.test.com用に新しい追加ドメインを設定し、*.test.com証明書を使用するように指定する必要があります。
前提条件
CLB インスタンスを作成し、そのインスタンスに HTTPS リスナーを設定済みであること。詳細については、「HTTPS リスナーの追加」をご参照ください。
追加ドメインの追加
-
CLB コンソールにログインします。
-
インスタンス ページで、対象インスタンスの ID をクリックします。
-
リスナー タブで、作成した HTTPS リスナーを見つけます。操作 列で、
> ドメイン拡張子の管理 をクリックします。 -
ドメイン拡張子の管理 パネルで、ドメイン拡張子の追加 をクリックします。
-
追加ドメイン名を入力します。
ドメイン名が有効かどうかを確認するには、Alibaba Cloud ドメイン名チェックツールを使用してください。
ドメイン名に基づく転送は、完全一致とワイルドカード一致の 2 つの照合モードをサポートします。
-
完全一致ドメイン名: www.aliyun.com
-
ワイルドカードドメイン名: *.aliyun.com、*.market.aliyun.com
リクエストが複数のドメインベースの転送ルールに一致する場合、ルールは次の順序で優先されます:完全一致 > より具体的なワイルドカード一致 > より汎用的なワイルドカード一致。
説明次の表では、✓ は一致を示し、× は不一致を示します。
モード
テストリクエスト URL
ドメイン転送ルール
www.aliyun.com
*.aliyun.com
*.market.aliyun.com
完全一致
www.aliyun.com
✓
×
×
ワイルドカード一致
market.aliyun.com
×
✓
×
info.market.aliyun.com
×
×
✓
-
-
ドメイン名に関連付けるサーバー証明書を選択します。
-
OK をクリックします。
追加ドメインは、転送ルールに関連付けられて初めて有効になります。
-
-
任意:転送ルールを設定します。
-
通知 ダイアログボックスで、ルールの設定 をクリックします。または、インスタンス ページで対象インスタンスの ID をクリックし、リスナー タブに移動して HTTPS リスナーを見つけ、操作 列の 転送ルールの設定 をクリックします。
-
ルール パネルでドメイン名を入力して URL を設定し、さらに追加 をクリックします。
詳細については、「CLB インスタンスを設定して HTTPS 経由で複数のドメイン名にサービスを提供」をご参照ください。
説明転送ルールで設定するドメイン名が、追加ドメインと同じであることを確認してください。
-
追加ドメインの編集
追加ドメインで使用する証明書を置き換えることができます。
-
CLB コンソールにログインします。
-
インスタンス ページでインスタンスの ID をクリックし、リスナー タブに移動して HTTPS リスナーを見つけ、操作 列で
> ドメイン拡張子の管理 をクリックします。 -
ドメイン拡張子の管理 ページで対象の追加ドメインを見つけ、操作 列の 編集 をクリックします。
-
ドメイン拡張子の変更 ダイアログボックスで新しい証明書を選択し、OK をクリックします。
追加ドメインの削除
不要になった追加ドメインは削除できます。
-
CLB コンソールにログインします。
-
インスタンス ページで、インスタンスの ID をクリックします。
-
リスナー タブに移動して HTTPS リスナーを見つけ、操作 列で
> ドメイン拡張子の管理 をクリックします。 -
ドメイン拡張子の管理 ページで対象の追加ドメインを見つけ、操作 列の 削除 をクリックします。
-
確認ダイアログボックスで、OK をクリックします。
よくある質問
購入した証明書が見つからない
関連トピック
-
複数のドメイン名を持つ Web サイトの設定方法に関するチュートリアルについては、「CLB インスタンスを設定して HTTPS 経由で複数のドメイン名にサービスを提供」をご参照ください。
-
同じドメイン名でパスが異なるリクエストを異なるバックエンドサーバーグループに転送するには、「転送ルールを使用して同じドメイン名のパスに基づいてリクエストを転送」をご参照ください。