こんにちは。
株式会社クラスアクト インフラストラクチャ事業部の大塚です。
今回はVPCフローログをVPCに設定して、CloudWatch Logsで通信を見れるようにしたいと思います。
構築イメージ
今回構築する環境は以下となります。
VPCフローログを特定のVPCに作成します。そのVPC内にEC2を稼働させます。
EC2から何らかの通信(今回はapacheをインストールする)を発生させて通信の履歴をCloudWatch Logsに同期していきます。
別途VPCフローログにアタッチするIAMロールも作成します。
VPCフローログとは
AIより
VPCフローログは、Amazon Virtual Private Cloud (VPC) 内のネットワークインターフェースを通過するIPトラフィックに関する情報をキャプチャする機能です。これにより、VPC内の通信状況を把握し、ネットワークのトラブルシューティングやセキュリティ監視に活用できます。
環境構築
IAMロール作成
まずVPCフローログにアタッチするためのIAMロールを作成していきます。
IAMロール作成画面に移動して、カスタム信頼ポリシーを選択。内容は以下とします。
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "vpc-flow-logs.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
ポリシーを割り当てる画面でCloudWatchFullAccessV2にチェックを入れて次に進みます。
CloudWacth Logs ロググループ作成
CloudWatchの管理画面に移動し、ロググループを押下。
ロググループを作成を押下します。
vpc-flow-log-loggroupという名前で作成していきます。
VPCフローログの作成
フローログを作成したいVPCを開きます。
フローログタブからフローログの作成を押下します。
設定内容は以下とします。
名前:vpc-flow-log
送信先:CloudWatch Logs
最大集計間隔:1分
送信先のロググループ:vpc-flow-log-loggroup
サービスアクセス:既存のサービスロールを作成して使用
サービスロール:作成したIAMロール
動作確認
VPCフローログを作成したVPC内にあるEC2を起動して、何らかの通信を発生させます。
今回はdnf install -y を実行して外部からインストールする通信をVPC内に発生させます
[root@ip-192-168-1-121 ~]# dnf install -y httpd
Updating Subscription Management repositories.
Unable to read consumer identity
This system is not registered with an entitlement server. You can use "rhc" or "subscription-manager" to register.
Last metadata expiration check: 3:21:16 ago on Sat 11 Oct 2025 09:32:32 AM UTC.
Dependencies resolved.
================================================================================
Package Arch Version Repository Size
================================================================================
Installing:
httpd x86_64 2.4.62-4.el9_6.4 rhel-9-appstream-rhui-rpms 46 k
Installing dependencies:
apr x86_64 1.7.0-12.el9_3 rhel-9-appstream-rhui-rpms 126 k
apr-util x86_64 1.6.1-23.el9 rhel-9-appstream-rhui-rpms 97 k
apr-util-bdb x86_64 1.6.1-23.el9 rhel-9-appstream-rhui-rpms 14 k
httpd-core x86_64 2.4.62-4.el9_6.4 rhel-9-appstream-rhui-rpms 1.5 M
httpd-filesystem noarch 2.4.62-4.el9_6.4 rhel-9-appstream-rhui-rpms 11 k
httpd-tools x86_64 2.4.62-4.el9_6.4 rhel-9-appstream-rhui-rpms 80 k
mailcap noarch 2.1.49-5.el9 rhel-9-baseos-rhui-rpms 35 k
Installing weak dependencies:
apr-util-openssl x86_64 1.6.1-23.el9 rhel-9-appstream-rhui-rpms 17 k
mod_http2 x86_64 2.0.26-4.el9_6.1 rhel-9-appstream-rhui-rpms 163 k
mod_lua x86_64 2.4.62-4.el9_6.4 rhel-9-appstream-rhui-rpms 58 k
Transaction Summary
================================================================================
Install 11 Packages
Total download size: 2.1 M
Installed size: 6.1 M
Downloading Packages:
(1/11): apr-util-bdb-1.6.1-23.el9.x86_64.rpm 277 kB/s | 14 kB 00:00
(2/11): apr-util-openssl-1.6.1-23.el9.x86_64.rp 303 kB/s | 17 kB 00:00
(3/11): apr-util-1.6.1-23.el9.x86_64.rpm 1.6 MB/s | 97 kB 00:00
(4/11): apr-1.7.0-12.el9_3.x86_64.rpm 10 MB/s | 126 kB 00:00
(5/11): httpd-2.4.62-4.el9_6.4.x86_64.rpm 4.5 MB/s | 46 kB 00:00
(6/11): mod_http2-2.0.26-4.el9_6.1.x86_64.rpm 8.7 MB/s | 163 kB 00:00
(7/11): httpd-filesystem-2.4.62-4.el9_6.4.noarc 1.6 MB/s | 11 kB 00:00
(8/11): httpd-tools-2.4.62-4.el9_6.4.x86_64.rpm 8.1 MB/s | 80 kB 00:00
(9/11): mod_lua-2.4.62-4.el9_6.4.x86_64.rpm 5.2 MB/s | 58 kB 00:00
(10/11): mailcap-2.1.49-5.el9.noarch.rpm 4.0 MB/s | 35 kB 00:00
(11/11): httpd-core-2.4.62-4.el9_6.4.x86_64.rpm 37 MB/s | 1.5 MB 00:00
--------------------------------------------------------------------------------
Total 11 MB/s | 2.1 MB 00:00
Running transaction check
Transaction check succeeded.
Running transaction test
Transaction test succeeded.
Running transaction
Preparing : 1/1
Installing : apr-1.7.0-12.el9_3.x86_64 1/11
Installing : apr-util-bdb-1.6.1-23.el9.x86_64 2/11
Installing : apr-util-openssl-1.6.1-23.el9.x86_64 3/11
Installing : apr-util-1.6.1-23.el9.x86_64 4/11
Installing : httpd-tools-2.4.62-4.el9_6.4.x86_64 5/11
Installing : mailcap-2.1.49-5.el9.noarch 6/11
Running scriptlet: httpd-filesystem-2.4.62-4.el9_6.4.noarch 7/11
Installing : httpd-filesystem-2.4.62-4.el9_6.4.noarch 7/11
Installing : httpd-core-2.4.62-4.el9_6.4.x86_64 8/11
Installing : mod_lua-2.4.62-4.el9_6.4.x86_64 9/11
Installing : mod_http2-2.0.26-4.el9_6.1.x86_64 10/11
Installing : httpd-2.4.62-4.el9_6.4.x86_64 11/11
Running scriptlet: httpd-2.4.62-4.el9_6.4.x86_64 11/11
Verifying : apr-util-1.6.1-23.el9.x86_64 1/11
Verifying : apr-util-bdb-1.6.1-23.el9.x86_64 2/11
Verifying : apr-util-openssl-1.6.1-23.el9.x86_64 3/11
Verifying : apr-1.7.0-12.el9_3.x86_64 4/11
Verifying : mod_http2-2.0.26-4.el9_6.1.x86_64 5/11
Verifying : httpd-2.4.62-4.el9_6.4.x86_64 6/11
Verifying : httpd-core-2.4.62-4.el9_6.4.x86_64 7/11
Verifying : httpd-filesystem-2.4.62-4.el9_6.4.noarch 8/11
Verifying : httpd-tools-2.4.62-4.el9_6.4.x86_64 9/11
Verifying : mod_lua-2.4.62-4.el9_6.4.x86_64 10/11
Verifying : mailcap-2.1.49-5.el9.noarch 11/11
Installed products updated.
Installed:
apr-1.7.0-12.el9_3.x86_64 apr-util-1.6.1-23.el9.x86_64
apr-util-bdb-1.6.1-23.el9.x86_64 apr-util-openssl-1.6.1-23.el9.x86_64
httpd-2.4.62-4.el9_6.4.x86_64 httpd-core-2.4.62-4.el9_6.4.x86_64
httpd-filesystem-2.4.62-4.el9_6.4.noarch httpd-tools-2.4.62-4.el9_6.4.x86_64
mailcap-2.1.49-5.el9.noarch mod_http2-2.0.26-4.el9_6.1.x86_64
mod_lua-2.4.62-4.el9_6.4.x86_64
Complete!
CloudWatchで作成したログストリームをリロードすると作成されることがわかります。
ログの中身です。
timestamp,message
1760188382000,2 535002847634 eni-0bd9ad4271896df92 3.114.113.140 192.168.1.121 19995 19994 17 2 112 1760188382 1760188440 ACCEPT OK
1760188382000,2 535002847634 eni-0bd9ad4271896df92 107.6.142.186 192.168.1.121 443 36982 6 1 60 1760188382 1760188440 ACCEPT OK
1760188382000,2 535002847634 eni-0bd9ad4271896df92 192.168.1.121 107.6.142.186 36982 443 6 1 40 1760188382 1760188440 ACCEPT OK
1760188382000,2 535002847634 eni-0bd9ad4271896df92 3.115.250.18 192.168.1.121 443 54222 6 228 315179 1760188382 1760188440 ACCEPT OK
1760188382000,2 535002847634 eni-0bd9ad4271896df92 192.168.1.121 3.115.250.18 54222 443 6 47 14905 1760188382 1760188440 ACCEPT OK
1760188382000,2 535002847634 eni-0bd9ad4271896df92 52.80.35.207 192.168.1.121 0 0 1 1 40 1760188382 1760188440 ACCEPT OK
1760188382000,2 535002847634 eni-0bd9ad4271896df92 192.168.1.121 52.80.35.207 0 0 1 1 40 1760188382 1760188440 ACCEPT OK
1760188382000,2 535002847634 eni-0bd9ad4271896df92 3.115.250.18 192.168.1.121 443 54206 6 10 3491 1760188382 1760188440 ACCEPT OK
1760188382000,2 535002847634 eni-0bd9ad4271896df92 192.168.1.121 3.115.250.18 54206 443 6 14 9530 1760188382 1760188440 ACCEPT OK
1760188382000,2 535002847634 eni-0bd9ad4271896df92 107.6.142.186 192.168.1.121 443 6421 6 1 60 1760188382 1760188440 ACCEPT OK
1760188382000,2 535002847634 eni-0bd9ad4271896df92 192.168.1.121 107.6.142.186 6421 443 6 1 40 1760188382 1760188440 ACCEPT OK
1760188382000,2 535002847634 eni-0bd9ad4271896df92 74.82.47.55 192.168.1.121 59582 2095 6 1 40 1760188382 1760188440 ACCEPT OK
1760188382000,2 535002847634 eni-0bd9ad4271896df92 192.168.1.121 74.82.47.55 2095 59582 6 1 40 1760188382 1760188440 ACCEPT OK
1760188382000,2 535002847634 eni-0bd9ad4271896df92 3.114.113.140 192.168.1.121 19993 19995 17 2 112 1760188382 1760188440 ACCEPT OK
1760188382000,2 535002847634 eni-0bd9ad4271896df92 175.177.49.41 192.168.1.121 62893 22 6 37 2164 1760188382 1760188440 ACCEPT OK
1760188382000,2 535002847634 eni-0bd9ad4271896df92 192.168.1.121 175.177.49.41 22 62893 6 19 1620 1760188382 1760188440 ACCEPT OK
1760188382000,2 535002847634 eni-0bd9ad4271896df92 3.115.250.18 192.168.1.121 443 54208 6 1214 1802311 1760188382 1760188440 ACCEPT OK
1760188382000,2 535002847634 eni-0bd9ad4271896df92 192.168.1.121 3.115.250.18 54208 443 6 95 16186 1760188382 1760188440 ACCEPT OK
1760188382000,2 535002847634 eni-0bd9ad4271896df92 18.181.204.222 192.168.1.121 443 51198 6 20 7221 1760188382 1760188440 ACCEPT OK
1760188382000,2 535002847634 eni-0bd9ad4271896df92 192.168.1.121 18.181.204.222 51198 443 6 15 5712 1760188382 1760188440 ACCEPT OK
1760188382000,2 535002847634 eni-0bd9ad4271896df92 137.220.177.227 192.168.1.121 61234 5913 6 1 40 1760188382 1760188440 ACCEPT OK
1760188382000,2 535002847634 eni-0bd9ad4271896df92 192.168.1.121 137.220.177.227 5913 61234 6 1 40 1760188382 1760188440 ACCEPT OK
1760188382000,2 535002847634 eni-0bd9ad4271896df92 91.231.89.201 192.168.1.121 55110 30101 6 1 60 1760188382 1760188440 ACCEPT OK
1760188382000,2 535002847634 eni-0bd9ad4271896df92 192.168.1.121 91.231.89.201 30101 55110 6 1 40 1760188382 1760188440 ACCEPT OK
1760188382000,2 535002847634 eni-0bd9ad4271896df92 45.79.104.47 192.168.1.121 53589 34210 6 1 44 1760188382 1760188440 ACCEPT OK
1760188382000,2 535002847634 eni-0bd9ad4271896df92 192.168.1.121 45.79.104.47 34210 53589 6 1 40 1760188382 1760188440 ACCEPT OK
1760188382000,2 535002847634 eni-0bd9ad4271896df92 137.220.177.227 192.168.1.121 61234 5918 6 1 40 1760188382 1760188440 ACCEPT OK
1760188382000,2 535002847634 eni-0bd9ad4271896df92 192.168.1.121 137.220.177.227 5918 61234 6 1 40 1760188382 1760188440 ACCEPT OK
1760188382000,2 535002847634 eni-0bd9ad4271896df92 3.115.250.18 192.168.1.121 443 54202 6 10 3494 1760188382 1760188440 ACCEPT OK
1760188382000,2 535002847634 eni-0bd9ad4271896df92 192.168.1.121 3.115.250.18 54202 443 6 14 9533 1760188382 1760188440 ACCEPT OK
1760188382000,2 535002847634 eni-0bd9ad4271896df92 91.196.152.220 192.168.1.121 23793 3443 6 1 60 1760188382 1760188440 ACCEPT OK
1760188382000,2 535002847634 eni-0bd9ad4271896df92 192.168.1.121 91.196.152.220 3443 23793 6 1 40 1760188382 1760188440 ACCEPT OK
これをAIに渡して見やすいように加工してもらいます。
バージョン | アカウントID | インターフェースID | 送信元アドレス | 送信先アドレス | 送信元ポート | 送信先ポート | プロトコル | パケット | バイト | 開始時刻 (UNIX) | 終了時刻 (UNIX) | アクション | ログステータス |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
2 | 535002847634 | eni-0bd9ad4271896df92 | 3.114.113.140 | 192.168.1.121 | 19995 | 19994 | 17 | 2 | 112 | 1760188382 | 1760188440 | ACCEPT | OK |
2 | 535002847634 | eni-0bd9ad4271896df92 | 107.6.142.186 | 192.168.1.121 | 443 | 36982 | 6 | 1 | 60 | 1760188382 | 1760188440 | ACCEPT | OK |
2 | 535002847634 | eni-0bd9ad4271896df92 | 192.168.1.121 | 107.6.142.186 | 36982 | 443 | 6 | 1 | 40 | 1760188382 | 1760188440 | ACCEPT | OK |
2 | 535002847634 | eni-0bd9ad4271896df92 | 3.115.250.18 | 192.168.1.121 | 443 | 54222 | 6 | 228 | 315179 | 1760188382 | 1760188440 | ACCEPT | OK |
2 | 535002847634 | eni-0bd9ad4271896df92 | 192.168.1.121 | 3.115.250.18 | 54222 | 443 | 6 | 47 | 14905 | 1760188382 | 1760188440 | ACCEPT | OK |
2 | 535002847634 | eni-0bd9ad4271896df92 | 52.80.35.207 | 192.168.1.121 | 0 | 0 | 1 | 1 | 40 | 1760188382 | 1760188440 | ACCEPT | OK |
2 | 535002847634 | eni-0bd9ad4271896df92 | 192.168.1.121 | 52.80.35.207 | 0 | 0 | 1 | 1 | 40 | 1760188382 | 1760188440 | ACCEPT | OK |
2 | 535002847634 | eni-0bd9ad4271896df92 | 3.115.250.18 | 192.168.1.121 | 443 | 54206 | 6 | 10 | 3491 | 1760188382 | 1760188440 | ACCEPT | OK |
2 | 535002847634 | eni-0bd9ad4271896df92 | 192.168.1.121 | 3.115.250.18 | 54206 | 443 | 6 | 14 | 9530 | 1760188382 | 1760188440 | ACCEPT | OK |
2 | 535002847634 | eni-0bd9ad4271896df92 | 107.6.142.186 | 192.168.1.121 | 443 | 6421 | 6 | 1 | 60 | 1760188382 | 1760188440 | ACCEPT | OK |
2 | 535002847634 | eni-0bd9ad4271896df92 | 192.168.1.121 | 107.6.142.186 | 6421 | 443 | 6 | 1 | 40 | 1760188382 | 1760188440 | ACCEPT | OK |
2 | 535002847634 | eni-0bd9ad4271896df92 | 74.82.47.55 | 192.168.1.121 | 59582 | 2095 | 6 | 1 | 40 | 1760188382 | 1760188440 | ACCEPT | OK |
2 | 535002847634 | eni-0bd9ad4271896df92 | 192.168.1.121 | 74.82.47.55 | 2095 | 59582 | 6 | 1 | 40 | 1760188382 | 1760188440 | ACCEPT | OK |
2 | 535002847634 | eni-0bd9ad4271896df92 | 3.114.113.140 | 192.168.1.121 | 19993 | 19995 | 17 | 2 | 112 | 1760188382 | 1760188440 | ACCEPT | OK |
2 | 535002847634 | eni-0bd9ad4271896df92 | 175.177.49.41 | 192.168.1.121 | 62893 | 22 | 6 | 37 | 2164 | 1760188382 | 1760188440 | ACCEPT | OK |
2 | 535002847634 | eni-0bd9ad4271896df92 | 192.168.1.121 | 175.177.49.41 | 22 | 62893 | 6 | 19 | 1620 | 1760188382 | 1760188440 | ACCEPT | OK |
2 | 535002847634 | eni-0bd9ad4271896df92 | 3.115.250.18 | 192.168.1.121 | 443 | 54208 | 6 | 1214 | 1802311 | 1760188382 | 1760188440 | ACCEPT | OK |
2 | 535002847634 | eni-0bd9ad4271896df92 | 192.168.1.121 | 3.115.250.18 | 54208 | 443 | 6 | 95 | 16186 | 1760188382 | 1760188440 | ACCEPT | OK |
2 | 535002847634 | eni-0bd9ad4271896df92 | 18.181.204.222 | 192.168.1.121 | 443 | 51198 | 6 | 20 | 7221 | 1760188382 | 1760188440 | ACCEPT | OK |
2 | 535002847634 | eni-0bd9ad4271896df92 | 192.168.1.121 | 18.181.204.222 | 51198 | 443 | 6 | 15 | 5712 | 1760188382 | 1760188440 | ACCEPT | OK |
2 | 535002847634 | eni-0bd9ad4271896df92 | 137.220.177.227 | 192.168.1.121 | 61234 | 5913 | 6 | 1 | 40 | 1760188382 | 1760188440 | ACCEPT | OK |
2 | 535002847634 | eni-0bd9ad4271896df92 | 192.168.1.121 | 137.220.177.227 | 5913 | 61234 | 6 | 1 | 40 | 1760188382 | 1760188440 | ACCEPT | OK |
2 | 535002847634 | eni-0bd9ad4271896df92 | 91.231.89.201 | 192.168.1.121 | 55110 | 30101 | 6 | 1 | 60 | 1760188382 | 1760188440 | ACCEPT | OK |
2 | 535002847634 | eni-0bd9ad4271896df92 | 192.168.1.121 | 91.231.89.201 | 30101 | 55110 | 6 | 1 | 40 | 1760188382 | 1760188440 | ACCEPT | OK |
2 | 535002847634 | eni-0bd9ad4271896df92 | 45.79.104.47 | 192.168.1.121 | 53589 | 34210 | 6 | 1 | 44 | 1760188382 | 1760188440 | ACCEPT | OK |
2 | 535002847634 | eni-0bd9ad4271896df92 | 192.168.1.121 | 45.79.104.47 | 34210 | 53589 | 6 | 1 | 40 | 1760188382 | 1760188440 | ACCEPT | OK |
2 | 535002847634 | eni-0bd9ad4271896df92 | 137.220.177.227 | 192.168.1.121 | 61234 | 5918 | 6 | 1 | 40 | 1760188382 | 1760188440 | ACCEPT | OK |
2 | 535002847634 | eni-0bd9ad4271896df92 | 192.168.1.121 | 137.220.177.227 | 5918 | 61234 | 6 | 1 | 40 | 1760188382 | 1760188440 | ACCEPT | OK |
2 | 535002847634 | eni-0bd9ad4271896df92 | 3.115.250.18 | 192.168.1.121 | 443 | 54202 | 6 | 10 | 3494 | 1760188382 | 1760188440 | ACCEPT | OK |
2 | 535002847634 | eni-0bd9ad4271896df92 | 192.168.1.121 | 3.115.250.18 | 54202 | 443 | 6 | 14 | 9533 | 1760188382 | 1760188440 | ACCEPT | OK |
2 | 535002847634 | eni-0bd9ad4271896df92 | 91.196.152.220 | 192.168.1.121 | 23793 | 3443 | 6 | 1 | 60 | 1760188382 | 1760188440 | ACCEPT | OK |
2 | 535002847634 | eni-0bd9ad4271896df92 | 192.168.1.121 | 91.196.152.220 | 3443 | 23793 | 6 | 1 | 40 | 1760188382 | 1760188440 | ACCEPT | OK |