インフラ用語集へ戻る

クラウド / クラウド監査

VPC Flow Logsとは

VPC flow logs。VPC内の通信メタデータを記録するログです。

用語集内のカードを見る

この記事で学べること

VPC Flow Logsを、定義だけで終わらせず、現場で出てくる場面、確認材料、見落としやすい点、関連語とのつながりまで順に確認できます。

  1. VPC Flow Logsとは何か
  2. ACCEPTとREJECTの読み方
  3. 有効化範囲と保存先
  4. 調査で残す証跡
  5. 誤解しやすい点

VPC Flow Logsとは何か

VPC Flow Logsは、AWSのVPC、サブネット、またはENIを通るIP通信のメタデータを記録する機能です。パケット本文は残しません。送信元、宛先、ポート、プロトコル、許可または拒否の結果、バイト数、時刻などを見ます。

通信できない原因を調べるとき、まずSecurity GroupやNACLだけを見たくなります。ところが設定値だけでは、実際にどの通信が届き、どこで拒否されたかは分かりません。VPC Flow Logsは、その差を埋める確認材料になります。

ログの保存先にはCloudWatch LogsやS3を選びます。短期の切り分けならCloudWatch Logs、長期保管やAthena分析ならS3が扱いやすくなります。

ACCEPTとREJECTの読み方

VPC Flow LogsのactionにはACCEPTまたはREJECTが記録されます。ACCEPTは対象ENIのレベルで通信が許可されたことを示しますが、アプリケーションが応答したことまでは保証しません。REJECTはSecurity GroupやNACLなどで拒否された可能性を示します。

到達不可の調査では、送信元IP、宛先IP、宛先ポート、protocol、action、start/endの時刻をそろえます。片方向のACCEPTだけでは、戻り通信、ルートテーブル、NAT Gateway、相手側FWの問題が残ります。

  • 送信元と宛先を逆方向も含めて検索する。
  • ACCEPTをアプリ正常応答と混同しない。
  • REJECTはSecurity GroupとNACLの設定変更履歴と突合する。

有効化範囲と保存先

VPC Flow LogsはVPC全体、サブネット、ENI単位で有効化できます。全体を取れば見落としは減りますが、ログ量と料金が増えます。調査対象が明確なら、対象サブネットやENIから始める判断もあります。

保存期間、集約間隔、ログ形式、タグ、アカウント、リージョンを決めずに有効化すると、後で検索できないログになります。S3へ出す場合は、バケットポリシー、暗号化、ライフサイクル、Athena用のパーティション設計も確認します。

  • VPC、サブネット、ENIのどの単位で取るか決める。
  • CloudWatch LogsとS3の使い分けを記録する。
  • 保存期間、暗号化、検索方法を先に決める。

調査で残す証跡

証跡には、対象VPC、サブネット、ENI、関連するSecurity Group、NACL、ルートテーブル、確認した時刻帯、検索条件、該当ログを残します。画面の成功表示だけでは、別の担当者が同じ事象を追えません。

通信調査では、VPC Flow Logsだけで結論を出さず、OSログ、アプリログ、ALB/NLBログ、NAT Gatewayメトリクス、CloudTrailの設定変更履歴と合わせます。誰がいつ許可を変えたかはCloudTrail側で確認します。

  • 検索した時刻帯とフィルター条件を保存する。
  • Security Group、NACL、ルートテーブルの当時値を残す。
  • CloudTrailでネットワーク設定変更の時刻を突合する。

誤解しやすい点

VPC Flow Logsはパケットキャプチャではありません。HTTPヘッダー、DNS問い合わせ内容、TLSの中身、アプリのエラー本文は見えません。ログ反映にも遅延があり、即時の全パケット観測として扱うと判断を誤ります。

また、AWSの一部サービス宛通信やマネージドサービスの内部処理は、期待した粒度で見えないことがあります。VPC Flow Logsは通信経路の手掛かりであり、アプリケーション障害の最終答えではありません。

  • 本文やペイロードは記録されない。
  • 反映遅延とログ欠落の可能性を考慮する。
  • アプリログやLBログと同じ時刻で比較する。

関連語

同じ主要カテゴリの用語

クラウドの学習順

同じ主要カテゴリの用語をまとめて確認できます。現在の用語を起点に、前後の用語へ進むと文脈を保ったまま読み進められます。

InfraEngKit内の関連機能