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

Web Application Firewall:ECSインスタンスのWAF保護の有効化

最終更新日:Nov 12, 2024

webサービスがElastic Compute Service (ECS) インスタンスにデプロイされている場合、ECSインスタンスをWebアプリケーションファイアウォール (WAF) に追加できます。 WAFは、ECSインスタンスのポートのインバウンドおよびアウトバウンドトラフィックを監視およびフィルタリングして、webサービスのセキュリティを強化します。 このトピックでは、ECSインスタンスのWAF保護を有効にする方法について説明します。

背景情報

ECSは、Alibaba Cloudが提供する高性能、安定性、信頼性、スケーラブルなIaaSレベルのサービスです。 ECSにより、ITハードウェアへの先行投資が不要になります。 これにより、アプリケーションを効率的にデプロイできます。 ECSでは、要件の変化とトラフィックの急増に基づいてリソースをスケーリングできます。 詳細については、「」をご参照ください。ECSとは.

ECSインスタンスのWAF保護を有効にできます。 ECSインスタンスのWAF保護を有効にすると、インスタンスのすべてのwebトラフィックは、検査用の特定のゲートウェイを使用してWAFにルーティングされます。 WAFは悪意のあるトラフィックを除外し、通常のトラフィックをECSインスタンスに転送します。 次の図は、ネットワークアーキテクチャを示しています。

image

制限事項

次のAlibaba Cloudサービスのいずれかを使用するWebサービスをクラウドネイティブモードでWAFに追加できます。Application Load Balancer (ALB) 、Microservices Engine (MSE) 、Function Compute、Classic Load Balancer (CLB) 、Elastic Compute Service (ECS) 、およびNetwork Load Balancer (NLB) 。

. 前述のAlibaba Cloudサービスを使用しないwebサービスを保護するためにWAFを使用する場合は、CNAMEレコードモードでwebサービスのドメイン名をWAFに追加します。 詳細については、「WAFへのドメイン名の追加」をご参照ください。

項目

説明

サポートされているインスタンス

次の要件を満たすインスタンスのみをWAFに追加できます。

  • インスタンスはインターネット対応のインスタンスです。

  • インスタンスはIPv6を使用していません。

  • インスタンスの相互認証は無効です。

サポートされるリージョン

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

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

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

トラフィック転送ポートの最大数は、保護されているオブジェクトの最大数と同じです。

  • サブスクリプションWAFインスタンス: Basicエディションで300、Proエディションで600、Enterpriseエディションで2,500、Ultimateエディションで10,000

  • 従量課金WAFインスタンス: 10,000

サポートされるポート

0から65535までの標準および非標準ポートがサポートされます。 詳細については、「サポートされているポートの表示」をご参照ください。

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

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

前提条件

  • WAF 3.0インスタンスを購入しました。 詳細については、「サブスクリプションWAF 3.0インスタンスの購入」および「従量課金WAF 3.0インスタンスの購入」をご参照ください。

  • 上記の使用制限に準拠したECSインスタンスが作成されます。 詳細については、このトピックの「制限」セクションを参照してください。 ECSインスタンスの作成方法については、「インスタンスの作成」をご参照ください。

  • サブスクリプションWAFインスタンスを使用する場合は、WAFに追加した保護対象オブジェクトの数が上限を超えないようにしてください。 上限を超えると、クラウドサービスインスタンスをWAFに追加できなくなります。

    WAFに追加できる保護されたオブジェクトの数を表示するには、

    保護されたオブジェクトページ image.png

トラフィック転送ポートの追加

