透過プロキシモードは、さまざまなタイプのオリジンサーバーでサポートされています。 オリジンサーバーは、Application Load Balancer (ALB) 、Layer 7 Server Load Balancer (SLB) 、Layer 4 SLB、およびElastic Compute Service (ECS) インスタンスです。 このトピックでは、透過プロキシモードでWeb Application Firewall (WAF) に追加されるドメイン名のトラフィックリダイレクトポートを設定する方法について説明します。 トラフィックリダイレクトポートが設定されると、ポート上のトラフィックはWAFにリダイレクトされます。
ALBインスタンスのトラフィックリダイレクションポートの設定
シナリオ: webサービスはALBインスタンスでホストされており、ALBインスタンスのリスニングポートに対してWAF保護を有効にする必要があります。
手順: [ポート設定] セクションで、[ALBベースのドメイン] タブをクリックします。
インスタンスリストの説明: ALBベースのドメインタブには、SLBコンソールで作成されたインターネットに接続されたALBインスタンスが表示されます。 [ポート] 列には、ALBインスタンスのHTTPまたはHTTPSリスニングポートが表示されます。
リスニングポートのWAF保護を有効にする: SLBコンソールで、ALBインスタンスのHTTPまたはHTTPSリスナーを作成し、[リスナーの設定] ステップで [WAF保護を有効にする] を選択します。 ALBインスタンス用のHTTPまたはHTTPSリスナーの作成方法の詳細については、「HTTPリスナーの追加」および「HTTPSリスナーの追加」をご参照ください。
HTTPまたはHTTPSリスナーが作成されている場合、SLBコンソールでリスナーのWAF保護を有効または無効にできます。
[透過プロキシモード] の [ALBベースのドメイン] タブで、HTTPまたはHTTPSリスニングポートに対してWAF保護が有効になっているかどうかを確認できます。 ただし、WAFコンソールでポートのWAF保護を有効または無効にすることはできません。 リスニングポートのWAF保護を有効または無効にする場合は、SLBコンソールに移動する必要があります。
レイヤー7 SLBインスタンスのトラフィックリダイレクションポートの設定
シナリオ: webサービスは、レイヤー7 HTTPまたはHTTPSリスナーを使用してSLBインスタンスでホストされており、SLBインスタンスのリスニングポートに対してWAF保護を有効にする必要があります。
手順: [ポート設定] セクションで、[レイヤー7 SLBベースのドメイン] タブをクリックします。
インスタンスリストの説明: [レイヤー7 SLBベースのドメイン] タブには、SLBコンソールで作成されたインターネットに接続されたSLBインスタンスが表示されます。 [ポート] 列には、SLBインスタンスのHTTPまたはHTTPSリスニングポートが表示されます。
リスニングポートのWAF保護を有効にする: WAFコンソールにログインします。 [レイヤー7 SLBベースのドメイン] タブで、[ポート] 列のHTTPまたはHTTPSリスニングポートを選択します。
ポートを選択すると、ポート上のトラフィックはWAFにリダイレクトされ、WAFはトラフィックを検出してフィルタリングします。 選択されていないポートのトラフィックは、クライアントから配信元サーバーに直接送信され、WAFを通過しません。
複数のドメイン名のトラフィックを同時にリッスンするポートを選択した場合、ポートがリッスンするトラフィックを持つすべてのドメイン名に対してWAF保護が有効になります。 この場合、特定のドメイン名に対してWAF保護を有効にすることはできません。
[ポート] 列に [利用可能なポートなし] が表示された場合、インスタンスのHTTPまたはHTTPSリスナーは作成されません。 インスタンスのHTTPまたはHTTPSリスナーを作成するには、SLBコンソールに移動する必要があります。 次に、WAFコンソールでリスニングポートのWAF保護を有効にできます。 レイヤー7 SLBインスタンスのHTTPまたはHTTPSリスナーの作成方法の詳細については、「HTTPリスナーの追加」および「HTTPSリスナーの追加」をご参照ください。
レイヤー4 SLBインスタンスのトラフィックリダイレクションポートの設定
シナリオ: webサービスはレイヤ4 TCPリスナーを使用してSLBインスタンスでホストされており、SLBインスタンスのTCPリスニングポートに対してWAF保護を有効にする必要があります。
手順: [ポート設定] セクションで、[レイヤー4 SLBベースのドメイン] タブをクリックします。
インスタンスリストの説明: [レイヤー4 SLBベースのドメイン] タブには、SLBコンソールで作成されたインターネットに接続されたSLBインスタンスが表示されます。 [ポート] 列には、SLBインスタンスのTCPリスニングポートが表示されます。
手順
SLBインスタンスのリスニングポートをWAFに追加する必要があります。 次に、追加されたポートのWAF保護を有効にできます。 次の手順で、ポートのWAF保護を有効にする方法を説明します。
SLBインスタンスのTCPリスニングポートをWAFに追加します。
重要SLBコンソールでSLBインスタンスのTCPリスナーを作成した後にのみ、WAFにTCPリスニングポートを追加できます。 SLBインスタンスのTCPリスナーを作成する方法の詳細については、「TCPリスナーの追加」をご参照ください。
[レイヤー4 SLBベースのドメイン] タブで、SLBインスタンスを見つけ、[ポート] 列の [追加] をクリックします。
[ポートの追加] ダイアログボックスで、[ポート] ドロップダウンリストでTCPリスニングポートを選択し、HTTPまたはHTTPSを選択します。
オプション: HTTPを選択した場合、この手順をスキップします。 HTTPSを選択した場合は、デフォルトの証明書をアップロードするか、証明書を追加します。 最大3つの証明書を追加できます。
証明書の説明:
既定の証明書: クライアントからのHTTPSリクエストを受信した後にサーバーによって返される既定の証明書。 サーバーが1つのSSL証明書のみを使用する場合、デフォルトの証明書をアップロードするだけで済みます。
拡張証明書: サーバーがクライアントからHTTPSリクエストを受信し、追加の証明書と一致したときにサーバーがクライアントに返す証明書。 追加の証明書には、リクエストのServer name Indication (SNI) フィールドと同じドメイン名を含める必要があります。 サーバーがSNIフィールドに基づいて追加の証明書と一致できない場合、サーバーはデフォルトの証明書を返します。
SNIフィールドは、SSLおよびTLSプロトコルの拡張である。 サーバーは、SNIフィールドに基づいて複数のドメイン名と証明書を使用できます。 クライアントがサーバーへのSSL接続を確立する前に、クライアントはリクエストにアクセスするドメイン名を含めます。 次に、サーバーは要求されたドメイン名に一致する証明書を返します。
次のいずれかの方法を使用して、証明書をアップロードできます。
手動アップロード: 証明書名、証明書ファイル、および秘密鍵ファイルパラメーターを手動で設定する必要があります。
[既存の証明書の選択]: [SSL certificates Serviceコンソール] で管理されている既存の証明書のリストから必要な証明書を選択するだけです。 この方法を使用することを推奨します。
アップロードする証明書がリストにない場合は、[クラウドセキュリティ-証明書サービス] をクリックして、必要な証明書をSSL証明書サービスコンソールにアップロードする必要があります。 次に、リストから証明書を選択できます。
追加したポートのWAF保護を有効にします。 これを行うには、WAFコンソールにログインし、[レイヤー4 SLBベースのドメイン] タブで、[ポート] 列で追加したポートを選択します。
ポートを選択すると、ポート上のトラフィックはWAFにリダイレクトされ、WAFはトラフィックを検出してフィルタリングします。 選択されていないポートのトラフィックは、クライアントから配信元サーバーに直接送信され、WAFを通過しません。
重要複数のドメイン名のトラフィックを同時にリッスンするポートを選択した場合、ポートがリッスンするトラフィックを持つすべてのドメイン名に対してWAF保護が有効になります。 この場合、特定のドメイン名に対してWAF保護を有効にすることはできません。
ECSインスタンスのトラフィックリダイレクションポートの設定
シナリオ: webサービスはECSインスタンスでホストされており、ECSインスタンスのHTTPまたはHTTPSトラフィックに対してWAF保護を有効にする必要があります。
手順: [ポート設定] セクションで、[ECSベースのドメイン] タブをクリックします。
インスタンスリストの説明: ECSベースのドメインタブには、ECSコンソールで作成され、パブリックIPアドレスを持つECSインスタンスが表示されます。 [ポート] 列には、WAFに追加されたポートが表示されます。
手順
ECSインスタンスのポートをWAFに追加する必要があります。 次に、追加されたポートのWAF保護を有効にできます。 次の手順で、ポートのWAF保護を有効にする方法を説明します。
ECSインスタンスのポートをWAFに追加します。
[ECSベースのドメイン] タブで、[ポート] 列の [追加] をクリックします。
[ポートの追加] ダイアログボックスで、[ポート] フィールドにECSインスタンスのHTTPポートまたはHTTPSポートを入力し、HTTPまたはHTTPSを選択します。
オプション: HTTPを選択した場合、この手順をスキップします。 HTTPSを選択した場合は、デフォルトの証明書をアップロードするか、証明書を追加します。 最大3つの証明書を追加できます。
証明書の説明:
既定の証明書: クライアントからのHTTPSリクエストを受信した後にサーバーによって返される既定の証明書。 サーバーが1つのSSL証明書のみを使用する場合、デフォルトの証明書をアップロードするだけで済みます。
拡張証明書: サーバーがクライアントからHTTPSリクエストを受信し、追加の証明書と一致したときにサーバーがクライアントに返す証明書。 追加の証明書には、リクエストのServer name Indication (SNI) フィールドと同じドメイン名を含める必要があります。 サーバーがSNIフィールドに基づいて追加の証明書と一致できない場合、サーバーはデフォルトの証明書を返します。
SNIフィールドは、SSLおよびTLSプロトコルの拡張である。 サーバーは、SNIフィールドに基づいて複数のドメイン名と証明書を使用できます。 クライアントがサーバーへのSSL接続を確立する前に、クライアントはリクエストにアクセスするドメイン名を含めます。 次に、サーバーは要求されたドメイン名に一致する証明書を返します。
次のいずれかの方法を使用して、証明書をアップロードできます。
手動アップロード: 証明書名、証明書ファイル、および秘密鍵ファイルパラメーターを手動で設定する必要があります。
[既存の証明書の選択]: [SSL certificates Serviceコンソール] で管理されている既存の証明書のリストから必要な証明書を選択するだけです。 この方法を使用することを推奨します。
アップロードする証明書がリストにない場合は、[クラウドセキュリティ-証明書サービス] をクリックして、必要な証明書をSSL証明書サービスコンソールにアップロードする必要があります。 次に、リストから証明書を選択できます。
WAFに追加されたポートのWAF保護を有効にします。 これを行うには、WAFコンソールにログインし、[ECSベースのドメイン] タブで [ポート] 列のポートを選択します。
ポートを選択すると、ポート上のトラフィックはWAFにリダイレクトされ、WAFはトラフィックを検出してフィルタリングします。 選択されていないポートのトラフィックは、クライアントから配信元サーバーに直接送信され、WAFを通過しません。
重要複数のドメイン名のトラフィックを同時にリッスンするポートを選択した場合、ポートがリッスンするトラフィックを持つすべてのドメイン名に対してWAF保護が有効になります。 この場合、特定のドメイン名に対してWAF保護を有効にすることはできません。