カテゴリ: AWS VPC 更新日: 2026/08/10

【AWS】VPCフローログの見方・ログ形式・拒否トラフィックの確認方法

212
【AWS】VPCフローログの見方・ログ形式・拒否トラフィックの確認方法

先生と生徒の会話形式で理解しよう

生徒

「AWSのVPCフローログって何ですか?どんな情報が見られるんでしょうか?」

先生

「VPCフローログは、VPC内のネットワークトラフィックを記録する機能で、通信の許可や拒否の状況を詳しく分析できます。ログの形式や確認方法も重要ですよ。」

生徒

「拒否されたトラフィックってどうやって見ればいいですか?ログの具体的な見方も教えてください!」

先生

「では、VPCフローログの概要からログ形式、拒否トラフィックの確認方法まで、初心者にもわかりやすく説明していきますね。」

1. VPCフローログとは?基本の理解

1. VPCフローログとは?基本の理解
1. VPCフローログとは?基本の理解

AWSのVPCフローログは、Virtual Private Cloud内のネットワーク通信をキャプチャし、ログとして保存するサービスです。通信が許可されたか拒否されたか、どのIPアドレスがどのポートにアクセスしたかなどの詳細が記録されます。

これにより、ネットワークのトラブルシューティングやセキュリティ監視が効率的に行えます。

2. VPCフローログのログ形式について

2. VPCフローログのログ形式について
2. VPCフローログのログ形式について

VPCフローログは、主にAWS CloudWatch LogsやS3に出力されます。ログのフォーマットは以下のようなフィールドで構成されています。

  • version:ログのバージョン
  • account-id:AWSアカウントID
  • interface-id:ENI(Elastic Network Interface)のID
  • srcaddr:送信元IPアドレス
  • dstaddr:宛先IPアドレス
  • srcport:送信元ポート
  • dstport:宛先ポート
  • protocol:通信プロトコル番号(例:6はTCP)
  • packets:パケット数
  • bytes:バイト数
  • start:通信開始時刻(UNIXタイムスタンプ)
  • end:通信終了時刻(UNIXタイムスタンプ)
  • action:通信の許可状況(ACCEPTまたはREJECT)
  • log-status:ログの状態(OKやNODATAなど)

この情報をもとに、どの通信が成功し、どの通信が拒否されたかを判断します。

3. 拒否トラフィックの確認方法

3. 拒否トラフィックの確認方法
3. 拒否トラフィックの確認方法

拒否された通信は、ログのactionフィールドがREJECTになっています。CloudWatch Logsなどでフィルタをかけることで、拒否トラフィックだけを抽出可能です。

例えば、CloudWatch Logs Insightsで以下のようなクエリを使うと、拒否された通信が一覧表示されます。


fields @timestamp, srcaddr, dstaddr, srcport, dstport, protocol, action
| filter action = "REJECT"
| sort @timestamp desc
| limit 50
    

これで、直近50件の拒否トラフィックを時間順に確認できます。

AWSの基本用語や仕組みを、図解でサクッと理解したい人には、 入門の定番書がこちらです。

AWSの基本が全部わかる教科書をAmazonで見る

※ Amazon広告リンク

4. VPCフローログの設定とログの見方

4. VPCフローログの設定とログの見方
4. VPCフローログの設定とログの見方

VPCフローログは、VPC単位やサブネット単位、ENI単位で有効化できます。AWSコンソールのVPC画面から「フローログの作成」を選択し、ロググループやフィルタ(許可されたトラフィックのみ、拒否のみ、すべて)を指定します。

ログの見方としては、IPアドレスやポート番号を確認し、問題のある通信元や通信先を特定することが重要です。異常なアクセスや拒否された通信があれば、セキュリティグループやネットワークACLの設定を見直しましょう。

5. VPCフローログ活用のポイント