重要
  • 初めてインスタンスをWAFに追加すると、webサービスが数秒間中断されることがあります。 これは主に、DNS解決の更新、ネットワーク構成の変更、WAFの初期化などの操作が原因です。

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

    • インスタンスに関連付けられているパブリックIPアドレスの変更

    • 移行タスクを作成してゾーンを変更する

    • インスタンスがリリースされました。

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

  • ECSインスタンスからEIPの関連付けを解除すると、トラフィックリダイレクトは自動的に無効になります。

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

  2. 左側のナビゲーションウィンドウで、アクセス管理 をクリックします。

  3. Webサイト設定ページの [クラウドネイティブ] タブで、左側のクラウドサービスリストから [ECS] を選択します。 [追加] をクリックします。

  4. [今すぐ許可] をクリックして、WAFインスタンスにECSへのアクセスを許可します。

    Alibaba Cloudは、AliyunServiceRoleForWAFサービスにリンクされたロールを自動的に作成します。 サービスにリンクされたロールを表示するには、Resource Access Management (RAM) コンソールにログインし、左側のナビゲーションウィンドウで [ID] > [ロール] を選択します。

    説明

    WAFインスタンスにECSへのアクセスを既に許可している場合は、この手順をスキップしてください。

  5. [インスタンス-ECSインスタンスの設定] パネルで、パラメーターを設定します。 下表に、各パラメーターを説明します。

    image.png

    パラメーター

    API 操作

    追加するインスタンスとポートを選択します。

    1. インスタンスの同期

      WAFに追加するインスタンスがインスタンスリストにない場合は、インスタンスの同期 をクリックしてインスタンスリストを更新します。

    2. ポートの追加

      1. WAFに追加するインスタンスを見つけて、操作 列の ポートの追加 をクリックします。

      2. WAFに追加するポートの番号を入力し、Enterキーを押します。

        ポート番号はWAFでサポートされている必要があります。 [ポート範囲の表示] をクリックすると、WAFでサポートされているHTTPポートとHTTPSポートを表示できます。 詳細については、「サポートされているポートの表示」をご参照ください。

      3. WAFに追加するポートのプロトコルタイプを選択します。 有効な値: HTTPおよびHTTPS

        HTTPSを選択した場合、証明書をアップロードする必要があります。

        説明

        アップロードするデフォルト証明書と追加証明書の総数は10を超えることはできません。

        • デフォルト証明書

          • 手動アップロード

            手動アップロード をクリックし、証明書名証明書ファイルキーファイル パラメーターを設定します。 Certificate Fileパラメーターの値は、---- BEGIN形式CERTIFICATE-----...-----END CERTIFICATE ---- 形式である必要があります。 秘密鍵パラメータの値は、---- BEGIN RSA Private KEY-----...-----END RSA PRIVATE Key ---- 形式でなければならない。

            重要
            • 証明書ファイルがPEM、CER、またはCRT形式の場合は、テキストエディターを使用してファイルを開き、テキストコンテンツをコピーできます。 証明書ファイルがPFXやP7Bなどの別の形式の場合、テキストエディターを使用して証明書ファイルを開いてテキストコンテンツをコピーする前に、証明書ファイルをPEM形式に変換する必要があります。 証明書管理サービスコンソールにログインし、提供されたツールを使用してファイル形式を変換できます。 詳細については、「証明書の形式の変換」をご参照ください。

            • ドメイン名が複数のSSL証明書に関連付けられている場合、または証明書チェーンがある場合は、証明書ファイルのテキストコンテンツを組み合わせて、組み合わせたテキストコンテンツをアップロードできます。

          • 既存ファイルを選択

            証明書が次のいずれかの条件を満たしている場合、既存ファイルを選択 をクリックし、証明書リストから証明書を選択します。

            • 証明書は、certificate Management Serviceを使用して発行されます。

            • 証明書は、certificate Management Serviceにアップロードされるサードパーティの証明書です。

              重要

              certificate Management Serviceにアップロードされたサードパーティの証明書を選択し、証明書チェーンの整合性を検証するには失敗しました証明書チェーンの整合性の検証に失敗しました。この証明書を使用すると、サービスへのアクセスに影響が出る可能性があります エラーメッセージが表示されたら、[Alibaba Cloud Security - Certificate Management Service] をクリックし、[certificate Management Service] コンソールで証明書を再アップロードします。 詳細については、「SSL証明書のアップロードと共有」をご参照ください。

        • 拡張証明書

          HTTPS経由で複数のドメイン名からのトラフィックを許可するようにインスタンスを設定した場合、拡張証明書 をクリックしてドメイン名の証明書をインポートします。 追加の証明書とデフォルトの証明書のアップロードに使用されるパラメーターは同じです。 詳細については、「デフォルトの証明書」をご参照ください。

        • HTTPSを選択した場合、詳細設定 をクリックして、次の詳細パラメーターを設定できます。

          • TLS バージョン

            HTTPS通信でサポートされているTransport Layer Security (TLS) プロトコルのバージョンを指定します。 クライアントがサポートされていないTLSバージョンを使用している場合、WAFはクライアントから送信されるリクエストをブロックします。 TLSプロトコルの新しいバージョンは、より高いセキュリティを提供しますが、互換性は低くなります。

            ウェブサイトのHTTPS設定に基づいてTLSバージョンを指定することを推奨します。 WebサイトのHTTPS設定を取得できない場合は、デフォルト値を使用することを推奨します。

            有効な値:

            • TLS 1.0 以上をサポートします。互換性が一番高いが、安全性が低いです。 (デフォルト)

            • TLS 1.1 以上をサポートします。互換性と安全性を兼ね備えております

              この値を選択すると、TLS 1.0を使用するクライアントはWebサイトにアクセスできません。

            • TLS 1.2 以上をサポートします。互換性と安全性が優れています。

              この値を選択すると、TLS 1.0または1.1を使用するクライアントはWebサイトにアクセスできません。

            ウェブサイトがTLS 1.3をサポートしている場合は、TLS 1.3 以上対応 を選択します。 デフォルトでは、WAFはTLS 1.3を使用して送信されたリクエストをリッスンしません。

          • 暗号スイート

            HTTPS通信でサポートされている暗号スイートを指定します。 クライアントがサポートされていない暗号スイートを使用する場合、WAFはクライアントから送信されるリクエストをブロックします。

            デフォルト値はすべての暗号スイート (高い互換性と低いセキュリティ) です。 Webサイトが特定の暗号スイートをサポートしている場合にのみ、このパラメーターを別の値に設定することを推奨します。

            有効な値:

            • すべての暗号スイート (高い互換性、低い安全性)

            • カスタム暗号スイート (プロトコルバージョンに応じて慎重に選択してください) 詳細については、「サポートされている暗号スイートの表示」をご参照ください。

              他の暗号スイートを使用するクライアントはWebサイトにアクセスできません。

    Anti-DDoS Pro、Anti-DDoS Premium、Alibaba Cloud CDNなどのレイヤー7プロキシをWAFの前にデプロイするかどうか

    Anti-DDoS proxyやAlibaba Cloud CDNなど、レイヤー7プロキシをWAFの前にデプロイするかどうかを指定します。 設定可能な値は、Yes または No です。

    • デフォルトでは、No が選択されています。 この値は、WAFがクライアントから送信されたリクエストを受信することを示します。 リクエストはプロキシによって転送されません。

      説明

      クライアントからWAFにリクエストが送信されると、WAFはWAFへの接続を確立するために使用されるIPアドレスをクライアントのIPアドレスとして使用します。 IPアドレスは、リクエストのREMOTE_ADDRフィールドで指定されます。

    • レイヤ7プロキシがWAFの前にデプロイされている場合は、Yes を選択します。 この値は、レイヤ7プロキシによってWAFに転送されたリクエストをWAFが受信することを示します。 WAFがセキュリティ分析のためにクライアントの実際のIPアドレスを取得できるようにするには、クライアント IP の取得方法 パラメーターを設定する必要があります。

      • X-Forwarded-For の最初の IP アドレスをクライアント送信元 IP とする (デフォルト)

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

      • 【推奨】偽装 XFF を回避するために、指定したヘッダの最初の IP アドレスをクライアント送信元 IP アドレスとする

        X-Client-IPやX-Real-IPなど、カスタムヘッダーフィールドにクライアントの送信元IPアドレスを含むプロキシを使用する場合は、この値を選択します。 次に、ヘッダフィールド フィールドにカスタムヘッダーフィールドを入力します。

        説明

        カスタムヘッダーフィールドを使用してクライアントの送信元IPアドレスを格納し、WAFでヘッダーフィールドを指定することを推奨します。 このように、攻撃者はX-Forwarded-Forフィールドを偽造してWAF検査をバイパスすることはできません。 これにより、ビジネスのセキュリティが向上します。

        複数のヘッダーフィールドを入力できます。 ヘッダーフィールドを入力するたびにEnterキーを押します。 複数のヘッダーフィールドを入力すると、WAFはクライアントのIPアドレスを取得するまでヘッダーフィールドを順番に読み取ります。 WAFがヘッダーフィールドからクライアントのIPアドレスを取得できない場合、WAFはX-Forwarded-Forフィールドの最初のIPアドレスをクライアントのIPアドレスとして使用します。

    リソースグループ

    [リソースグループ] ドロップダウンリストから、ECSインスタンスを追加するリソースグループを選択します。 リソースグループを選択しない場合、ECSインスタンスはデフォルトリソースグループに追加されます。

    説明

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

    詳細設定

    • X-Forwarded-Protoヘッダーフィールドを使用したWAFのリスニングプロトコルの取得

      X-Forwarded-Protoヘッダーフィールドは、HTTPリクエストに自動的に追加されます。 X − Forwarded − Protoヘッダフィールドは、クライアントによって使用される元のプロトコルを識別するために使用される。 WebサイトがX-Forwarded-Protoヘッダーフィールドを正しく処理できない場合、互換性の問題が発生し、ビジネスに影響を与える可能性があります。 このような問題を防ぐには、X-Forwarded-Protoヘッダーフィールドを使用してWAFのリスニングプロトコルの取得をクリアします。

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

      [トラフィックマークの有効化] を選択すると、WAFを通過するリクエストがマークされます。 これは、オリジンサーバーがクライアントの発信IPアドレスまたはポートを取得するのに役立ちます。

      ドメイン名をWAFに追加する前に攻撃者がオリジンサーバーに関する情報を取得し、別のWAFインスタンスを使用してリクエストをオリジンサーバーに転送する場合は、[トラフィックマークの有効化] を選択して悪意のあるトラフィックを傍受できます。 オリジンサーバーは、リクエストがWAFを通過したかどうかを確認します。 指定されたヘッダーフィールドがリクエストに存在する場合、リクエストはWAFを通過し、許可されます。 指定されたヘッダーフィールドがリクエストに存在しない場合、リクエストはWAFを通過せず、ブロックされます。

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

      • カスタムヘッダ

        カスタムヘッダーフィールドを追加する場合は、ヘッダ名 および ヘッダ値 パラメーターを設定する必要があります。 WAFは、back-to-originリクエストにヘッダーフィールドを追加します。 これにより、オリジンサーバーは、リクエストがWAFを通過したかどうかを確認し、統計を収集し、データを分析できます。

        たとえば、ALIWAF-TAG: はいのカスタムヘッダーフィールドを追加して、WAFを通過するリクエストをマークできます。 この例では、ヘッダーフィールドの名前はALIWAF-TAGで、ヘッダーフィールドの値はYesです。

      • リアル送信元 IP アドレス

        クライアントの送信元IPアドレスを記録するヘッダーフィールドを指定できます。 これにより、オリジンサーバーはクライアントの発信IPアドレスを取得できます。 WAFがクライアントの送信元IPアドレスを取得する方法の詳細については、このトピックのレイヤー7プロキシ (Anti-DDoS Pro、Anti-DDoS Premium、またはAlibaba Cloud CDNなど) がWAFの前にデプロイされているかどうかパラメーターの説明を参照してください。

      • ソースポート

        クライアントの発信ポートを記録するヘッダーフィールドを指定できます。 これにより、オリジンサーバーはクライアントのポートを取得できます。

      重要

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

      マークの追加 をクリックすると、ヘッダーフィールドを追加できます。 最大5つのヘッダーフィールドを指定できます。

    • Back-to-originキープアライブ要求

      WAFとオリジンサーバー間の永続的な接続がタイムアウトした場合、永続的な接続のタイムアウト期間、再利用される永続的な接続の数、およびアイドル状態の永続的な接続のタイムアウト期間を再設定できます。

      • 読み取り接続タイムアウト期間: WAFが配信元サーバーからの応答を待機する時間。 タイムアウト期間が終了すると、WAFは接続を閉じます。 有効な値: 1 ~ 3600 デフォルト値: 120 単位は秒です。

      • 書き込み接続タイムアウト期間: リクエストが配信元サーバーに転送されるのをWAFが待機する時間。 タイムアウト期間が終了すると、オリジンサーバーは接続を閉じます。 有効な値: 1 ~ 3600 デフォルト値: 120 単位は秒です。

      • Back-to-origin の持続的接続: 再利用される永続接続の数またはアイドル状態の永続接続のタイムアウト期間を設定する場合は、Back-to-originキープアライブ要求をオンにして、次のパラメーターを設定します。

        • 持続的接続の復元リクエスト数: WAFがオリジンサーバーに転送できるリクエストの数、またはWAFがオリジンサーバーから同時に受信できるレスポンスの数。 有効値: 60 ~ 1000 デフォルト値は 1000 です。

        • アイドル時の長時間の接続タイムアウト: アイドルの永続的接続のタイムアウト期間。 有効な値: 10 ~ 3600 デフォルト値は 3600 です。 単位は秒です。

  6. WAF保護を有効にするECSインスタンスを選択し、OK.

    ECSインスタンスのWAF保護を有効にすると、インスタンスは自動的にWAFの保護対象オブジェクトになります。 保護されたオブジェクトの名前は、インスタンスID-ポート番号-資産タイプの形式です。 デフォルトでは、保護対象オブジェクトに対して基本保護ルールが有効になっています。 保護されたオブジェクトの保護ルールは、[保護されたオブジェクト] ページで設定できます。 [保護されたオブジェクト] ページに移動するには、[Webサイト設定] ページの [クラウドネイティブ] タブで、WAFに追加したECSインスタンスのIDをクリックします。 詳細については、「保護設定の概要」をご参照ください。 防护对象

