すべてのプロダクト
Search
ドキュメントセンター

Web Application Firewall:透明プロキシモード

最終更新日:May 23, 2024

ドメインネームシステム (DNS) レコードを変更することなく、Webサイト情報を入力することで、透過的なプロキシモードでWebアプリケーションファイアウォール (WAF) にWebサイトを追加できます。 オリジンサーバーがAlibaba Cloud ECS (Elastic Compute Service) またはインターネットに接続されたSLB (server Load Balancer) インスタンスにデプロイされている場合、透過プロキシモードでWebサイトをWAFに追加できます。 このトピックでは、透過プロキシモードでWebサイトをWAFに追加する方法について説明します。

説明

WAF 2.0インスタンスをWAF 3.0に移行した場合、ECS、Classic Load Balancer (CLB) 、Application Load Balancer (ALB) インスタンスなどのクラウドサービスインスタンスをクラウドネイティブモードでWAFに追加できます。 詳細については、以下をご参照ください。

クラウドネイティブモード

制限事項

項目

説明

クラウドサービスの種類

IPv6を使用する内部接続SLBインスタンスおよびインターネット接続SLBインスタンスは、透過プロキシモードをサポートしていません。

透過プロキシモードが利用可能なリージョン

透明プロキシモードは、次のリージョンで使用できます。

  • 中国本土: 中国 (成都) 、中国 (北京) 、中国 (張家口) 、中国 (杭州) 、中国 (上海) 、中国 (深セン) 。

  • 中国本土以外: 中国 (香港) 、マレーシア (クアラルンプール) 、インドネシア (ジャカルタ) 。

特定のインターネット向けSLBインスタンスは、ネットワークアーキテクチャの問題により、透過プロキシモードをサポートしていません。

トラフィック転送ポート数

トラフィックをWAFにリダイレクトできるポートの数は、WAFのエディションによって異なります。

  • Pro Edition: 最大20のトラフィック転送ポート。

  • Business Edition: 最大50のトラフィック転送ポート。

  • Enterprise Edition: 最大100のトラフィック転送ポート。

透過プロキシモードでWAFに特定のポートを追加できます。 ポートがWAFに追加されると、ポート上のトラフィックはWAFにリダイレクトされます。

たとえば、SLBインスタンスのポート80と443、および別のSLBインスタンスのポート80と443を透過プロキシモードでWAFに追加すると、4つのポートのトラフィックがWAFにリダイレクトされます。

サポートされるポート

標準ポートと非標準ポートを含むポート0〜65535がサポートされています。 詳細については、「WAFでサポートされているポートの表示」をご参照ください。

説明

Business Edition、Enterprise Edition、またはExclusive EditionのサブスクリプションWAFインスタンスのみが非標準ポートをサポートしています。

Anti-DDoSプロキシおよびWAFによって保護されるサービス

ドメイン名を追加してAnti-DDoSプロキシにサービスを追加する場合、透過プロキシモードでWAFにサービスを追加し、WAFと一緒にAnti-DDoSプロキシを使用してサービスを保護できます。

ポート転送ルールの設定によってサービスをAnti-DDoS Proxyに追加する場合、透過プロキシモードでサービスをWAFに追加することはできません。 この場合、CNAMEレコードモードでサービスをWAFに追加することを推奨します。 詳細については、「CNAMEレコードモードでのWAFへのドメイン名の追加」をご参照ください。

前提条件

  • WAFインスタンスが購入されました。

  • IPv4を使用し、パブリックIPアドレスにバインドされたインターネット接続SLBインスタンスが作成され、インスタンスのポートの相互認証が無効になっています。

    説明

    elastic IPアドレス (EIP) に関連付けられた内部対応のSLBインスタンスを使用している場合、透過プロキシモードでWebサイトをWAFに追加できます。

  • Webサイトのドメイン名が中国本土のサーバーでホストされている場合は、ドメイン名のインターネットコンテンツプロバイダー (ICP) 申請を申請します。 Alibaba Cloud ICPファイリングシステムを使用してICPファイリングを申請すると、入力したWebサイト情報に基づいて必要な操作が表示されます。

    詳細については、「ICPファイリングシナリオ」をご参照ください。

  • 次の操作は、リスナーポートのSSL証明書に対して順番に実行されます。

    1. 証明書は、証明書管理サービスコンソールにアップロードまたは発行されます。

    2. SLBコンソールでリスナーを設定すると、証明書が選択され、設定されます。

    説明

    WAFを使用してレイヤー7 SLBインスタンスを保護する前に、上記の前提条件が満たされていることを確認してください。

  • WAFはクラウドリソースへのアクセスを許可されています。 詳細については、「WAFによるクラウドリソースへのアクセス許可」をご参照ください。

