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


参照
サードパーティのサーバー証明書を使用する必要がある場合は、「SSL 証明書のアップロードと共有」をご参照ください。
TCP 上の SSL を使用するリスナーを追加する方法の詳細については、「TCP 上の SSL を使用するリスナーの追加」をご参照ください。
より高いセキュリティ要件を満たすために相互認証を実装する場合は、「TCP 上での SSL オフロードを有効にするための NLB の使用 (相互認証)」をご参照ください。