VPC Flowlogs でネットワークログを確認してみた!
VPC Flowlogs とは、ネットワークトラフィックをキャプチャし、CloudWatch Logs、S3へPublishする機能です。
- ネットワークインタフェースを送信元/送信先とするトラフィックが対象
- セキュリティグループとネットワークACLのルールでaccepted/rejectされたトラフィックログを取得
- キャプチャウインドウと言われる時間枠(約10分間)で収集、プロセッシング、保存
- 他の AWS のサービスによって作成されたネットワークインターフェイスのフローログを作成できます。
- Elastic Load Balancing
- Amazon RDS
- Amazon ElastiCache
- Amazon Redshift
- Amazon WorkSpaces
- NAT ゲートウェイ
- トランジットゲートウェイ
やってみる#
ロググループの作成##
CloudWatch の [アクション] から [ロググループの作成]
VPC Flowlogの作成##
VPC の [アクション] から [Create flow log]
項目 | 入力内容 |
---|---|
Filter | All |
Destination | Send to CloudWatch Logs |
Destination log group | 「1.ロググループの作成」のものを選択 |
IAM role | [Set Up Permissions]から新規に作成 |
{
"Statement": [
{
"Action": [
"logs:CreateLogGroup",
"logs:CreateLogStream",
"logs:DescribeLogGroups",
"logs:DescribeLogStreams",
"logs:PutLogEvents"
],
"Effect": "Allow",
"Resource": "*"
}
]
}
動作を確認する(CloudWatchlogs)##
VPC内のEC2などにアクセスし、15分程度待ちます。
※キャプチャウィンドウは約 10 分ですが、最長 15 分かかる場合があるらしい。
参考:フローログレコード
保存先をS3にしてみる##
先程は今回はCloudWatchlogsにしたが、S3にすることもできる。
料金はS3のほうがコストを抑えることができ、Athenaを利用した確認でOKな場合、蓄積したログをあとで利用する場合などはS3を利用。
リアルタイムなログの可視化や、アラートが必要な場合はCloudWatchLogsを利用するなど目的に応じて使い分ける。
中身を確認すると同じように表示された。
version account-id interface-id srcaddr dstaddr srcport dstport protocol packets bytes start end action log-status
2 268546037544 eni-05cf26e2ea9888d06 210.173.160.57 10.0.12.93 123 123 17 2 152 1554268087 1554268309 ACCEPT OK
2 268546037544 eni-05cf26e2ea9888d06 10.0.12.93 211.19.59.28 123 123 17 2 152 1554268087 1554268309 ACCEPT OK
2 268546037544 eni-05cf26e2ea9888d06 10.0.12.93 210.173.160.57 123 123 17 2 152 1554268087 1554268309 ACCEPT OK
2 268546037544 eni-05cf26e2ea9888d06 211.19.59.28 10.0.12.93 123 123 17 2 152 1554268087 1554268309 ACCEPT OK
2 268546037544 eni-05cf26e2ea9888d06 10.0.12.93 129.250.35.251 123 123 17 2 152 1554268087 1554268369 ACCEPT OK
2 268546037544 eni-05cf26e2ea9888d06 129.250.35.251 10.0.12.93 123 123 17 2 152 1554268087 1554268369 ACCEPT OK
参考:VPC Flow Logsの出力先にS3が追加になって安価に使いやすくなりました
リンク#
VPC フローログに新しいフィールドが追加されたというアップデートのようです。
新しいフィールドが追加されたことにより、どんな嬉しいかということについては、クラスメゾッドさんの「さいごに」にあたりを読むといいかと思います。
[アップデート] VPC フローログに AWS サービス名および通信経路が表示されるようになりました!