Skip to main content

CloudTrail

参考URL

Overview

AWS上でサービスを適切に運用し続けるには、運用担当者がAWSの各種サービスをどのように操作しているか、その操作は適切か、といったオペレーション監視、運用監査が必要。
AWS CloudTrailは、AWSサービスに対して「いつ」「誰によって」「どのような操作が行われたのか」を記録・保存するサービス。
※利用登録なしに過去90日間のログを無料で参照できる。

監視対象

  • 管理イベント
    • ユーザーのログイン、EC2インスタンスの作成など
  • データイベント
    • S3上のオブジェクト(データ)の操作、Lambda関数(※)の実行
  • インサイトイベント
    • 通常と異なる操作(書き込みAPIの呼び出し)

管理イベント

管理イベントとは具体的には管理コンソールからの操作やAWS CLI(コマンド)、APIによる操作です。これらはデフォルトでダッシュボードから参照できます。

データイベント

デフォルトでは有効になっておらず、「証跡情報」を登録しそれぞれのイベントの記録を有効にするか否かを選択する

インサイトイベント

デフォルトでは有効になっておらず、「証跡情報」を登録しそれぞれのイベントの記録を有効にするか否かを選択する

証跡情報

CloudTrailのログは「証跡情報」を登録することによりS3バケットへ保存できる。
S3バケットへログを保存することにより、90日を超えてもCloudTrailのログを保存しておくことが可能。 S3へ保存するログの内容はJSON形式で出力され、gz形式で圧縮される。
保存する際はAmazon KMS(Key Management Service)を利用して暗号化することも可能。

ログは自動的に90日間保管されるが、設定によりS3などへログをファイルとして保管することも可能(そうすることで90日を超えてログを保管できる)
S3などへ保管するログファイルは**証跡(Trail)**と呼ばれ、暗号化されて保管される。
また、保管後のログの改ざんを防ぐ機能もあり、何か問題が発生したときの当時の操作記録を証明するための重要な記録となります。CloudTrailはいわばAWSにおける監視カメラといえる

CloudTrailとCloudWatch Logsの連携

CloudTrailは、AWSサービスのログを一元管理するサービスAmazon CloudWatch Logsと連携できる。
CloudWatch LogsとCloudTrailを連携することにより、操作ログに特定のキーワードが登場した際に管理者宛に通知を行うことができる。
キーワードにはたとえば、ログインイベント「ConsoleLogin」を指定したり、EC2インスタンスの変更(作成・終了・停止など)イベント「EC2InstanceChanges」などを指定できる。
これにより管理コンソールへ不正なログインが行われたときに検知したり、意図しないインスタンスの変更が行われていないかをアクティブに監視できるようになる。