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

Web Application Firewall:オリジンサーバーの保護を構成する

最終更新日:May 23, 2024

Webアプリケーションファイアウォール (WAF) にWebサイトを追加すると、Webサイト宛てのトラフィックがWAFにリダイレクトされ、配信元サーバーに転送されます。 配信元サーバーのIPアドレスが公開されている場合、攻撃者はWAFをバイパスして配信元への直接攻撃を開始できます。 オリジンサーバーのアクセス制御ポリシーを設定して、WAFのback-to-origin CIDRブロックからのインバウンドトラフィックのみを許可できます。 このトピックでは、オリジンサーバーのアクセス制御ポリシーを設定する方法について説明します。 このトピックでは、Server Load Balancer (SLB) インスタンスに追加されたElastic Compute Service (ECS) インスタンスを例として使用します。

説明
  • WebサイトをWAFに追加すると、オリジンサーバーに保護が設定されているかどうかに関係なく、トラフィックが転送されます。

  • ECSインスタンスとSLBインスタンスを透過プロキシモードでWAFに追加すると、トラフィックリダイレクトポート上のすべてのトラフィックがWAFにリダイレクトされます。 攻撃者は、WAFをバイパスして直接配信元攻撃を開始することはできません。 この場合、オリジンサーバーの保護を構成する必要はありません。

注意事項

オリジンサーバーのアクセス制御ポリシーを誤って設定すると、セキュリティ上のリスクが生じる可能性があります。 オリジンサーバーの保護を構成する前に、次の項目に注意してください。

  • ECSまたはSLBインスタンスでホストされているすべてのドメイン名がWAFに追加されていることを確認します。 WAFに追加されていないドメイン名を使用してオリジンサーバーを攻撃した場合、オリジンサーバーでホストされている他のドメイン名のサービスが影響を受けます。

  • WAFクラスターに障害が発生した場合、Webサイト宛てのトラフィックが配信元サーバーに転送され、サービスの継続性が確保されます。 この場合、ECSインスタンスのセキュリティグループルールまたはSLBインスタンスのリスナーのホワイトリストを設定した場合、インターネット経由でオリジンサーバーにアクセスすることはできません。

  • WAFの新しいback-to-origin CIDRブロックが追加され、ECSインスタンスのセキュリティグループルールまたはSLBインスタンスのリスナーのホワイトリストが設定されている場合、HTTP 5XXステータスコードが頻繁に返されることがあります。 WAFのback-to-origin CIDRブロックの更新をWAFコンソールで定期的に表示し、関連するアクセス制御ポリシーをできるだけ早く更新することをお勧めします。

  • WAFを使用しなくなった場合は、トラフィックをオリジンサーバーに戻す前に、設定したアクセス制御ポリシーを削除する必要があります。 そうしないと、トラフィックをオリジンサーバーに送信できず、サービスの中断が発生する可能性があります。

前提条件

  • オリジンサーバーは、SLBインスタンスに追加されたAlibaba Cloud ECSインスタンスです。 詳細については、「ECSの概要」および「SLBの概要」をご参照ください。

  • ECSインスタンスまたはSLBインスタンスでホストされているすべてのドメイン名は、CNAMEレコードモードでWAFに追加されます。 詳細については、「WAFへのドメイン名の追加」をご参照ください。

ステップ1: オリジンサーバーにIPアドレス公開リスクがあるかどうかを確認する

Telnetを使用して、サービスポートとオリジンサーバーのパブリックIPアドレスを使用して、Alibaba Cloudにデプロイされていないホストからオリジンサーバーへの接続を確立します。

  • 接続が成功すると、オリジンサーバーのIPアドレスが公開されます。 この場合、パブリックIPアドレスを取得した攻撃者は、WAFをバイパスして、直接配信元攻撃を開始できます。

  • 接続に失敗した場合、オリジンサーバーのIPアドレスは公開されません。

例: ポート80と8080を介して、WAFによって保護されているオリジンサーバーに接続できるかどうかを確認します。 ポート80と8080を介してオリジンサーバーに接続できる場合、オリジンサーバーのIPアドレスが公開されます。端口可连通,waf