5. VPCフローログ活用のポイント
5. VPCフローログ活用のポイント
  • セキュリティグループやネットワークACLの効果を確認できる。
  • 不正アクセスや異常通信の検知に役立つ。
  • 通信のトラブルシューティングが効率化できる。
  • ログはCloudWatch LogsやS3に保存し、長期間の分析も可能。

6. よくある質問(FAQ)

6. よくある質問(FAQ)
6. よくある質問(FAQ)

Q1: VPCフローログの料金はかかりますか?
A: フローログ自体の機能は無料ですが、CloudWatch LogsやS3に保存する際のストレージ料金やデータ転送料金が発生します。

Q2: ログにすべての通信が記録されますか?
A: フィルタ設定によって「許可された通信のみ」「拒否された通信のみ」「すべての通信」を選択できます。

Q3: フローログの有効化はすぐ反映されますか?
A: 有効化してからログの収集が始まるまでに数分かかることがあります。

7. これからのVPCフローログ活用に向けて

7. これからのVPCフローログ活用に向けて
7. これからのVPCフローログ活用に向けて

VPCフローログを活用することで、AWSネットワークの可視化とセキュリティ強化が可能です。ログ形式の理解や拒否トラフィックの確認方法をマスターし、日々の運用やトラブル対応に役立ててください。

初心者の方も、今回の内容を参考にぜひVPCフローログを設定してみましょう。

まとめ

まとめ
まとめ

AWSのVPCフローログは、VPC内で発生しているネットワーク通信を確認するための重要な機能です。Amazon VPCの中で、どの送信元IPアドレスから、どの宛先IPアドレスへ通信が行われたのか、どのポート番号が使われたのか、通信が許可されたのか拒否されたのかをログとして確認できます。AWS初心者にとって、ネットワーク通信は目に見えにくく難しく感じやすい部分ですが、VPCフローログを使うことで、通信状況を具体的なログとして見られるようになります。

VPCフローログで特に大切なのは、ログ形式を理解することです。ログには、version、account-id、interface-id、srcaddr、dstaddr、srcport、dstport、protocol、packets、bytes、start、end、action、log-statusなどの項目があります。これらのフィールドを見ることで、通信元、通信先、ポート番号、プロトコル、通信量、通信時間、通信結果を確認できます。最初は項目が多く感じるかもしれませんが、拒否トラフィックを調べたい場合は、まずactionの値を見ると分かりやすいです。

actionがACCEPTであれば通信は許可されており、REJECTであれば通信は拒否されています。拒否された通信を確認することで、セキュリティグループやネットワークACLの設定ミス、不要なアクセス、想定外の通信、外部からの不正アクセスの可能性を調査できます。たとえば、EC2に接続できない場合、アプリケーションへアクセスできない場合、特定のポートだけ通信できない場合などに、VPCフローログを確認すると原因調査に役立ちます。

VPCフローログは、CloudWatch LogsやS3に出力できます。CloudWatch Logsに出力すれば、CloudWatch Logs Insightsを使って拒否トラフィックを検索したり、時間順にログを確認したりできます。S3に保存すれば、長期間のログ保管や後からの分析にも向いています。短期的なトラブルシューティングではCloudWatch Logs、長期的な監査や分析ではS3というように、目的に合わせて保存先を考えるとよいでしょう。

VPCフローログは、VPC単位、サブネット単位、ENI単位で有効化できます。広い範囲の通信を確認したい場合はVPC単位、特定のネットワーク範囲だけを確認したい場合はサブネット単位、特定のEC2インスタンスやネットワークインターフェースに注目したい場合はENI単位で設定すると分かりやすくなります。どの範囲でログを取得するかを決めることも、AWSネットワーク運用では大切なポイントです。

