私はCentOS 5.5を使用しており、基本的に/var/log/audit/audit.log
次のようになります。
type=USER_AUTH msg=audit(1331897657.359:8435): user pid=15610 uid=0 auid=4294967295 subj=system_u:system_r:unconfined_t:s0-s0:c0.c1023 msg='PAM: authentication acct="?" : exe="/usr/sbin/sshd" (hostname=c165-130.i02-2.onvol.net, addr=213.165.165.130, terminal=ssh res=failed)'
type=USER_LOGIN msg=audit(1331897657.360:8436): user pid=15610 uid=0 auid=4294967295 subj=system_u:system_r:unconfined_t:s0-s0:c0.c1023 msg='acct="oracle": exe="/usr/sbin/sshd" (hostname=?, addr=213.165.165.130, terminal=sshd res=failed)'
むしろ、ログエントリはタイムスタンプなしで記録されるため、トラブルシューティングはより困難になります。利用可能なマニュアルページがあります
man auditd.conf
しかし、このスレッドでは、次のようにだけ言います。
log_format
The log format describes how the information should be stored on
disk. There are 2 options: raw and nolog. If set to RAW, the
audit records will be stored in a format exactly as the kernel
sends it. If this option is set to NOLOG then all audit informa-
tion is discarded instead of writing to disk. This mode does not
affect data sent to the audit event dispatcher.
各項目の先頭に日付/時刻を印刷するように設定するにはどうすればよいですか?
答え1
auditdログを人が解析できる日付形式にするために設定するオプションはありませんが、「ausearch」コマンドを使用すると、人間が読むことができる-i
(おそらくもう少し読みやすい)日付形式を生成するオプションがあります。読みやすさ)出力を取得します。
たとえば、ausearch -ts today
新しく起動したシステムで実行すると、次のようになります。
# ausearch -ts today
----
time->Mon Mar 19 23:07:00 2012
type=DAEMON_START msg=audit(1332212820.421:3834): auditd start, ver=2.1.3 format=raw kernel=3.2.10-3.fc16.x86_64 auid=4294967295 pid=6438 subj=system_u:system_r:auditd_t:s0 res=success
しかし、実行すると、ausearch -ts today -i
次のようになります。
# ausearch -ts today -i
----
type=DAEMON_START msg=audit(03/19/2012 23:07:00.421:3834) : auditd start, ver=2.1.3 format=raw kernel=3.2.10-3.fc16.x86_64 auid=unset pid=6438 subj=system_u:system_r:auditd_t:s0 res=success
それはあなたに効果がありますか? ausearch
とにかく監査記録を見るためにこれを使用します。 -i
uid->ユーザー名の検索やその他の解析などの操作を実行することもできます。
編集する:上記のように、私はFedora 16を実行していますが、ausearch -i
RHEL5にも同じことが当てはまります。
答え2
先頭の長い数字はタイムスタンプ、つまりエポック以降の秒数です。数分前に、以下を受け取りました。
[0 1128 18:09:57] ~ % date +%s; date
1331917801
Fri Mar 16 18:10:01 CET 2012
数値をより読みやすいものに変換するには:
[0 1133 18:12:41] ~ % date -d @1331897657
Fri Mar 16 12:34:17 CET 2012
sed
(だから当然1秒未満の部分を切り取るには「一般的なトリック」が必要です。)
SEを使用できるマシンはありませんが、sealert -a
タイムスタンプを人間が読めるものに解析することは可能ですか?
答え3
ausearch -i
ヘルプから:
-i,--interpret Interpret results to be human readable
これは正解ではありません。ジェスビリングス書いた。
tail -fを実行する必要はありません!
PSくそスタックポイント!だからコメントや投票はできません。
答え4
tail -f /var/log/audit/audit.log | ausearch -i