Trusted Solaris の監査管理

praudit スクリプトを使って選択を実行する方法

praudit の出力を sedawk で 処理したり、バイナリ形式の監査レコードを変換して処理するプログラムを作成すると、より高度な画面出力やレポートを得ることができます。

場合によっては、 praudit の出力をテキストの行として扱うと便利です。たとえば、auditreduce で実行できない選択を行う場合などに、簡単なシェルスクリプトで praudit の出力を処理することができます。次の例は praudit_grep といいます。

#!/bin/sh
praudit | sed -e '1,2d' -e '$s/^file.*$//' -e 's/^header/^aheader/' ¥¥
| tr '¥¥012¥¥001' '¥¥002¥¥012' ¥¥
| grep "$1" ¥¥
| tr '¥¥002' '¥¥012'

このスクリプト例では、header トークンの前に Control-A が置かれています。(^a は Control-A を表しています。^ と a の 2 文字ではありません。こうした接頭辞は、テキストとして現れる文字列ヘッダーとヘッダートークンを区別するために必要です。) このスクリプトは、Control-A で行ブレークを保持しながらレコードの全トークンを 1 行にまとめ、grep コマンドを実行して、もとの改行文字を修復します。

Trusted Solaris 環境でスクリプトを実行するには、次の条件を満たしている必要があります。