AWSのセキュリティ対策では、セキュリティグループとネットワークACLの理解も重要です。セキュリティグループはEC2などのリソース単位で通信を制御し、ネットワークACLはサブネット単位で通信を制御します。VPCフローログでREJECTが出ている場合、どちらかの設定によって通信が拒否されている可能性があります。ログを確認しながら、送信元IPアドレス、宛先IPアドレス、ポート番号、プロトコルを照らし合わせることで、原因を絞り込みやすくなります。

VPCフローログを使いこなせるようになると、AWSネットワークの可視化、通信トラブルの調査、拒否トラフィックの確認、不正アクセスの検知、クラウド環境のセキュリティ強化に役立ちます。初心者の方は、まずログのaction、srcaddr、dstaddr、dstport、protocolを中心に見ることから始めると理解しやすいです。通信が許可されたのか拒否されたのか、どこからどこへ通信しているのかを読み取れるようになると、AWS運用の基礎力が大きく高まります。

VPCフローログを確認するときの考え方

VPCフローログを見るときは、最初からすべての項目を完璧に理解しようとしなくても大丈夫です。まずは、通信の結果を表すaction、送信元を表すsrcaddr、宛先を表すdstaddr、宛先ポートを表すdstport、通信の種類を表すprotocolを確認しましょう。特にREJECTのログを見つけた場合は、どのIPアドレスからどのポートへ通信しようとして拒否されたのかを確認します。そのうえで、セキュリティグループやネットワークACLの設定を見直すと、トラブル対応が進めやすくなります。

たとえば、Webサーバーへアクセスできない場合は、宛先ポートが八十番や四百四十三番になっているか、通信がREJECTになっていないかを確認します。SSH接続ができない場合は、二十二番ポートへの通信が拒否されていないかを確認します。このように、VPCフローログは単なる記録ではなく、AWSネットワークの問題を見つけるための手がかりになります。

先生と生徒の振り返り会話

生徒

AWSのVPCフローログは、VPC内のネットワーク通信を記録するための機能だと分かりました。通信が許可されたか拒否されたかを確認できるのが便利ですね。

先生

その通りです。VPCフローログを見ることで、EC2やサブネットやネットワークインターフェース周辺の通信状況を確認できます。ネットワークのトラブルシューティングやセキュリティ監視に役立ちます。

生徒

ログの中では、actionを見ると通信がACCEPTなのかREJECTなのか分かるんですね。拒否トラフィックを調べたいときは、まずREJECTを探せばよいと理解しました。

先生

はい。REJECTのログを確認すると、拒否された通信の送信元IPアドレス、宛先IPアドレス、ポート番号、プロトコルなどを調べられます。そこからセキュリティグループやネットワークACLの設定確認につなげられます。

生徒

CloudWatch Logsに出力すれば、ログを検索しやすくなるんですね。S3に保存すれば長期間の分析にも使えるという点も分かりました。

先生

よく整理できています。CloudWatch Logsは日々の確認や障害対応に向いていて、S3は長期保存や後からの分析に向いています。運用目的に合わせて出力先を選ぶことが大切です。

生徒

VPCフローログは、VPC単位、サブネット単位、ENI単位で有効化できるんですね。どの範囲の通信を見たいかで設定を変える必要がありそうです。

先生

その理解で大丈夫です。広い範囲を見たいならVPC単位、特定のネットワーク範囲ならサブネット単位、特定のEC2インスタンスに注目したいならENI単位で考えると分かりやすいです。

生徒

ログを見るときは、srcaddrやdstaddrやdstportも大切なんですね。どこからどこへ、どのポートで通信しているかを確認できるから、原因調査に使えると思いました。

先生

はい。AWSネットワークの調査では、送信元、宛先、ポート番号、通信結果を見ることが基本です。VPCフローログを読む力がつくと、接続できない原因や拒否された通信の理由を考えやすくなります。

生徒

これからは、EC2に接続できないときやアプリケーションにアクセスできないときに、セキュリティグループだけでなくVPCフローログも確認してみます。

先生