WAF保護の管理

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

ECSインスタンスのWAF保護を有効にすると、緊急ディザスタリカバリシナリオで、オリジンサーバーの保護の詳細を表示し、トラフィックのリダイレクトを強制的に無効にするか、トラフィックのリダイレクションポートを削除できます。

  1. On theアクセス管理ページをクリックし、クラウドプロダクトアクセスタブをクリックします。

  2. 左側のクラウドサービスリストで、[ECS] をクリックします。 表示するトラフィックリダイレクションポートを持つECSインスタンスを見つけ、インスタンス名の左側にあるimage.pngアイコンをクリックして、WAFに追加されたポートを表示します。image.png

    • ポートの詳細の表示: [操作] 列の ポート詳細 をクリックして、ポート、プロトコル、および証明書に関する情報を表示します。 次に、Anti-DDoS Pro、Anti-DDoS Premium、Alibaba Cloud CDNなどのレイヤー7プロキシをWAFの前面にデプロイするかどうか[トラフィックマークの有効化] (詳細設定) 、[Back-to-origin Keep-alive Requests] (詳細設定) パラメーターを設定します。

    • ポートの削除: [操作] 列の 接続解除 をクリックします。 接続解除 メッセージで、OK をクリックします。

      重要

      WAFからトラフィックリダイレクトポートを削除すると、次のことが行われます。

      • ポートのトラフィックはWAFによって保護されなくなりました。 トラフィックリダイレクトポートをWAFに再追加するには、[追加] をクリックします。 詳細については、「トラフィック転送ポートの追加」をご参照ください。

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

