レイヤ4ロードバランサーを使用し、SSL暗号化を使用してセキュリティを強化する場合は、各バックエンドサーバーでSSL証明書を設定できます。 しかし、この方法は非効率的である。 この場合、Network Load Balancer (NLB) のSSLオフロード機能を使用できます。 トラフィックの入力としてNLBインスタンスをデプロイし、SSL証明書を設定できます。 このようにして、NLBインスタンスは暗号化されたトラフィックを平文トラフィックに復号化し、平文トラフィックをバックエンドサーバーに配信します。 これにより、バックエンドサービスの効率が向上し、バックエンドサーバーの構成が簡素化され、セキュリティが確保されます。
前提条件
NLBインスタンスが作成されました。 詳細については、「NLBインスタンスの作成と管理」をご参照ください。
NLBバックエンドサーバーグループが作成されます。 詳細については、「サーバーグループの作成と管理」をご参照ください。
重要サーバーグループのバックエンドプロトコルはTCPである必要があります。
SSL over TCPを使用するリスナーを、クライアントIP保存が有効になっているサーバーグループに関連付けることはできません。 サーバーグループの機能が無効になっていることを確認してください。
ECS01とECS02がバックエンドサーバーグループに追加され、サービスがECS01とECS02にデプロイされます。
ステップ1: サーバー証明書の準備
Alibaba Cloudからサーバー証明書を購入するか、別のサービスプロバイダーからサーバー証明書を購入して証明書をアップロードできます。
この例では、サーバー証明書はAlibaba Cloudから購入されています。
サーバー証明書の購入方法の詳細については、「SSL証明書の購入」をご参照ください。
証明書のアップロード方法の詳細については、「SSL証明書のアップロード」をご参照ください。
SSL証明書に関連付けるドメイン名が登録されており、インターネットコンテンツプロバイダー (ICP) 番号が設定されていることを確認します。 詳細については、「Alibaba Cloudへのドメイン名の登録」および「ICP登録アプリケーションの概要」をご参照ください。
手順2: SSL over TCPを使用するリスナーの設定
NLBコンソールにログインします。
左側のナビゲーションウィンドウで、
を選択します。上部のナビゲーションバーで、NLBインスタンスがデプロイされているリージョンを選択します。
[インスタンス] ページで、NLBインスタンスを見つけ、[操作] 列の [リスナーの作成] をクリックします。
[リスナーの設定] ステップで、次のパラメーターを設定します。 他のパラメーターには、デフォルト値またはカスタム値を使用できます。 [次へ] をクリックします。
パラメーター
説明
リスナープロトコル
[TCPSSL] を選択します。
リスナーポート
この例では、443が使用されます。
[SSL証明書の設定] ステップで、次のパラメーターを設定します。 他のパラメーターには、デフォルト値またはカスタム値を使用できます。 [次へ] をクリックします。
パラメーター
説明
サーバー証明書
手順1で取得したサーバー証明書を選択します。
TLSセキュリティポリシー
ビジネス要件に基づいてセキュリティポリシーを選択します。 新しいバージョンを選択する場合は、セキュリティポリシーがクライアントと互換性があることを確認してください。
[サーバーグループの選択] ステップで、次のパラメーターを設定します。 他のパラメーターには、デフォルト値またはカスタム値を使用できます。 [次へ] をクリックします。
パラメーター
説明
サーバーグループ
作成したサーバーグループを選択します。
[設定の確認] ステップで、パラメーターが正しく設定されているかどうかを確認し、[送信] をクリックします。
ステップ3: CNAMEレコードの作成
NLBコンソールにログインします。
上部のナビゲーションバーで、NLBインスタンスがデプロイされているリージョンを選択します。
DNSレコードを作成するNLBインスタンスを選択し、NLBインスタンスのドメイン名をコピーします。
CNAMEレコードを作成するには、次の手順を実行します。
Alibaba Cloud DNS コンソールにログオンします。
[ドメイン名の解決] ページで、[ドメイン名の追加] をクリックします。
[ドメイン名の追加] ダイアログボックスで、ホストのドメイン名を入力し、[OK] をクリックします。
重要CNAMEレコードを作成する前に、TXTレコードを使用してドメイン名の所有権を確認する必要があります。
管理するドメイン名を見つけて、[操作] 列の [DNS設定] をクリックします。
[DNS設定] ページで、[DNSレコードの追加] をクリックします。
[DNSレコードの追加] パネルで、次のパラメーターを設定し、[OK] をクリックします。
パラメーター
説明
レコードタイプ
ドロップダウンリストから [CNAME] を選択します。
ホスト名
ドメイン名のプレフィックスを入力します。
DNSリクエストソース
[デフォルト] を選択します。
レコード値
コピーしたNLBインスタンスのドメイン名であるCNAMEを入力します。
TTL
DNSサーバーにキャッシュされるCNAMEレコードの有効期限 (TTL) 値を選択します。 この例では、デフォルト値が使用されます。
ステップ4: ネットワーク接続のテスト
ブラウザにNLBインスタンスに関連付けられているドメイン名を入力し、ページを複数回更新します。 リクエストはHTTPS経由でバックエンドサービスに転送され、ECSインスタンス間で分散されます。
ブラウザーのキャッシュに問題が発生した場合は、レイヤー4 Server Load Balancer (SLB) インスタンスの機能をテストする際に、プライベートブラウジングモードでブラウザーを使用してドメイン名にアクセスすることをお勧めします。
関連ドキュメント
サードパーティのサーバー証明書を使用する必要がある場合は、「SSL証明書のアップロードと共有」をご参照ください。
SSL over TCPを使用するリスナーを追加する方法の詳細については、「SSL over TCPを使用するリスナーの追加」をご参照ください。
より高いセキュリティ要件を満たすために相互認証を実装する場合は、「NLBを使用してTCP経由でSSLオフロードを有効にする (相互認証) 」を参照してください。