やーまんぶろぐ

気が向いた時にだけ書くブログ

DDoS関連のCloudWatchメトリクス

AWSのDDoS対策ですが、これから検討している方はまず実際に攻撃されてるかをCloudWatchで確認することをお勧めします。

DDoS関連のCloudWatchメトリクスは、AWS上でのDDoS対策資料のp55に一覧があるのでメモしておきます。
AWS Solutions Architect ブログ: [AWS Black Belt Online Seminar] DDoS 対策 資料及びQA公開

名前空間 メトリクス 説明
CloudFront Requests HTTP/Sリクエスト数
CloudFront TotalErrorRate 全リクエスト中HTTPステータスコード4xx/5xxの割合
Route53 HealthCheckStatus ヘルスチェックエンドポイントのステータス
ELB SurgeGueueLength ロードバランサーでバックエンド応答を待っているリクエスト数
ELB UnHealthyHostCount AZ中のunhealthyなインスタンス
ELB RequestCount 登録インスタンスに転送した処理済みリクエスト数
ELB Latency ロードバランサーがリクエストを転送してから応答までの経過時間(秒
ELB BackendConnectionErrors 失敗したコネクション数
ELB SpilloverCount キュー飽和により拒否されたリクエスト数
AutoScaling GroupMAXSize オートスケーリンググループの最大サイズ
EC2 CPUUtilization CPU使用率
EC2 NetworkIn ネットワークインターフェースでの受信バイト数
DDoSProtection DDoSAttackBitsPerSecond DDoS攻撃の秒あたりビット数(0より大はDDoS攻撃検知)
DDoSProtection DDoSAttackRequestsPerSecond DDoS攻撃の秒あたりリクエスト数(0より大はDDoS攻撃検知)

DDoSProtectionsは「AWS Shield アドバンスド」のことです。

本番環境だけでなく、検証環境のリソースも確認しておきましょう。
自分の環境で確認してみたところ検証環境のELBのSurgeQueueLengthが単調増加していて、ログからアクセス元のIPを確認してみると外国からたくさん攻撃されてくることがわかりました。

私は検証環境だったので削除することで対応しましたが、本番環境の場合はWAFでIPをブロックするなどの検討が必要になります。

冒頭にも書きましたがまずは確認することをおすすめします。