トラフィック転送ポートにバインドされたSSL証明書の更新

トラフィックリダイレクトポートにバインドされているSSL証明書の有効期限が近づいている場合、または証明書が変更されている場合は、証明書を更新する必要があります。

説明
  • 証明書の残りの有効期間が30日未満の場合、image.pngアイコンがドメイン名リストに表示されます。 これは、証明書の有効期限が近づいていることを示します。 この場合、できるだけ早い機会に証明書を更新する必要があります。

  • 証明書の有効期限が近づいたときに電子メールやテキストメッセージなどの方法で通知を受信する場合は、証明書の通知を設定できます。 詳細については、「SSL証明書の通知の設定」をご参照ください。

  • 証明書の有効期限によるサービスの中断を防ぐには、証明書管理サービスの証明書ホスティング機能を有効にします。 証明書に対してこの機能を有効にすると、システムは自動的に

    ホストされた証明書の有効期限が近づいたときの新しい証明書。 詳細については、「証明書ホスティング機能の概要」をご参照ください。

トラフィックリダイレクトポートにバインドされているSSL証明書を更新するには、次の手順を実行します。

  1. 証明書を更新するか、サードパーティの証明書を証明書管理サービスにアップロードします。 詳細については、「証明書の更新」または「SSL証明書のアップロードと共有」をご参照ください。

  2. 証明書をWAFに同期します。

    • 証明書管理サービスコンソールで、証明書をWAFにデプロイします。 詳細については、「Alibaba Cloudサービスへの証明書のデプロイ」をご参照ください。

    • WAFコンソールで証明書を更新します。

      1. クラウドプロダクトアクセス タブで、左側のクラウドサービスリストで [ECS] をクリックします。 管理するインスタンスを見つけて、アイコンをクリックしimage.pngます。 証明書を更新するトラフィックリダイレクションポートを見つけて、操作 列の 証明書の編集 をクリックします。

      2. デフォルト証明書 ダイアログボックスで、既存ファイルを選択 を選択し、ドロップダウンリストから新しい証明書を選択します。

よくある質問

[Webサイト設定] ページでWAFに追加するCLBまたはECSインスタンスが見つからないのはなぜですか。