CloudTrailとCloudWatchの連携に関するニュースと、CloudFormationテンプレートを使いより迅速に実装を行う方法について、同僚であるSivakanth Mundruから投稿がありました。
--Jeff
re:Invent2014において、CloudTrailとCloudWatch Logsの連携について発表しました。こちらはUS East (Northern Virginia)、Europe (Ireland)、and US West (Oregon) リージョンでサービスを開始しました。この連携により、AWSアカウントでコールされた特定のAPIを監視し、それが呼ばれたときに電子メール通知を受けることが可能になりました。
その機能が今日より、Asia Pacific (Sydney)、Asia Pacific (Singapore)、Asia Pacific (Tokyo)、そしてEurope (Germany) のリージョンで利用可能になり、その他リージョンへの対応も随時進めていきます。またCloudTrailで取得したAPIアクティビティから簡単にCloudWatch アラームを作成するできるCloudFormtionテンプレートも合わせて準備しました。
CloudFormationテンプレート
本ブログでは、どのように重要なネットワークやセキュリティ関連のAPIアクティビティを監視し、CloudWatchのアラームを設定、それらのAPIが呼び出された際に電子メール通知を受信するCloudFormationを使用する方法を紹介します。この[CloudFormationはテンプレート]には、重要なネットワークおよびセキュリティグループ、ネットワークACL、インターネットゲートウェイ、EC2インスタンスの作成、削除、および更新に関するセキュリティ関連のAPIコール、およびIAMポリシーの変更を監視するようメトリックフィルタが事前に定義されています。
詳細については、CloudTrailドキュメントをご確認ください。CloudFormationテンプレートで定義されていますアラームの説明が書かれています。個別にCloudWatchのアラームを設定することもできますし、あなた自身のシナリオに合わせてメトリックのフィルタを調整することができます。
前提条件
CloudWatch LogsにCloudTrailのログファイルを転送する必要があります。CloudTrailのコンソールから安全にデフォルト値を設定でき、CloudWatch Logsへログファイルを送信する設定はとても簡単に行うことができます。CloudTrailのコンソールに移動するか、CloudTrailのドキュメントを参照してください。複数のリージョンをお使いの場合は、複数のリージョンで同じ設定をして頂くことで、特定のAPIを監視し電子メール通知を受けることができます。デフォルトのCloudWatch Logs ロググループを使わない場合はCloudFormatinテンプレートを変更してください。
ステップ 1 CloudFormationテンプレートのダウンロード
テンプレートをダウンロードし、ローカルに保存してください。このままでもご利用頂けますが、お好きなテキストエディタまたはオンラインJSON編集ツールを使用して編集も頂けます。少しだけ見てみましょう。
ステップ 2 CloudFormationテンプレートのアップロード
CloudFormationコンソールにアクセスし、スタックを作成、テンプレートをアップロードします。スタックに名前を付け、ステップ 1で使用した場所からCloudFormationにテンプレートをアップロードします。
ステップ 3 パラメータの設定
上の画面で[次へ]をクリックし、パラメータの設定を行います。電子メールによる通知を受けたいメールアドレスとステップ 1で設定したCloudWatch Logs ロググループをパラメータとして設定します。SNSトピックとトピックへのサブスクライブはCloudFormationテンプレートから作成されます。ステップ 1で指定したCloudWatch Logs ロググループを使用していることを確認してください。
タグの作成等もろもろの設定をし、[次へ]をクリックします。ここでは特に設定をしていません。次の画面で、パラメータを確認し、アラームスタックを作成することができます。
メールアドレスとロググループ名が正しいことを確認し、[作成]をクリックします。数分でCloudFormationスタックが作成されます。
ステップ 5 電子メール サブスクリプションの確認
CloudFormationのスタック作成プロセスが完了すると、あなたの電子メールアドレス宛に確認要求を含む電子メールメッセージが送信されます。
ステップ 6 電子メール通知の確認
例えば、受け取った以下電子メールは、作成、更新、またはアカウントがセキュリティグループの削除のAPIコールが呼び出された手がかりを通知します。
CloudFormationテンプレートに複数のアラームを追加希望のある場合は、是非CloudTrail Forumからフィードバックをお願いします。
その他にも、例えば Using a AWS CloudFormation Template to Create CloudWatch Alarms、 Creating CloudWatch Alarms for CloudTrail Events: Examples も目を通して頂くといいかもしれません。
-- Sivakanth Mundru, Senior Product Manager
-- 酒徳知明