🐈

Google Cloud Armor における DDoS 対策

2025/01/27に公開
1

はじめに

こんにちは、クラウドエースの suki.(18)です。
今回は、Google Cloud Armor を活用して DDoS 攻撃を防ぐ方法について、
何十回の夜を過ごしたって得られぬようなベストプラクティスを紹介します。
本記事では、コンソールを使った設定方法を中心に解説します。

Google Cloud Armor とは

Google Cloud Armor は、Google Cloud で提供されているセキュリティサービスです。
Web アプリケーションや API を保護するための機能を提供しており、DDoS 攻撃や不正アクセスからアプリケーションを保護できます。
Google Cloud Armor は、アプリケーション層を保護するファイアウォール(WAF)として機能し、HTTP(S) トラフィックを監視し、不正なトラフィックをブロックします。
また、Google Cloud Armor は、ネットワーク DDoS 対策としても機能し、ネットワークレベルでの攻撃を検出し、ブロックします。
Google Cloud Armor には DDoS 攻撃対策として、L3/L4 ネットワークレイヤーへの保護と、L7 ネットワークレイヤーへの保護があります。
後述する高度なネットワーク DDoS 対策を活用することで、L7 ネットワークレイヤーへの保護を行うことができます。

DDoS 攻撃とは

DDoS 攻撃(Distributed Denial of Service)とは、悪意のある人物が大量のリクエストを送信し、サービスをダウンさせる攻撃のことです。
「ディードス攻撃」と読みます。

Google Cloud Armor での DDoS 対策

Google Cloud Armor は以下2つのオプションで DDoS 攻撃を防ぐことができます。

  1. 標準のネットワーク DDoS 対策
    Google Cloud Armor Standard の対象であり、L3/L4 ネットワークレイヤーの DDoS 攻撃に対して基本的な保護を提供します。
    常に有効になっており、追加料金はかかりません。
    • 対象
      • 外部パススルー ネットワーク ロード バランサー
      • プロトコル転送
      • パブリック IP アドレスを持つ VM
  2. 高度なネットワーク DDoS 対策
    Google Cloud Armor Enterprise の対象であり、L3/L4 ネットワークレイヤーの DDoS 攻撃に対する保護を提供します。
    追加料金がかかります。
    標準のネットワーク DDoS 対策に加え、以下の機能が提供されます。
    • 常時有効な攻撃モニタリングとアラート
    • 標的型攻撃の緩和策
    • 緩和のテレメトリー

また、適応型保護(Cloud Armor Adaptive Protection)を有効にすることで、L7 ネットワークレイヤーの攻撃に対する保護も提供します。

高度なネットワーク DDoS 対策の設定方法

Cloud Armor Enterprise に登録する

  1. 上部検索欄にて「Cloud Armor のサービスティア」と入力し、選択します。
  2. 「Enterprise」の「登録を開始」をクリックします。
    Enterprise には Paygo と年間契約の2つのプランがあり、DDoS 攻撃対策の内容に違いはありませんが、以下の点が異なります。
    プラン 料金 DDoS 対応サポート DDoS 請求保護
    Enterprise Paygo 従量課金制 ✕(サポートなし) ✕(請求保護なし)
    Enterprise Annual 年間契約(12か月) ✓(サポートあり) ✓(請求保護あり)

詳しい違いはこちらを参照してください。

DDoS 防御を有効にする

  1. 「ネットワークセキュリティ」→「Cloud Armor ポリシー」を選択します。
  2. 「ポリシーの作成」をクリックします。
  3. 「ポリシー名」を入力し、必要に応じてその他の設定を行い、「ポリシーの作成」をクリックします。
    これにて、高度なネットワーク DDoS 対策の設定が完了です。
    さらに高度な DDoS 対策を行いたい場合は、適応型保護(Cloud Armor Adaptive Protection) の構成を有効にします。
    適応型保護については高度な構成で解説しています。

セキュリティポリシーの作成に登場する項目別解説

こちらのセクションでは、セキュリティポリシーの作成時に登場する項目について解説します。
より詳細な設定を行う際の参考にしてください。

ポリシーの構成

  • 名前:ポリシーの一意な名前を入力します。必須項目です。ポリシーを管理、検索しやすい名前を付けてください。
  • 説明:複数のポリシーを管理する際に役立ちます。
  • ポリシータイプ
    • バックエンドセキュリティポリシー:ロードバランサーを保護します。Web アプリケーションの保護を強化します。
    • Edge のセキュリティポリシー:キャッシュに保存されたコンテンツに対するフィルタリングポリシーやアクセス制御ポリシーを構成できます。
    • ネットワークエッジのセキュリティポリシー:HTTP(S)以外のトラフィックを保護します。ネットワーク全体をエッジで保護します。
      詳しい違いはこちらを参照してください。
  • 範囲
    • グローバル:グローバルロードバランサーに対してポリシーを適用します。アプリケーションやコンテンツが複数の地域にまたがる場合に使用します。
    • リージョン:リージョンロードバランサーに対してポリシーを適用します。コンプライアンス上の理由等で、アプリケーションやコンテンツが特定の地域に限定される場合に使用します。
  • デフォルトのルールアクション:ポリシーに一致しないリクエストに対する動作を設定します。
    • 許可:ポリシーに一致しないリクエストを許可します。
    • 拒否:ポリシーに一致しないリクエストを拒否します。
      • 403(アクセス拒否):一般的な拒否アクションとして最もよく使用されます。
      • 404(未検出):攻撃者に対して、リソースが存在しないことを示すために返されます。
      • 502(不正なゲートウェイ):サーバーが不正なリクエストを受信したことを示すために返されます。

ルールの追加(省略可)

  • ルールの追加:ルールを追加することによって、特定の条件に基づくアクションを設定可能です。

例:特定の IP アドレスからのリクエストを拒否する、特定のパスへのリクエストを許可するなど。

ターゲットへのポリシーの適用(省略可)

  • ターゲット:ポリシーを適用するバックエンドサービスを選択します。

高度な構成(省略可)

  • 適応型保護の構成:トラフィックパターンを分析し、自動的に適切な保護を適用します。
    L7ネットワークレイヤーの攻撃に対して、適切な保護を適用します。
  • 内容解析の構成:リクエストの内容を分析し、特定の攻撃パターンを防御します。
  • ユーザー IP リクエストヘッダーの構成:ユーザーの IP アドレスを含むリクエストヘッダーを指定します。

さいごに

本記事では、Google Cloud Armor を活用して DDoS 攻撃を防ぐ方法について紹介しました。
DDoS 攻撃はサービスに深刻な影響を与える可能性がありますが、Google Cloud Armor を正しく設定することで効果的に対策できます。
Google Cloud Armor を活用して、安全なサービス提供を目指しましょう。

参考資料

Google Cloud Armor の概要
新しい Cloud Armor サービスで DDoS 対策を強化して料金を予測可能に
高度なネットワーク DDoS 対策を構成する
Cloud Armor Enterprise の概要
セキュリティ ポリシーの概要
グローバル ロード バランシングとリージョン ロード バランシング

1

Discussion