次のタスクでは、すべての監査ディレクトリのすべての監査ファイルをマージする方法について説明します。監査トレールの内容を分析する場合は、次の手順を行います。
スーパーユーザーになるか、同等の役割を引き受けます。
一次監査ディレクトリに移動します。
# cd /etc/security/audit/server-name.1/files |
このディレクトリに移動すると、マージしたファイルがこの保護されたディレクトリに配置されます。
監査レコードをマージします。
# auditreduce> merged.log |
server-name 上の audit_control ファイルの dir: 行に指定されているすべてのディレクトリがマージされ、merged.log というファイルに格納されます。
監査トレール全体を一度に表示するには、auditreduce コマンドの出力を praudit コマンドにパイプします。
# auditreduce | praudit |
出力を lp コマンドにパイプすると、その出力はプリンタに送られます。
# auditreduce | praudit | lp |
auditreduce の -O オプションを使用して、複数の監査ファイルを 1 つのファイルに結合し、そのファイルを指定した出力ファイルに保存します。auditreduce を使用すると、監査ファイルの結合と削除を自動的に実行できます (auditreduce(1M) のマニュアルページの -C と -D オプションを参照)。ただし、多くの場合、 find コマンドなどを使用して手動でファイルを選択し、auditreduce を使用してファイル名を指定する方が簡単です。
この方法で auditreduce を使用すると、入力ファイルのすべてのレコードが 1 つの出力ファイルにマージされます。マージが完了したら、入力ファイルは削除する必要があります。また、出力ファイルは、/etc/security/audit/server-name /files という名前のディレクトリに保存し、auditreduce が出力ファイルを検索できるようにする必要があります。
# auditreduce -O combined-filename |
auditreduce コマンドを使用すると、入力ファイルを結合するときに不要なレコードを除外して、出力ファイル内のレコード数を削減することもできます。たとえば、auditreduce を使用して、監査ファイルから 1 か月以上経過した記録のログインレコードとログアウトレコードだけを保持して、ほかのすべてのレコードを削除することができます。監査トレール全体が必要になった場合は、バックアップテープから復元することができます。
# auditreduce -O daily.summary -b 19990413 -c lo; compress *daily.summary # mv *daily.summary /etc/security/summary.dir |
次の例では、システム管理者が lo イベントクラスを要求して、ユーザー tamiko が 1999 年 4 月 13 日にログインしてログアウトした時刻を調べます。短い書式の日付は、yymmdd 形式で出力されます。長い書式については、auditreduce(1M) のマニュアルページを参照してください。
# auditreduce -d 990413 -u tamiko -c lo | praudit |
この例では、特定の日付のログインおよびログアウトメッセージが監査トレールから選択され、対象ファイルにマージされます。対象ファイルは、通常の監査ルートディレクトリ以外のディレクトリに書き込まれます。
# auditreduce -c lo -d 990413 -O /usr/audit_summary/logins |
-O オプションを使用すると、開始時刻と終了時刻を示す 14 文字のタイムスタンプと接尾辞 logins が付いた監査ファイルが作成されます。
/usr/audit_summary/19990413000000.19990413235959.logins |
監査ファイルが開いているときに監査デーモンが終了したり、サーバーがアクセス不能になって新しいサーバーに切り替わったりすることがあります。このような場合、その監査ファイルは監査レコードとして使用されなくなりますが、監査ファイルの終了時刻として文字列 not_terminated が付いたままになります。このようなファイルが検出された場合は、ファイルが使用されていないことを手動で検証し、正しいオプションを使用してファイル名を指定して整理します。
# audit -s 19990414121112.not_terminated.egret # auditreduce -O egret 19990413120429.not_terminated.egret |
audit コマンドは、現在の監査ファイル名を確認します。auditreduce コマンドは、正しい名前、正しいタイムスタンプ、および正しい接尾辞 (egret) を使用して新しい監査ファイルを作成し、すべてのレコードをそのファイルにコピーします。