Sun Microsystems, Inc.
spacerspacer
spacer www.sun.com docs.sun.com |
spacer
black dot
 
 
26.  BSM サービスの参照 監査コマンド auditreduce コマンド  戻る   目次   次へ 
   
 

praudit コマンド

praudit コマンドは、標準入力からバイナリ形式の監査レコードを読み込み、そのレコードを表示可能な書式で表示します。auditreduce コマンドまたは 1 つの監査ファイルからの出力は、praudit コマンドの入力にパイプできます。catコマンドを使用すると、複数のファイルを連結して入力にパイプすることができます。tail コマンドを使用すると、現在の監査ファイルを入力にパイプできます。

praudit コマンドでは、次の 4 つの出力形式を生成できます。

  • デフォルト- デフォルトでは、1 行に 1 つの監査トークンが表示されます。デフォルトでは、監査イベントは ioctl(2) などのその内容が表示され、テキストで表示できる値はすべてテキスト形式で表示されます。たとえば、ユーザーは、ユーザー ID ではなく、ユーザー名で表示されます。

  • -l オプション - このオプションでは、1 行に 1 つの監査レコードが表示されます。-d オプションを指定すると、トークンフィールドおよびトークン間で使用される区切り文字を変更できます。デフォルトの区切り文字は、コンマです。

  • -r オプション - このオプションでは、数値で表現できる値はすべて数値として表示されます。たとえば、ユーザーはユーザー ID で、インターネットアドレスは 16 進形式で、モードは 8 進形式で表示されます。監査イベントは、イベント番号 (158 など) で表示されます。

  • -s オプション - このオプションでは、監査イベントがテーブル名 ( AUE_IOCTL など) で表示されます。その他のトークンは、デフォルトと同じ形式で表示されます。

praudit のデフォルトの出力形式では、各レコードは監査トークンのシーケンスとして表示されます。各トークンは 1 行ごとに出力されます。すべての監査レコードは header トークンで始まります。awk コマンドなどを使用すると、出力をさらに処理できます。

次の出力は、 headerトークンを praudit コマンドのデフォルトで出力したものです。

header,240,1,ioctl(2),es,Tue Sept  7 16:11:44 1999, + 270 msec

次の出力は、同じ header トークンを praudit -r コマンドで出力したものです。

20,240,1,158,0003,699754304, + 270 msec

praudit コマンドの出力は、必要に応じてテキストとして操作できます。たとえば、auditreduce コマンドでは選択できないレコードを選択したいことがあります。単純なシェルスクリプトを使用すると、praudit の出力を処理できます。次の単純なスクリプトの例では、header トークンに Control-A の接頭辞を付け、1 つのレコードのすべての監査トークンを 1 行に結合します。このとき、改行は Control-A として保持されます。次に、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'

スクリプトの ^a は、^a という 2 つの文字ではなく、Control-A です。この接頭辞によって、ヘッダートークンが、テキストとして表示される header 文字列と区別されます。

auditconfig コマンド

auditconfig コマンドは、監査構成パラメータを取得して設定するためのコマンド行インタフェースを提供します。auditconfig(1M) のマニュアルページを参照してください。auditconfig コマンドには、次のオプションを指定できます。

-chkconf

カーネルイベントとクラスの割り当ての構成を検査し、不一致を報告します。

-conf

カーネルイベントとクラスの割り当てが、audit_event ファイル内の現在の割り当てと一致するように実行時に構成し直します。

-getcond

マシンの監査の状態を取得します。次の表に、応答コード例を示します。

表 26-1 監査状態の例

応答

意味

auditing

監査が有効でオンに設定されている

no audit

監査は有効だが、監査デーモンは動作していない

disabled

監査が無効になっている

-setcond condition

マシンの監査状態をauditing または noaudit に設定する

-getclass event_number

指定するイベントが割り当てられている事前選択クラスを取得する

-setclass event_number audit_flags

指定するイベントが割り当てられる事前選択クラスを設定する

-lsevent

現在構成されている (実行時) カーネルとユーザー監査イベント情報を表示する

-getpinfo pid

指定するプロセスの監査 ID、事前選択マスク、端末 ID、監査セッション ID を取得する

-setpmask pid flags

指定するプロセスの事前選択マスクを設定する

-setsmask asid flags

指定する監査セッション ID を持つすべてのプロセスの事前選択マスクを設定する

-setumask auid flags

指定するユーザー監査 ID を持つすべてのプロセスの事前選択マスクを設定する

-lspolicy

監査ポリシーの一覧と、各ポリシーの簡単な説明を表示する

-getpolicy

現在の監査ポリシーフラグを表示する

-setpolicy policy_flag[,policy_flag]

監査ポリシーフラグを、指定するポリシーに設定する (使用する監査ポリシーの決定を参照)

監査ファイル

監査プロセスでは、次のファイルが使用されます。

/etc/system ファイル

/etc/system ファイルには、カーネルが初期設定で読み込み、システム動作をカスタマイズするためのコマンドが格納されます。bsmconv および bsmunconv シェルスクリプトは、監査機能を起動および終了するときに使用され、/etc/system ファイルを変更します。bsmconv シェルスクリプトは、/etc/system ファイルに次の行を追加します。

set c2audit:audit_load=1
set abort_enable=0

最初のコマンドは、システムのブート時に、読み込み可能なカーネルモジュール (監査モジュール) c2audit を読み込みます。2 番目のコマンドは、Stop-A を使用不可にします。Stop-A を使用すると、システムを停止して、デバッガが起動し、セキュリティ違反が発生する可能性があります。bsmunconv シェルスクリプトでは、2 つの行を削除し、システムをリブートすると監査が無効になります。

 
 
 
  戻る   目次   次へ