Fastly コンソールを使用したエッジ WAF デプロイ

重要 : このガイドは、Compute サービスにエッジ WAF をデプロイすることを希望し Fastly コンソールで Next-Gen WAF にアクセスできるお客様、または次のいずれかの条件を満たす CDN サービスにエッジ WAF をデプロイしたいお客様のみを対象としています。

  • サービスで ngwaf_oob_enabled パラメータ が無効 (false) になっており、Mutual TLS (mTLS) を使用していません。

  • サービスで ngwaf_oob_enabled パラメータが有効になっています (true)。この条件が満たされている場合、サービスが mTLS を使用しているかどうかは関係ありません。

これらの要件を満たしていない場合は、Next-Gen WAF コンソールのガイドをご覧ください。

エッジ WAF デプロイメソッドは、Fastly のエッジクラウドプラットフォーム上で Next-Gen WAF を、当社のグローバルネットワークの POP を通じてホストし、Fastly のキャッシングレイヤーと統合し、Fastly によって管理されます。セキュリティ処理はエッジで行われるため、Next-Gen WAF はオリジンインフラストラクチャに入る前にすべてのトラフィックを検査し、攻撃が発生した場所の近くでブロックできます。お客様のホスティング環境を変更する必要はありません。

前提条件

エッジ WAF デプロイを設定する前に、必要な前提条件が整っていることを確認してください。

制約と考慮事項

ご利用のサービスで Next-Gen WAF を有効にする際には、以下の点に注意してください。

  • Fastly Next-Gen WAF の有効化、無効化、または変更をサービス上で行うと、アクティブなものを含むすべてのサービスバージョンに即座に影響します。

  • 1つのサービスは最大1つのワークスペースにリンクできます。1つのワークスペースは複数のサービスに接続できます。

  • スーパーユーザーロールを割り当てられたユーザーのみが、サービス用のエッジ WAF デプロイを有効化および設定することができます。

また、CDN サービス上に Next-Gen WAF をデプロイする場合は、以下の点に注意してください。

  • 既存の CDN サービスに Next-Gen WAF を追加すると、サービスチェーンの制限にカウントされます。

  • Fastly コンソールでのオリジンに対する更新は、エッジ WAF に自動的に同期されます。つまり、オリジンを手動で同期する必要はありません。

デプロイの設定

  1. Fastly control panel
  2. Fastly プロダクト API

既存の CDN または Compute サービスに Next-Gen WAF をデプロイするには、次の手順を実行します。

  1. Fastly コンソールにログインしてください。
  2. Home ページから、適切なサービスを選択します。検索ボックスで ID、名称、ドメインによる検索が行えます。
  3. Service configuration、Security の順にクリックします。

  4. Next-Gen WAF カードに以下のデプロイ設定を入力します。

    Next-Gen WAF デプロイ設定の編集

    • Workspace メニューから、サービスにリンクさせたいワークスペースを選択します。アカウントにワークスペースが1つしかない場合、このフィールドは読み取り専用になります。

    • (CDN サービスのみ) % of traffic フィールドに、Next-Gen WAF で検査するトラフィックの割合 (パーセント) を入力します。100 に設定されている場合は、ご利用のサービスへのすべてのトラフィックが検査されます。値が100未満の場合は、指定された割合のランダムサンプルが検査されます。

  5. Next-Gen WAF スイッチをクリックしてオンの位置に切り替えます。

  6. 確認ウィンドウで、Update all versions をクリックします。

  7. (オプション) 攻撃ツールを使用して、Next-Gen WAF が Web アプリケーションを監視し、悪意のある異常なリクエストを識別していることを確認します。

デプロイを設定する

  1. Fastly control panel
  2. Fastly プロダクト API

CDN または Compute サービス上のデプロイを更新するには、次の手順を実行します。

  1. Fastly コンソールにログインしてください。
  2. Home ページから、適切なサービスを選択します。検索ボックスで ID、名称、ドメインによる検索が行えます。
  3. Service configuration、Security の順にクリックします。

  4. Next-Gen WAF カードに以下のデプロイ設定を入力します。

    ヒント: Next-Gen WAF がすでに有効になっている場合は、鉛筆アイコン 鉛筆アイコン をクリックして設定を編集し、Submit をクリックして更新された値を保存します。

    • Workspace メニューから、サービスにリンクさせたいワークスペースを選択します。アカウントにワークスペースが1つしかない場合、このフィールドは読み取り専用になります。

    • (CDN サービスのみ) % of traffic フィールドに、Next-Gen WAF で検査するトラフィックの割合 (パーセント) を入力します。100 に設定されている場合は、ご利用のサービスへのすべてのトラフィックが検査されます。値が100未満の場合は、指定された割合のランダムサンプルが検査されます。

  5. Next-Gen WAF で、スイッチをオンの位置に設定してご利用のサービスの Next-Gen WAF を有効にするか、またはオフの位置に設定してサービスの Next-Gen WAF を無効にします。

  6. 確認ウィンドウで、Update all versions をクリックします。

  7. (オプション) 攻撃ツールを使用して、Next-Gen WAF が Web アプリケーションを監視し、悪意のある異常なリクエストを識別していることを確認します。

デプロイを無効にする

CDN または Compute サービスのエッジ WAF デプロイを無効にするには、次の手順を実行します。

  1. Fastly control panel
  2. Fastly プロダクト API
  1. Fastly コンソールにログインしてください。
  2. Home ページから、適切なサービスを選択します。検索ボックスで ID、名称、ドメインによる検索が行えます。
  3. Service configuration、Security の順にクリックします。

  4. Next-Gen WAF カードで、Next-Gen WAF をオフの位置に設定します。

  5. 確認ウィンドウで、Update all versions をクリックします。

検査を無効にする

waf.inspection.disabled VCL 変数を追加することで、Next-Gen WAF はユーザーが定義した条件を満たすリクエストを検査できなくなります。たとえば、この変数を使用して WAF をバイパスし、トラフィックの静的コンテンツへのアクセスを許可します。

特定のリクエストの検査を無効にするには、VCL スニペットを作成します:

  1. Fastly コンソールにログインしてください。
  2. Home ページから、適切なサービスを選択します。検索ボックスで ID、名称、ドメインによる検索が行えます。
  3. Edit configuration をクリックし、オプションを選択してアクティブバージョンをクローンします。
  4. VCL をクリックします。

  5. VCL snippets をクリックします。

  6. Add snippet をクリックします。

  7. 以下の要領で、Add VCL snippet の各フィールドに入力します。

    • Type のセクションで、Regular を選択し、通常の VCL スニペットを作成します。

    • Name フィールドに、適切な名前 (例: Disable WAF inspection) を入力します。

    • Placement コントロールで、Within subroutine を選択します。

    • Subroutine メニューから、recv (vcl_recv) を選択します。

    • (オプション) Priority フィールドにスニペットを実行する順序を入力します。数値の小さい順に実行されます。

    • VCL エディターに以下のコードを追加します。

      if (req.url.ext ~ "(?i)^(css|js|gif|png)") {
      set waf.inspection.disabled = true;
      }
  8. Add をクリックしてスニペットを作成します。

  9. Activate メニューから、Activate on Production を選択して、設定の変更をデプロイします。