ステップ2: WAFのback-to-origin CIDRブロックを取得する

重要

WAFのback-to-origin CIDRブロックは定期的に更新されます。 サービスの中断を回避するには、更新通知に注意し、更新されたback-To-origin CIDRブロックをできるだけ早くセキュリティグループルールとホワイトリストに追加します。

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

  2. 左側のナビゲーションウィンドウで、システム管理 > 商品情報.

  3. の右下隅にプロダクト情報ページを検索し、WAF IPセグメントセクションをクリックし、すべてのIPをコピー.

    WAF IPセグメントセクションには、WAFの最新のback-to-origin CIDRブロックが表示されます。

ステップ3: ECSインスタンスのセキュリティグループルールの設定

WAFのback-to-origin CIDRブロックを取得し、ECSインスタンスのセキュリティグループルールを設定して、WAFのback-to-origin CIDRブロックからのインバウンドトラフィックのみを許可します。

  1. セキュリティグループのリストページに移動します。

    1. にログインします。ECSコンソール.

    2. 左側のナビゲーションウィンドウで、ネットワーク&セキュリティ > セキュリティグループ.

    3. 上部のナビゲーションバーの左上隅で、リージョンを選択します。

  2. ルールを追加するセキュリティグループを見つけて、[操作] 列の [ルールの管理] をクリックします。

  3. セキュリティグループルールの方向を選択します。

    • セキュリティグループが仮想プライベートクラウド (VPC) にある場合、[インバウンド] または [アウトバウンド] タブをクリックします。

    • セキュリティグループがクラシックネットワークに存在する場合、[インバウンド][アウトバウンド][インターネットイングレス] 、または [インターネットエグレス] タブをクリックします。

  4. 最も優先度の高いセキュリティグループルールを追加して、WAFのback-to-origin CIDRブロックからのインバウンドトラフィックのみを許可します。

    1. On theインバウンドのタブアクセスルールセクション、をクリックルールの追加.

    2. パラメーターを設定し、保存. 下表に、各パラメーターを説明します。

      パラメーター

      説明

      Action

      [許可する] を選択します。

      優先度

      最高の優先度を指定する1を入力します。

      プロトコルタイプ

      [カスタムTCP] を選択します。

      ポート範囲

      [HTTP (80)] および [HTTPS (443)] を選択します。

      権限付与オブジェクト

      取得したback-to-origin CIDRブロックを [ソース] フィールドに貼り付けます。

      説明

      セキュリティグループルールの説明を入力します。 例: WAF back-to-origin CIDRブロックからのインバウンドトラフィックを許可します。

      重要

      配信元サーバーが、指定されたWAF back-to-origin CIDRブロックとHTTPまたはHTTPSポート以外のIPアドレスとポートを使用してアプリケーションと通信する場合は、そのIPアドレスとポートをセキュリティグループルールに追加する必要があります。

      セキュリティグループルールを追加すると、ルールはセキュリティグループで最も高い優先度を受け取ります。 これにより、ECSインスタンスは、WAF back-to-origin CIDRブロックからのすべてのインバウンドトラフィックを許可します。

      警告

      すべてのWAF back-to-origin CIDRブロックを必ずセキュリティグループルールに追加してください。 そうでない場合、アクセス例外が発生する可能性があります。

  5. 優先度が最も低いセキュリティグループルールを追加して、他のCIDRブロックからのインバウンドトラフィックを拒否します。

    1. On theインバウンドのタブアクセスルールセクション、をクリックルールの追加.

    2. パラメーターを設定し、保存. 下表に、各パラメーターを説明します。

      パラメーター

      説明

      Action

      [拒否] を選択します。

      優先度

      最も低い優先度を指定する100を入力します。

      プロトコルタイプ

      [カスタムTCP] を選択します。

      ポート範囲

      [HTTP (80)] および [HTTPS (443)] を選択します。

      権限付与オブジェクト

      ソースフィールドに0.0.0.0/0と入力します。 0.0.0.0/0はすべてのCIDRブロックを指定します。

      説明

      セキュリティグループルールの説明を入力します。 例: すべてのインバウンドトラフィックをブロックします。

      セキュリティグループルールを追加すると、ECSインスタンスはWAFのback-to-origin CIDRブロックを除くすべてのCIDRブロックからのインバウンドトラフィックをブロックします。 これにより、すべてのサービストラフィックは、トラフィックがECSインスタンスに到達する前にWAFを通過します。