とてもよい考え方です。VPCフローログは、AWSネットワークの見えない通信を可視化するための重要な手段です。拒否トラフィックの確認、ログ形式の理解、CloudWatch Logsでの検索、セキュリティグループやネットワークACLの見直しを組み合わせて、安定したAWS運用につなげていきましょう。

この記事を読んだ人からの質問

この記事を読んだ人からの質問
この記事を読んだ人からの質問

プログラミング初心者からのよくある疑問/質問を解決します

AWSのVPCフローログとは、具体的にどのような機能を持つサービスですか?初心者向けに教えてください。

AWSのVPCフローログ(Amazon Virtual Private Cloud Flow Logs)は、お客様が作成した仮想ネットワークであるVPC内において、やり取りされるネットワークトラフィックの情報をキャプチャし、ログとして記録・保存する非常に重要なサービスです。具体的には、どのIPアドレスからどのポートに対して通信が行われたのか、その通信がセキュリティグループやネットワークACLのルールによって許可(ACCEPT)されたのか、あるいは拒否(REJECT)されたのかといった詳細な通信記録をデータとして残すことができます。これにより、ネットワークの接続トラブルが発生した際の調査(トラブルシューティング)や、外部からの不審なアクセスがないかを確認するセキュリティ監視を効率的に行うことが可能になります。プログラミング初心者の方にとっても、自分のアプリケーションがなぜネットワークに繋がらないのかを解析するための強力な味方となります。

VPCフローログを確認することで、どのようなメリットがあるのでしょうか?

VPCフローログを活用する最大のメリットは、ネットワーク通信の可視化ができる点にあります。主な利点としては、第一に「セキュリティグループやネットワークACLの設定が正しく機能しているかの確認」が挙げられます。意図しない通信が拒否されているか、逆に必要な通信が誤ってブロックされていないかをログから判断できます。第二に「不正アクセスの検知」です。海外の知らないIPアドレスからの大量のアクセス試行などをログから発見し、対策を講じることができます。第三に「通信トラブルの迅速な解決」です。サーバー間の通信が失敗している原因が、ネットワーク層での拒否(REJECT)によるものなのかを即座に特定できるため、開発効率が大幅に向上します。
AWS VPCの一覧へ
新着記事
AWS
【AWS】CloudWatchで障害検知を自動化する設計パターン
【AWS】CloudWatchで障害検知を自動化する設計パターンを初心者向けに解説!AWS監視とアラート通知の基本
AWS
【AWS】RDSの無料枠とは?対象インスタンスタイプと注意点を解説
【AWS】RDSの無料枠とは?対象インスタンスタイプと注意点を解説
Flutter
Flutterの入力フォーム作成!TextField・TextFormFieldの基本
Flutterの入力フォーム作成!TextField・TextFormFieldの基本を初心者向けに解説
AWS
IAM Identity Centerの料金・SSO対応・Entra ID連携を詳しく解説
IAM Identity Centerの料金・SSO対応・Entra ID連携を詳しく解説【初心者向けAWS IAM】
人気記事
Flutter
Flutterの開発に必要なもの!パソコン・ツール・OSなど準備まとめ
Flutterの開発に必要なもの!パソコン・ツール・OSなど準備まとめ
Java
Java の Random クラスを使ってランダムな数値を生成する方法
JavaのRandomクラスの使い方を完全ガイド!初心者でもわかる乱数生成
Java
Java の getter メソッドと setter メソッドの使い方
Javaのgetterメソッドとsetterメソッドの使い方を完全ガイド!初心者でもわかるアクセス方法
AWS
【AWS】RDSの料金体系まとめ!ざっくり理解・高いと感じる理由も解説
【AWS】RDSの料金体系まとめ!ざっくり理解・高いと感じる理由も解説

🔌 USBポート不足を解消

Type-C 1本で拡張。
開発・作業環境を一気に快適に

UGREEN USB-Cハブを見る

※ Amazon広告リンク