スキップしてコンテンツを表示

CloudTrail を使用してアカウントのセキュリティグループとリソースで行われた変更を追跡する方法を教えてください。

所要時間2分
0

AWS CloudTrail を使用して AWS アカウントのセキュリティグループとリソースの変更を追跡したいです。

解決策

AWS CloudTrailAmazon Athena、および AWS Config を使用すると、AWS アカウントのセキュリティグループのイベント履歴を確認したり監視したりできます。

前提条件

CloudTrail イベント履歴でセキュリティグループのアクティビティを確認する

注: CloudTrail を使用すると、過去 90 日間のイベント履歴を検索できます。

  1. CloudTrail コンソールを開きます。
  2. [イベント履歴] を選択します。
  3. [フィルター] ドロップダウンリストで [リソース名] を選択します。
  4. [リソース名を入力] テキストボックスにリソース名を入力します。(例: sg-123456789)
  5. [時間範囲] に目的の時間範囲を入力します。次に、[適用] を選択します。
  6. 結果リストでイベントを選択します。

詳細については、「コンソールで最近の管理イベントを確認する」を参照してください。

CloudTrail イベントの例:

注: この例では、インバウンドルールは 192.168.0.0/32 からのアクセスを TCP ポート 998 で許可しています。

{
    "eventVersion": "1.05",
    "userIdentity": {
        "type": "AssumedRole",
        "principalId": "123456789:Bob",
        "arn": "arn:aws:sts::123456789:assumed-role/123456789/Bob",
        "accountId": "123456789",
        "accessKeyId": "123456789",
        "sessionContext": {
            "attributes": {
                "mfaAuthenticated": "false",
                "creationDate": "2019-08-05T07:15:25Z"
            },
            "sessionIssuer": {
                "type": "Role",
                "principalId": "123456789",
                "arn": "arn:aws:iam::123456789:role/123456789",
                "accountId": "123456789",
                "userName": "Bob"
            }
        }
    },
    "eventTime": "2019-08-05T07:16:31Z",
    "eventSource": "ec2.amazonaws.com",
    "eventName": "AuthorizeSecurityGroupIngress",
    "awsRegion": "us-east-1",
    "sourceIPAddress": "111.111.111.111",
    "userAgent": "console.ec2.amazonaws.com",
    "requestParameters": {
        "groupId": "sg-123456789",
        "ipPermissions": {
            "items": [
                {
                    "ipProtocol": "tcp",
                    "fromPort": 998,
                    "toPort": 998,
                    "groups": {},
                    "ipRanges": {
                        "items": [
                            {
                                "cidrIp": "192.168.0.0/32"
                            }
                        ]
                    },
                    "ipv6Ranges": {},
                    "prefixListIds": {}
                }
            ]
        }
    },
    "responseElements": {
        "requestId": "65ada3c8-d72f-4366-a583-9a9586811111",
        "_return": true
    },
    "requestID": "65ada3c8-d72f-4366-a583-9a9586811111",
    "eventID": "6c604d53-d9c3-492e-a26a-a48ac3f711111",
    "eventType": "AwsApiCall",
    "recipientAccountId": "123456789"
}

Athena クエリでセキュリティグループのアクティビティを確認する

  1. Athena コンソールを開きます。
  2. [クエリエディタ] を選択します。
  3. Athena クエリエディタで、ユースケースに応じてクエリを入力します。次に、[クエリを実行] を選択します。

詳細については、「CloudTrail ログと Athena テーブルについて」を参照してください。

セキュリティグループの作成イベントと削除イベントを返すクエリの例:

重要: example table name は、実際のテーブル名に置き換えます。

SELECT *
FROM example table name
WHERE (eventname = 'CreateSecurityGroup' or eventname = 'DeleteSecurityGroup')
and eventtime > '2019-02-15T00:00:00Z'
order by eventtime asc

特定のセキュリティグループで行われた変更に関するすべての CloudTrail イベントを返すクエリの例:

SELECT *
FROM example table name
WHERE (eventname like '%SecurityGroup%' and requestparameters like '%sg-123456789%')
and eventtime > '2019-02-15T00:00:00Z'
order by eventtime asc;

AWS Config 設定履歴でセキュリティグループのアクティビティを確認する

  1. CloudTrail コンソールを開きます。
  2. [イベント履歴] を選択します。
  3. [フィルター] ドロップダウンリストで [イベント名] を選択します。
  4. [イベント名を入力] テキストボックスにイベントタイプを入力します。(例: CreateSecurityGroup)次に、[適用] を選択します。
  5. 結果リストでイベントを選択します。
  6. [参照されるリソース] ペインで [AWS Config リソースタイムラインを表示] を選択すると、設定のタイムラインが表示されます。

詳細については、「AWS Config で参照されるリソースを確認する」を参照してください。

コメントはありません