手順4: SLBインスタンスのアクセス制御ポリシーの設定

オリジンサーバーをSLBインスタンスに追加した場合、WAFのback-to-origin CIDRブロックからのインバウンドトラフィックのみを許可するように、SLBインスタンスのアクセス制御ポリシー (ホワイトリスト) を設定する必要があります。

次のセクションでは、アクセス制御ポリシーを設定する方法について説明します。 この例では、Classic Load Balancer (CLB) インスタンスが使用されています。 Application Load Balancer (ALB) インスタンスを使用する場合は、次の手順と [アクセス制御] トピックの説明に基づいてアクセス制御ポリシーを設定します。

  1. CLBコンソールにログインします。
  2. 上部のナビゲーションバーで、CLBインスタンスがデプロイされているリージョンを選択します。

  3. 左側のナビゲーションウィンドウで、CLB (FKA SLB) > アクセス制御.

  4. アクセス制御リスト (ACL) を作成します。

    1. On theアクセス制御ページをクリックします。ACLの作成.

    2. では、アクセス制御リストの作成パネル、パラメータを設定し、作成. 下表に、各パラメーターを説明します。

      パラメーター

      説明

      ACL名

      ACLの名前を入力します。 例: WAF back-to-origin CIDRブロック。

      複数のアドレス /CIDRブロックと説明の追加

      すべてのWAF back-to-origin CIDRブロックをコピーして貼り付けます。

      各行に1つのCIDRブロックを入力します。 Enterキーを押して新しい行を開始します。

      説明

      コピーされるすべてのWAF back-to-origin CIDRブロックは、コンマ (,) で区切ります。 CIDRブロックを貼り付ける前に、拡張子の置き換えをサポートするテキストエディターを使用して、コンマ (,) を改行 (\n) に置き換えることをお勧めします。

  5. リスナーのホワイトリストを設定します。

    1. 左側のナビゲーションウィンドウで、CLB > インスタンス.

    2. On theインスタンスページで、管理するインスタンスを検索し、インスタンスのIDをクリックします。

    3. [リスナー] タブで、ホワイトリストを設定するリスナーを見つけ、[操作] 列の更多アイコンをクリックし、[アクセス制御の設定] をクリックします。

      WAFによって保護されているサービスのタイプに基づいてリスナーを選択します。

      • HTTPサービスがWAFに追加されている場合は、HTTPリスナーを選択します。

      • HTTPSサービスがWAFに追加されている場合は、HTTPSリスナーを選択します。

      • HTTPおよびHTTPSサービスがWAFに追加されている場合は、HTTPリスナーとHTTPSリスナーを選択します。

    4. では、アクセス制御の設定パネルは、つけますアクセス制御の有効化パラメーターを設定します。 下表に、各パラメーターを説明します。

      パラメーター

      説明

      アクセス制御方式

      [ホワイトリスト] を選択して、特定のIPアドレスがCLBインスタンスにアクセスできるようにします。

      アクセス制御リスト

      WAF back-to-origin CIDRブロック用に作成したACLを選択します。

    上記の設定が完了すると、CLBインスタンスはWAF back-to-origin CIDRブロックからのインバウンドトラフィックを許可します。

次のステップ

ECSインスタンスのセキュリティグループルールまたはSLBインスタンスのリスナーのホワイトリストを設定した後、ポート80と8080でオリジンサーバーに接続できるかどうかを確認することを推奨します。 これにより、設定が有効かどうかを判断できます。

ポート80 8080でオリジンサーバーに接続できないが、サービスが期待どおりに実行されている場合、設定は有効です。

関連ドキュメント