Google Cloud Armor Enterprise では、Cloud Logging と Cloud Monitoring を使用して、DDoS 攻撃とそれらのソースを分析できます。
Google Cloud Armor は、ネットワーク層(レイヤ 3)とトランスポート層(レイヤ 4)の攻撃を自動的に検出し、軽減します。セキュリティ ポリシーを適用する前に緩和策を実行し、セキュリティ ポリシー ルールに対して正しい形式のリクエストのみを評価します。したがって、常時稼働の DDoS 対策の結果としてドロップされたトラフィックは、セキュリティ ポリシーやバックエンドのテレメトリーに表示されません。
DDoS 軽減イベント用の Cloud Logging と Cloud Monitoring の指標は DDoS 攻撃の可視性の一部で、これは Google Cloud Armor Enterprise のサブスクライバーのみが使用できる機能です。以降のセクションでは、Logging と Monitoring を使用して DDoS 攻撃とその発生元を分析する方法について説明します。DDoS 攻撃の可視性は、次のロードバランサ タイプで使用できます。
- グローバル外部アプリケーション ロードバランサ
- 従来のアプリケーション ロードバランサ
プロジェクト間のサービス参照を使用する場合、ロードバランサのフロントエンドと URL マップ を含むホスト プロジェクトまたはサービス プロジェクトでは、DDoS 攻撃の公開設定に関連するテレメトリーとロギングのみを表示できます。バックエンド サービスを含むサービス プロジェクトでテレメトリーとロギングを表示することはできません。
Cloud Logging 攻撃緩和のイベントログ
Google Cloud Armor は、DDoS 攻撃を緩和する際に、次の 3 種類のイベントログ エントリを生成します。ログ形式には、可能であれば送信元の IP アドレスと地理区分の分析が含まれます。次のセクションでは、イベントログのタイプごとにログ形式の例を示します。
緩和開始
{ "id": "20220101_1235_mitigiation_1.2.3.4", "mitigationType": "MITIGATION_STARTED", "targetVip": "1.2.3.4", "totalVolume": { "pps": "1234000", "bps": "9876000000" }, "started": { "totalAttackVolume": { "pps": "1000000", "bps": "9000000000" }, "topSourceIp": [ { "ipAddress": "1.2.3.4", "volume": { "pps": "10000", "bps": "2000000" } }, { "ipAddress": "2.3.4.5", "volume": { "pps": "5000", "bps": "1000000" } } ], "topSourceGeo": [ { "geo": "US", "volume": { "pps": "100000", "bps": "20000000" } } ] } }
緩和中
{ "id": "20220101_1235_mitigiation_1.2.3.4", "mitigationType": "MITIGATION_ONGOING", "targetVip": "1.2.3.4", "totalVolume": { "pps": "1234000", "bps": "9876000000" }, "ongoing": { "totalAttackVolume": { "pps": "1000000", "bps": "9000000000" }, "topSourceIp": [ { "ipAddress": "1.2.3.4", "volume": { "pps": "10000", "bps": "2000000" } }, { "ipAddress": "2.3.4.5", "volume": { "pps": "5000", "bps": "1000000" } } ], "topSourceGeo": [ { "geo": "US", "volume": { "pps": "100000", "bps": "20000000" } } ] } }
緩和終了
{ "id": "20220101_1235_mitigiation_1.2.3.4", "mitigationType": "MITIGATION_ENDED", "targetVip": "1.2.3.4", "totalVolume": { "pps": "2314000", "bps": "9768000000" }, "ended": { "attackDurationSeconds": 345 } }
Google Cloud コンソールで、[ログ エクスプローラ] ページに移動し、ProtectedEndpoint
リソースを表示します。
または、network_dos_attack_mitigations
ログ名を表示することもできます。
Cloud Monitoring の指標
DDoS 軽減テレメトリー指標は、保護されたネットワーク エンドポイント(ProtectedEndpoint
)のリソースの下に表示されます。これは、Google Cloud Armor Enterprise に登録されているアプリケーション レイヤ(レイヤ 7)の仮想 IP アドレス専用です。使用可能な指標は次のとおりです。
- 上り(内向き)バイト(
/dos/ingress_bytes
) - 上り(内向き)パケット数(
/dos/ingress_packets
)
次の指標は、上の指標をグループ化してフィルタリングできます。
ラベル | 値 |
---|---|
project_id |
Cloud Armor Enterprise に登録されているプロジェクトの ID。 |
location |
保護されているエンドポイントのロケーション。 |
vip |
保護されているエンドポイントの仮想 IP アドレス。 |
drop_status |
指定できる値:
|
Google Cloud コンソールで、[Metrics Explorer] ページに移動します。
トラフィック量が少ない仮想 IP アドレスのテレメトリー指標の解釈
100,000 パケット/秒未満の仮想 IP アドレス(VIP)の場合は、Cloud Monitoring で指標を表示する時間を長くすることをおすすめします。たとえば、トラフィックの多い VIP の ALIGN_RATE
が 1 分の場合は、代わりに ALIGN_RATE
を 10 分にすることをおすすめします。時間枠を長くすると、信号対雑音比の低下によって発生するアーティファクトの量を削減できます。
さらに、Google Cloud Armor がトラフィックをドロップするレート(ドロップ率)のコンポーネントは統計的な手段で推定されるため、トラフィックが少ない VIP の場合は精度が低くなる可能性があります。つまり、DDoS 攻撃では、Cloud Monitoring が報告するドロップ率が実際のドロップ率より若干低くなる可能性があります。これにより、トラフィック量の減少が過大評価につながる可能性のある統計的なアーティファクトが減少します。トラフィック量が少なく、攻撃対象でない VIP の場合は特に少なくなります。