ステップ1: ドメイン名の追加

重要
  • 初めてインスタンスをWAFに追加すると、webサービスが数秒間中断されることがあります。 クライアントが自動的に再接続できる場合、webサービスは自動的に再開されます。 ビジネス要件に基づいて、再接続メカニズムとback-to-origin設定を構成します。

  • WAFにインスタンスを追加した後に次の操作を実行すると、トラフィックのリダイレクションポートはWAFから自動的に削除されます。 トラフィックリダイレクトポートをWAFに再追加しない場合、ポート上のトラフィックはWAFに転送されません。

    • パブリックIPアドレスを変更し、トラフィックにバインドされている証明書を置き換えます。 サードパーティ証明書を使用してポートをリダイレクトするか、レイヤー7 CLBインスタンスの相互認証を有効にします。

    • ECSインスタンスまたはレイヤー4 CLBインスタンスのパブリックIPアドレスを変更するか、相互認証を有効にします。

  • ECSインスタンスをWAFに追加すると、インスタンスに関連付けられているパブリックIPアドレスまたはEIPのトラフィックがWAFにリダイレクトされます。

  • ECSインスタンスからEIPの関連付けを解除した後、EIPのトラフィックはWAFにリダイレクトされません。

  1. WAFコンソールにログインします。 上部のナビゲーションバーで、WAFインスタンスがデプロイされているリソースグループとリージョンを選択します。 リージョンは、中国本土または中国本土以外です。

  2. 左側のナビゲーションウィンドウで、資産センター > Webサイトへのアクセス.

  3. On theドメイン名タブをクリックします。Webサイトへのアクセス.

  4. On theドメイン名の追加ページを設定し、アクセスモードパラメーターを透明プロキシモード.

  5. では、ドメイン名の追加ステップ、Webサイトのドメイン名を入力し、ポートを追加します。 下表に、各パラメーターを説明します。

    パラメーター

    説明

    ドメイン名

    保護のためにWAFに追加するWebサイトのドメイン名を入力します。 ドメイン名は、www.aliyundoc.comなどの完全一致ドメイン名、または * .aliyundoc.comなどのワイルドカードドメイン名にすることができます。 ドメイン名を入力するときは、次の項目に注意してください。

    • ワイルドカードドメイン名は、ワイルドカードドメイン名と同じレベルにあるすべてのサブドメインをカバーできます。 たとえば、* .aliyundoc.comwww.aliyundoc.comtest.aliyundoc.comなどのサブドメインをカバーできます。

      重要

      ワイルドカードドメイン名を入力した場合、WAFはワイルドカードドメイン名の親ドメイン名と一致しません。 たとえば、* .aliyundoc.comと入力した場合、WAFはaliyundoc.comと一致しません。 WAFを使用してaliyundoc.comを保護する場合は、ドメイン名をWAFに別途追加する必要があります。

    • ワイルドカードドメイン名と完全一致ドメイン名を入力した場合、WAFは完全一致ドメイン名の転送および保護ルールを使用します。

    オリジンサーバーポート

    WAFに追加する配信元サーバーのポートを選択します。

    透過プロキシモードでWAFに追加できるインスタンスは、ALBインスタンスレイヤー7 SLBインスタンスレイヤー4 SLBインスタンスECSインスタンスです。 WAFに追加するインスタンスのタイプに基づいて、対応するタブをクリックします。 オリジンサーバーがALBインスタンスにデプロイされており、インスタンスのリスナーポートのトラフィックに対してWAF保護を有効にする場合は、[ALBベースのドメイン] タブをクリックします。

    対応するタブで次の操作を実行できます。

    • ポートの追加

      • ALBインスタンスとレイヤー7 SLBインスタンスのポートは自動的にWAFに同期されます。 WAFに追加するポートのみを選択する必要があります。

      • レイヤー4 SLBまたはECSインスタンスをWAFに追加する場合は、手動でポートをWAFに追加します。 [追加] をクリックして、ポートのトラフィックのリダイレクトを有効にします。

        オリジンサーバーポートを追加した後、インスタンスリストでポートを選択できます。 [サーバー] タブでポートを削除したり、トラフィックのリダイレクトを無効にすることもできます。 詳細については、「オリジンサーバーの表示とトラフィックリダイレクションポートの管理」をご参照ください。

    • インスタンスのリスナーポートのWAF保護を有効にします。 詳細については、「ALBインスタンスのトラフィックリダイレクションポートの設定」をご参照ください。

    WAFの前にレイヤー7プロキシ (DDoS Protection/CDNなど) が存在しますか

    Anti-DDoSプロキシやAlibaba Cloud CDNなどのレイヤー7プロキシをWAFの前にデプロイするかどうかを指定します。 有効な値:

    • No: レイヤ7プロキシはWAFの前にデプロイされません。 WAFはクライアントからリクエストを受信します。 WAFは、クライアントがWAFとの接続を確立するために使用するIPアドレスをクライアントのIPアドレスとして使用します。 WAFは、REMOTE_ADDRフィールドからIPアドレスを取得します。

    • はい: レイヤ7プロキシがWAFの前にデプロイされています。 WAFはレイヤー7プロキシからリクエストを受信します。 WAFがセキュリティ分析のためにクライアントの実際のIPアドレスを取得できることを確認するには、[送信元IPアドレスの取得] パラメーターを設定します。

      デフォルトでは、WAFはX-Forwarded-Forフィールドの最初のIPアドレスをクライアントのIPアドレスとして使用します。

      X-Client-IPやX-Real-IPなど、実際のIPアドレスをカスタムヘッダーフィールドに含める必要があるプロキシを使用する場合は、[推奨] 指定されたヘッダーフィールドの最初のIPアドレスをクライアントの実際のIPアドレスとして使用してX-Forwarded-For Forgeryを防止するを選択し、ヘッダーフィールドにカスタムヘッダーフィールドを入力します。

      説明

      カスタムヘッダーフィールドを使用してクライアントのIPアドレスを格納し、WAFでカスタムヘッダーフィールドを設定することを推奨します。 これにより、攻撃者がX-Forwarded-Forフィールドを偽造してWAF保護を回避できなくなり、ビジネスのセキュリティが向上します。

      複数のヘッダーフィールドを入力できます。 複数のヘッダーフィールドはコンマ (,) で区切ります。 複数のヘッダーフィールドを入力した場合、WAFはクライアントのIPアドレスが取得されるまでヘッダーフィールドを順番にスキャンします。 WAFがヘッダーフィールドからクライアントのIPアドレスを取得できない場合、WAFはX-Forwarded-Forフィールドの最初のIPアドレスをクライアントのIPアドレスとして使用します。

    トラフィックマークの有効化

    トラフィックマーキング機能を有効にするかどうかを指定します。

    この機能は、カスタムヘッダーフィールドをWAF back-to-originリクエストに追加します。 カスタムヘッダーフィールドを指定または変更して、WAFによって転送されるリクエストにラベルを付けたり、クライアントの実際のIPアドレスまたはポートを記録したりできます。

    [トラフィックマークの有効化] を選択した場合、カスタムヘッダーフィールドを指定します。

    重要
    • User-Agentなどの標準のHTTPヘッダーフィールドを設定しないことをお勧めします。 標準HTTPヘッダーフィールドを設定した場合、標準ヘッダーフィールドの値はカスタムヘッダーフィールドの値で上書きされます。

    • ドメイン名をWAFに追加する前に攻撃者がオリジンサーバーのIPアドレスを取得し、別のWAFインスタンスを購入してリクエストをオリジンサーバーに転送する場合は、[トラフィックマークの有効化] を選択してカスタムヘッダーフィールドを追加することを推奨します。 オリジンサーバーがリクエストを受信したら、ヘッダーフィールドを確認することを推奨します。 指定されたカスタムヘッダーフィールドがリクエストに存在する場合、リクエストは許可されます。

    次のタイプのヘッダーフィールドを追加できます。

      [マークの追加] をクリックしてヘッダーフィールドを追加します。 最大5つのヘッダーフィールドを追加できます。

      リソースグループ

      ドメイン名を追加するリソースグループを選択します。

      説明

      リソース管理を使用して、リソースグループを作成し、Alibaba Cloudアカウント内のリソースを部門またはプロジェクトごとに管理できます。 詳細については、「リソースグループの作成」をご参照ください。

    • では、追加情報の確認と確認ステップ、設定を確認して確認し、次へ.

    • [Add Completed] ステップで、[Completed] をクリックします。 Webサイトリストに戻ります。

      ドメイン名を追加した後、[ドメイン名] タブでドメイン名の構成とオリジンサーバーを表示できます。 ビジネス要件に基づいてドメイン名の設定を変更または削除できます。

      デフォルトでは、WAFは [ドメイン名の追加] ステップで有効になっているポートのトラフィックを検出し、通常のトラフィックをオリジンサーバーに転送します。 [サーバー] タブでは、ビジネス要件に基づいてポートのトラフィック保護ステータスを変更できます。

    ステップ2: トラフィックのリダイレクトポートの表示と管理

    配信元サーバーの表示とトラフィックのリダイレクションポートの管理

    WAFにドメイン名を追加すると、オリジンサーバーに関する情報を表示できます。 緊急災害復旧シナリオでは、トラフィックのリダイレクトを強制的に無効にしたり、トラフィックのリダイレクトポートを削除したりできます。

    1. On theWebサイトへのアクセスページをクリックし、サーバータブをクリックします。

    2. インスタンス名の左側にある展开アイコンをクリックすると、WAFに追加されたポートが表示されます。

      防护状态

      説明

      レイヤー4 SLBおよびECSインスタンスのポートをWAFに自動的に同期することはできません。 WAFにポートを手動で追加する必要があります。 詳細については、「ポートの追加」をご参照ください。

      トラフィックステータスの説明:

      • トラフィックステータス (前の図では1) は、ポート上のトラフィックがWAFによって保護されているかどうかを示します。 有効な値: 有効および無効[操作] 列で、[トラフィックリダイレクトの有効化] をクリックしてトラフィックのリダイレクトを有効にし、[トラフィックのリダイレクトの無効化] をクリックしてトラフィックのリダイレクトを無効にします。

        説明

        トラフィックのリダイレクトを無効にすると、ポート上のトラフィックはWAFにリダイレクトされなくなります。

      • トラフィックステータス (前の図では2) は、インスタンスのポートの全体的なWAF保護ステータスを示します。 有効な値: UnprotectedPartially ProtectedFully Protected

    3. オプションです。インスタンスがレイヤ4 SLBインスタンスまたはECSインスタンスの場合、[操作] 列の [削除] をクリックします。 ヒントメッセージで、[確認] をクリックして、WAF保護が不要になったポートを削除します。

    トラフィックリダイレクションポートの証明書の更新

    • インスタンスがALBインスタンスまたはレイヤー7 SLBインスタンスの場合、別の証明書をアップロードする必要はありません。

      • インスタンスのリスナーポートに設定された証明書が更新された場合は、SLBコンソールでのみ証明書を更新する必要があります。 更新された証明書は自動的にWAFに同期されます。 証明書をWAFに同期するのに必要な時間は約30分です。

        重要
        • トラフィックリダイレクションポートにバインドされている証明書が、Alibaba Cloud certificate Management Serviceを使用して購入されていない証明書に置き換えられた場合、証明書を更新し、インスタンスをWAFに再追加します。

        • 有効期限が切れた証明書にSLBインスタンスが関連付けられている場合、証明書をWAFに自動的に同期することはできません。 証明書を削除し、新しい証明書を同期します。

      • WAFに自動的に同期された証明書が有効にならない場合は、[サーバー] タブの更新アイコンをクリックして証明書を手動で更新します。

    • インスタンスがECSインスタンスまたはレイヤー4 SLBインスタンスの場合、WAFコンソールで証明書を再アップロードする必要があります。

      [サーバー] タブで、証明書を更新するインスタンスを見つけ、[操作] 列の [編集] をクリックします。 表示されるダイアログボックスで、[アップロードタイプ] パラメーターを [手動アップロード] または [既存の証明書の選択] に設定し、証明書をアップロードします。 上传证书

    次のステップ

    WebサイトをWAFに追加すると、Webサイトへのすべてのトラフィックが検出され、WAFによってフィルタリングされます。 WAFは、さまざまな種類の攻撃からWebサイトを保護する複数の機能を提供します。 デフォルトでは、保護ルールエンジンおよびHTTPフラッド保護機能が有効になっています。 保護ルールエンジン機能は、SQLインジェクション攻撃、クロスサイトスクリプティング (XSS) 攻撃、webshellアップロードなどの一般的なweb攻撃からwebサイトを保護します。 HTTPフラッド保護機能は、HTTPフラッド攻撃からWebサイトを保護します。 他の機能を有効にし、ビジネス要件に基づいて機能の保護ルールを設定できます。 詳細については、「Webサイト保護設定の概要」をご参照ください。

    参考資料