ヤマムギ

growing hard days.

*

AWS CloudWatch LogsエージェントでAmazon EC2上のNginxのaccess.log , error.log , php-fpm error.log , Linuxのmessages , secureログを収集する

   

参考ページ

クイックスタート: 実行中の EC2 インスタンスに CloudWatch Logs エージェントをインストールして設定する – Amazon CloudWatch ログ

EC2用のIAMロールを作成する

※既にEC2に設定しているIAMロールがありましたので次のポリシーを追加しました。

新たに作成する場合は下記のポリシーを設定したIAMロールをEC2に設定します。

EC2に CloudWatch Logsをインストールする

EC2にSSHログインシて作業します。

CloudWatch Logsを設定する

リージョンを設定します。

取得したいログファイルの設定をします。

datetime_formatについて

2017-08-12 05:04:03,618 – cwlogs.push.reader – WARNING – 2458 – Thread-4 – Fall back to current time: {‘timestamp’: 1502481843618, ‘start_position’: 25765L, ‘end_position’: 26029L}, reason: timestamp could not be parsed from message.

適切な設定をしないと上記のような警告ログが出力されてタイムスタンプが正常に反映されません。

それぞれのログファイルのタイムスタンプは確認したところ、下記のようになっていました。

ログファイル タイムスタンプ datetime_format
Nginx error.log 2017/08/12 05:04:00 %Y/%m/%d %H:%M:%S
Nginx access.log 12/Aug/2017:06:19:17 +0900 %d/%b/%Y:%H:%M:%S %z
php-fpm error.log 12-Aug-2017 05:24:38 %d-%b-%Y %H:%M:%S
php-fpm www-error.log 10-Aug-2017 23:40:46 UTC %d-%b-%Y %H:%M:%S
messages Aug 12 06:13:36 %b %d %H:%M:%S
secure Aug 11 04:03:33 %b %d %H:%M:%S

datetime_formatのフォーマット記号

記号 備考
%a Sun, Mon, …, Sat (en_US)
%A Sunday, Monday, …, Saturday (en_US)
%w 0, 1, …, 6 日~土までの数字
%d 01, 02, …, 31
%b Jan, Feb, …, Dec (en_US)
%B January, February, …, December (en_US)
%m 01, 02, …, 12
%y 00, 01, …, 99 西暦下2桁
%Y 1970, 1988, 2001, 2013
%H 00, 01, …, 23 24時間表記の時間
%I 01, 02, …, 12 12時間表記の時間
%p AM, PM (en_US)
%M 00, 01, …, 59
%S 00, 01, …, 59
%f 000000, 000001, …, 999999 マイクロ秒
%z (empty), +0000, -0400, +1030 標準時との差
%j 001, 002, …, 365 年における日
%U 00, 01, …, 53 年における週連番(最初の日曜日から0)
%W 00, 01, …, 53 年における週連番(最初の月曜日から0)

サービス起動

AWS CloudWatchのログを確認

ログが出来てます。

Nginxのaccess.logを見るとそれなりに攻撃されているのが分かりました。

対策は別記事で。


最後までお読みいただきましてありがとうございました!

「AWS認定資格試験テキスト&問題集 AWS認定ソリューションアーキテクト - プロフェッショナル 改訂第2版」という本を書きました。

「AWS認定資格試験テキスト AWS認定クラウドプラクティショナー 改訂第2版」という本を書きました。

「ポケットスタディ AWS認定 デベロッパーアソシエイト [DVA-C02対応] 」という本を書きました。

「要点整理から攻略するAWS認定ソリューションアーキテクト-アソシエイト」という本を書きました。

「AWSではじめるLinux入門ガイド」という本を書きました。

 - AWS , , ,

ad

ad

  関連記事

AWS WAFをSIEM on Amazon OpenSearch Serviceで可視化

SIEM on Amazon OpenSearch Serviceを構築の環境に …

特定AWSアカウント特定リージョンのSNSトピックを削除するLambda(Python)

やりたいこと 特定アカウント内特定リージョン内のSNSトピックを全部削除したいで …

Amazon SESでメール受信

Amazon SES(Simple Email Service)にメールドメイン …

AWSアカウントでルートユーザーが使用されたときにTeamsへ投稿する

Organizations組織内のアカウントのいずれかでルートユーザーが使用され …

Amazon LinuxにAlfresco Community Editionをインストールする

ダウンロード準備 Alfresco公式サイトで、「エンタープライズコンテンツ管理 …

Rocket.ChatからOut Going Webhookを設定してみる

API GatewayとLambda とりあえず、どんなデータが飛んでくるのか見 …

Amazon WorkSpaces Web Accessを有効化する

仕事がら、Amazon WorkSpacesをディレクトリも含めて一時的にセット …

Amazon CloudWatch Anomaly Detectionをダッシュボードに設定

Amazon CloudWatch クロスリージョンクロスアカウントダッシュボー …

IAMセッションポリシーの利用(GetFederationToken)

GetFederationTokenでのセッションポリシーは、呼び出し元のIAM …

CodeDeployでECR、ECSにデプロイするパイプラインのチュートリアル

チュートリアル: Amazon ECR ソースと、ECS と CodeDeplo …