EC2でファイル監査を設定する(fluentd+CloudWatch Logs設定編)

fluentdのログ操作設定

まずはaudit.logをそのままCloudWatch Logsに転送する設定を行ってみます。

td-agent.confに以下の設定を記述します。

1$ sudo vi /etc/td-agent/td-agent.conf2<source>3      type tail4      path /var/log/audit/audit.log5      pos_file /var/log/td-agent/audit.log.pos6      tag audit_log7      format none8</source>910<match audit_log>11      type cloudwatch_logs12      log_group_name DevServer/audit/audit_log13      log_stream_name fluentd_audit_log14      auto_create_stream true15</match>

sourceブロック内のtype tail指定はログへの出力内容を随時入力させる設定です。

pathで監視対象のログファイルを、tagでこのルールに対する名前を設定しています。

フォーマット変更は行わないため、format none指定としています。

matchブロック内ではauditlogタグのついたものに対して、type cloudwatchlogsでCloudWatch Logsに連携させるようにしています。loggroupname、logstreamnameでロググループ名、ログストリーム名を指定しています。

CloudWatch Logsへのログ出力確認

監査対象の操作を行ってから、CloudWatch Logsを確認すると、ログストリームが追加され、ログが連携されていることが確認できます。

なお、fluentd内部でメッセージはJSON形式で扱われるため、format none指定の場合でも{“message”:”メッセージ本文”}のJSON形式に変換されてCloudWatch Logsに出力されます。

まとめ

auditログをfluentd経由でCloudWatch Logsに連携できることが確認できました。

次回記事ではexec_filter Output Pluginを使ってログを加工してCloudWatch Logsに連携してみます。

次回もお楽しみに。

次回記事: EC2でファイル監査を設定する(fluentd exec_filter設定編)

この記事を書いた人

aws-recipe-user