ナビゲーションリンクをスキップ | |
印刷ビューの終了 | |
マニュアルページセクション 1M: システム管理コマンド Oracle Solaris 11.1 Information Library (日本語) |
- 監査の構成
auditconfig subcommand...
auditconfig は、カーネル監査パラメータを取得および設定するためのコマンド行インタフェースを提供します。
監査サービスの持続値を取得または設定する場合を除き、この機能を使用できるのは、Solaris の監査機能が有効になっている場合だけです。
キュー値ゼロ (0) は、システムデフォルトが有効であることを示します。
perzone ポリシーの設定によって、auditconfig で制御される監査設定のスコープが決まります。perzone が設定されている場合、特に記載のないかぎり、値は非大域ゾーンを反映します。それ以外の場合、設定はシステム全体用です。perzone 設定に基づく制限は、適用されるオプションごとに記載されています。
非大域ゾーン管理者は、perzone と ahlt 以外のすべての監査ポリシーオプションを設定できます。perzone と ahlt は大域ゾーンにのみ適用され、これらのポリシーを設定するには大域ゾーン管理者の特権が必要です。perzone と ahlt については、後述の -setpolicy オプションで説明されています。
このコマンドを使用できるのは、Audit Control 権利プロファイルを付与された管理者です。
次のオプションがサポートされています。
監査サービスの持続値に加えて実行中システムの値を表示または設定します。
このオプションは、以下のサブコマンドのうちこれを示しているものでのみ使用できます。
構成済みの帰属不可能な監査マスク kmask を、構成済みの帰属不可能な監査マスクに設定します。例:
# auditconfig -aconf Configured non-attributable event mask.
このコマンドは、プロセスの監査特性を使用して、テキストトークン string を含む監査イベント event の監査レコードを構築します。リターントークンは、sorf (成功/失敗フラグ) と retval (戻り値) から構築されます。イベントの型は char*、sorf は 0/1 (成功/失敗)、retval はエラー番号の値、string の型は *char です。このコマンドは、シェルスクリプトで監査レコードを構築する場合に役立ちます。このオプションの例:
# auditconfig -audit AUE_ftpd 0 0 "test string" # audit record from audit trail: header,76,2,ftp access,,Fri Dec 08 08:44:02 2000, + 669 msec subject,abc,root,other,root,other,104449,102336,235 197121 elbow text,test string return,success,0
カーネルに設定された帰属不可能なイベントの構成を、監査サービスで構成されたエントリ (-setnaflags) に基づいてチェックします。カーネル監査イベントのアクティブクラスマスクが構成済みクラスマスクに一致しない場合、不一致が報告されます。
カーネル監査イベント - クラスマッピングの構成をチェックします。カーネル監査イベントの実行時クラスマスクが構成済みクラスマスクに一致しない場合、不一致が報告されます。
カーネル監査イベント - クラスマッピングを構成します。実行時クラスマッピングは、監査イベント - クラスデータベースファイル内のマッピングに一致するように変更されます。
現在のプロセスの監査セッション ID を表示します。例:
# auditconfig -getasid audit session id = 102336
現在のプロセスの監査特性を返します。
# auditconfig -getaudit audit id = abc(666) process preselection mask = lo(0x1000,0x1000) terminal id (maj,min,host) = 235,197121,elbow(172.146.89.77) audit session id = 102336
現在のプロセスの監査 ID を表示します。例:
# auditconfig -getauid audit id = abc(666)
現在のアクティブルートの場所 (システムブート時にルート [または非大域ゾーンルート] からアンカーされている) を表示します。例:
# auditconfig -getcar current active root = /
指定されたカーネル監査イベントに関連付けられた事前選択マスクを表示します。event はカーネルイベント番号またはイベント名です。
カーネル監査の状況を表示します。表示される状況は、監査が有効になっていてオンになっている (カーネル監査モジュールが監査レコードを構築してキューに入れ、監査デーモンが実行されている) ことを意味するリテラル文字列 auditing、監査が有効になっているがオフになっている (カーネル監査モジュールが監査レコードを構築せずキューにも入れず、監査デーモンが実行されていない) ことを意味する noaudit、監査モジュールが有効になっていない (system(4) でモジュールが除外されている) ことを意味する disabled です。詳細については、auditd(1M) を参照してください。
指定されたイベント (文字列またはイベント番号) について、event が割り当てられたクラスを出力します。例:
# auditconfig -getestate 20 audit class mask for event AUE_REBOOT(20) = 0x800 # auditconfig -getestate AUE_RENAME audit class mask for event AUE_RENAME(42) = 0x30
ユーザーのデフォルト監査事前選択フラグを表示します。
現在のゾーンの監査特性を取得します。例:
# auditconfig -getkaudit audit id = unknown(-2) process preselection mask = lo,na(0x1400,0x1400) terminal id (maj,min,host) = 0,0,(0.0.0.0) audit session id = 0
監査ポリシー perzone が設定されていない場合、端末 ID は大域ゾーンのものです。それ以外の場合、非大域ゾーンの端末 ID です。
現在のゾーンの帰属不可能な事前選択マスクを取得します。例:
# auditconfig -getkmask audit flags for non-attributable events = lo,na(0x1400,0x1400)
監査ポリシー perzone が設定されていない場合、カーネルマスクは大域ゾーンのものです。それ以外の場合、非大域ゾーンのものです。
帰属不可能な監査フラグを表示します。
指定されたプロセスの監査 ID、事前選択マスク、端末 ID、および監査セッション ID を表示します。
プラグイン名に関する情報を表示します。name が指定されなかった場合は、すべてのプラグインを表示します。
カーネル監査ポリシーを表示します。ahlt および perzone ポリシーは大域ゾーンの設定を反映します。perzone が設定されている場合、その他のポリシーはすべて非大域ゾーンの設定を反映します。perzone が設定されていない場合、ポリシーはマシン全体です。
監査リモートサーバーに関する情報表示します。server オプション引数を使用する場合、一般的な監査リモートサーバー構成のみが表示されます。オプション引数 group を使用する場合、すべての構成済み接続グループの情報が表示されます。グループ引数に加えて connection_group 名が指定される場合、それぞれの接続グループの情報だけを表示します。
オプション引数を使用しない場合、一般的な監査リモートサーバー構成の詳細およびすべての接続グループの情報が表示されます。
現在の作業ディレクトリ (システムブート時にゾーンルートからアンカーされたもの) を表示します。例:
# cd /usr/tmp # auditconfig -getcwd current working directory = /var/tmp
監査キュー書き込みバッファーサイズを取得します。例:
# auditconfig -getqbufsz no configured audit queue size audit queue buffer size (bytes) = 1024
監査キュー書き込みバッファーサイズ、監査キュー hiwater マーク、監査キュー lowater マーク、監査キュー prod 間隔 (ティック) を取得します。
# auditconfig -getqctrl no configured audit queue lowater mark no configured audit queue hiwater mark no configured audit queue size no configured audit queue delay audit queue hiwater mark (records) = 100 audit queue lowater mark (records) = 10 audit queue buffer size (bytes) = 1024 audit queue delay (ticks) = 20 # auditconfig -setqbufsz 8192 # auditconfig -t -setqbufsz 12288 # auditconfig -setqdelay 20 # auditconfig -t -setqdelay 25 # auditconfig -getqctrl no configured audit queue lowater mark no configured audit queue hiwater mark configured audit queue buffer size (bytes) = 8192 configured audit queue delay (ticks) = 20 active audit queue hiwater mark (records) = 100 active audit queue lowater mark (records) = 10 active audit queue buffer size (bytes) = 12288 active audit queue delay (ticks) = 25
監査キューが出力の開始を促される間隔を取得します。例:
# auditconfig -getqdelay no configured audit queue delay audit queue delay (ticks) = 20
未配信監査レコードの、監査生成がブロックされる高位境界値を取得します。例:
# ./auditconfig -getqhiwater no configured audit queue hiwater mark audit queue hiwater mark (records) = 100
未配信監査レコードの、ブロックされたプロセスが再開される低位境界値を取得します。例:
# auditconfig -getqlowater no configured audit queue lowater mark audit queue lowater mark (records) = 10
現在の監査統計情報を表示します。例:
# auditconfig -getstat gen nona kern aud ctl enq wrtn wblk rblk drop tot mem 910 1 725 184 0 910 910 0 231 0 88 48
-getstat 出力に含まれる見出しについては、auditstat(1M) を参照してください。
現在のプロセスの監査端末 ID を表示します。例:
# auditconfig -gettid terminal id (maj,min,host) = 235,197121,elbow(172.146.89.77)
現在構成されている (実行時) カーネルレベルおよびユーザーレベル監査イベント情報を表示します。
カーネル監査ポリシーを各ポリシーの説明付きで表示します。
指定された session-ID でシェルまたは cmd を実行します。例:
# ./auditconfig -setasid 2000 /bin/ksh # # ./auditconfig -getpinfo 104485 audit id = abc(666) process preselection mask = lo(0x1000,0x1000) terminal id (maj,min,host) = 235,197121,elbow(172.146.89.77) audit session id = 2000
指定された監査特性でシェルまたは cmd を実行します。
指定された audit–ID でシェルまたは cmd を実行します。
カーネルイベント event を audit_flag リストで指定されたクラスにマップします。event はイベントの番号または名前です。audit_flag は監査クラスを表す文字列です。詳細については、audit_flags(5) を参照してください。perzone が設定されていない場合、このオプションは大域ゾーンでのみ有効です。
デフォルトのユーザー監査事前選択フラグを設定します。audit_flags(5) を参照してください。デフォルト事前選択フラグとユーザー固有の監査フラグを組み合わせることで、ユーザーの監査事前選択マスクを形成します。
マシンの IP アドレスを指定された値に設定します。IP-address_type は ipv6、ipv4 のいずれかです。
perzone が設定されていない場合、このオプションは大域ゾーンでのみ有効です。
マシンの帰属不可能な事前選択フラグを設定します。
perzone が設定されていない場合、このオプションは大域ゾーンでのみ有効です。
帰属不可能な監査フラグを設定します。audit_flags(5) を参照してください。帰属不可能な監査フラグは、アクションを認証済みユーザーに帰属させることができない場合にどのクラスのイベントを監査すべきかを定義します。ログインの失敗は、帰属不可能なイベントの一例です。
指定されたプロセスの事前選択マスクを設定します。flags は、audit_flags(5) のものに似たフラグの ASCII 表現です。
perzone が設定されていない場合、このオプションは大域ゾーンでのみ有効です。
プラグイン plugin_name を active または inactive に構成します。プラグインの属性やキュー内の未処理監査レコード数を構成することもできます。関連する監査プラグインのマニュアルページおよび auditd(1M) を参照してください。
カーネル監査ポリシーを設定します。ポリシー policy_flag は監査ポリシーを示すリテラル文字列です。プレフィックス + は、指定されたポリシーを現在の監査ポリシーに追加します。接頭辞 - は、指定されたポリシーを現在の監査ポリシーから削除します。最初に大域ゾーンから perzone ポリシーが設定されていない場合は、非大域ゾーンからポリシーを設定できません。次に有効なポリシーフラグ文字列を示します。現在の有効な監査ポリシーフラグ文字列は、auditconfig -lspolicy でも一覧表示されます。
現在のゾーンに適用されるポリシーをすべて取り込みます。
監査キューが高位境界値に達したかリソース不足により監査レコードを構築できないために配信不可能な非同期監査イベントが発生した場合、パニックが呼び出され、システムはコアをダンプします。デフォルトではレコードがドロップされ、ドロップレコード数のカウントが保持されます。
execv(2) システムコール環境引数を監査レコードに取り込みます。この情報はデフォルトでは取り込まれません。
execv(2) システムコールパラメータ引数を監査レコードに取り込みます。この情報はデフォルトでは取り込まれません。
監査リソースが使い果たされた際にプロセスを一時停止しません。代わりに監査レコードをドロップし、ドロップレコード数のカウントを保持します。デフォルトでは、監査リソースが使用可能になるまでプロセスが一時停止されます。
補助グループトークンを監査レコードに取り込みます。デフォルトではグループトークンは取り込まれません。
ポリシーを取り込みません。大域ゾーン以外で使用した場合、ahlt および perzone ポリシーは変更されません。
セカンダリパストークンを監査レコードに追加します。これらは通常、動的にリンクされた共有ライブラリまたはシェルスクリプト用コマンドインタプリタのパス名です。デフォルトではこれらは取り込まれません。
ゾーンごとに別々の構成、キュー、およびログを保持し、ゾーンごとに別々のバージョンの auditd(1M) を実行します。
public ファイルを監査します。public特性 (ルートが所有、すべての人が読み取れる、すべての人が書き込めるわけではない) を満たすファイルの場合、読み取りタイプ処理はデフォルトでは監査されません。
トレーラトークンをすべての監査レコードに取り込みます。デフォルトではトレーラトークンは取り込まれません。
シーケンストークンをすべての監査レコードの一部として取り込みます。デフォルトではシーケンストークンは取り込まれません。シーケンストークンは、シーケンス番号をすべての監査レコードに付加します。
ウィンドウ間で移動されたダウングレード済みデータを監査レコードに取り込みます。このポリシーを使用できるのは、システムが Trusted Extensions で構成されている場合だけです。デフォルトではこの情報は取り込まれません。
ウィンドウ間で移動された、アップグレード済みデータを監査レコードに取り込みます。このポリシーを使用できるのは、システムが Trusted Extensions で構成されている場合だけです。デフォルトではこの情報は取り込まれません。
zonename トークンをすべての監査レコードの一部として取り込みます。デフォルトでは zonename トークンは取り込まれません。zonename トークンは、監査レコードが生成されたゾーンの名前を提供します。
主監査リモートサーバースイッチをアクティブまたは非アクティブに構成します。これが非アクティブに設定されている場合、すべての構成済み接続グループが非アクティブとみなされます。オプションで、一般的な監査リモートサーバー属性を構成します。詳細は、ars(5) を参照してください。
監査リモートサーバー接続グループ group_name をアクティブまたは非アクティブに構成します。オプションで、それぞれの接続グループ属性を構成します。詳細は、ars(5) を参照してください。
監査リモートサーバー接続グループ group_name を作成または破棄します。詳細は、ars(5) を参照してください。
監査キュー書き込みバッファーサイズ (バイト) を設定します。ゼロ (0) は、未構成の値にリセットすることを示します。
監査キュー書き込みバッファーサイズ (バイト)、hiwater 監査レコードカウント、lowater 監査レコードカウント、およびウェイクアップ間隔 (ティック) を設定します。非大域ゾーンで有効になるのは、perzone が設定されている場合だけです。ゼロ (0) は、未構成の値にリセットすることを示します。
監査キューのウェイクアップ間隔 (ティック) を設定します。これにより、カーネルが監査キューに対して監査レコードを監査トレールに書き込むことを要求する間隔が決まります。非大域ゾーンで有効になるのは、perzone が設定されている場合だけです。ゼロ (0) は、未構成の値にリセットすることを示します。
監査レコード生成がブロックされる、監査キュー内の未配信監査レコード数を設定します。非大域ゾーンで有効になるのは、perzone が設定されている場合だけです。ゼロ (0) は、未構成の値にリセットすることを示します。
ブロックされた監査プロセスがブロック解除される、監査キュー内の未配信監査レコード数を設定します。非大域ゾーンで有効になるのは、perzone が設定されている場合だけです。ゼロ (0) は、未構成の値にリセットすることを示します。
指定された監査セッション ID を持つすべてのプロセスの事前選択マスクを設定します。非大域ゾーンで有効になるのは、perzone が設定されている場合だけです。
監査統計カウンタをリセットします。非大域ゾーンで有効になるのは、perzone が設定されている場合だけです。
指定されたユーザー名または監査 ID を持つすべてのプロセスの事前選択マスクを設定します。非大域ゾーンで有効になるのは、perzone が設定されている場合だけです。
例 1 auditconfig を使用する
次に auditconfig コマンドの例を示します。
# # Map kernel audit event number 10 to the "fr" audit class. # auditconfig -setclass 10 fr # # Turn on inclusion of exec arguments in exec audit records. # auditconfig -setpolicy +argv
例 2 未処理監査レコード数のみを設定する
次の一連のコマンドは、audit_binfile プラグインのキューに未処理監査レコード数のみを設定します。
# See if audit_binfile is active. % auditconfig -getplugin audit_binfile # Set to queue 20 unprocessed audit records. # % auditconfig -setplugin audit_binfile "" 20
例 3 キュー制御パラメータをリセットする
次のコマンドは、アクティブな構成済みキュー制御パラメータをリセットします。
# Get the audit remote server configuration auditconfig -getremote # Change an audit remote server attribute auditconfig -setremote server \ "listen_address=10.0.0.1,max_startups=10:30:60" # Create an audit remote server (wild card) connection group auditconfig -setremote group create egg_farm # Get a specific audit remote server connection group information auditconfig -getremote group egg_farm # Set a connection group attribute, activate the connection group auditconfig -setremote group active egg_farm \ "hosts=tipo.cz.oracle.com,binfile_dir=/var/audit/ARS"
例 4 監査リモートサーバーの構成
次のコマンドは、監査リモートサーバーを構成します。
# Get the audit remote server configuration auditconfig -getremote # Change an audit remote server attribute auditconfig -setremote server \ "listen_address=10.0.0.1,max_startups=10:30:60" # Create an audit remote server (wild card) connection group auditconfig -setremote group create egg_farm # Get a specific audit remote server connection group information auditconfig -getremote group egg_farm # Set a connection group attribute, activate the connection group auditconfig -setremote group active egg_farm \ "hosts=tipo.cz.oracle.com,binfile_dir=/var/audit/ARS"
正常終了。
エラーが発生した。
監査システムで使用されるイベント定義を格納します。
監査システムで使用されるクラス定義を格納します。
属性についての詳細は、マニュアルページの attributes(5) を参照してください。
|
audit(1M), auditd(1M), auditstat(1M), praudit(1M), execv(2), audit_class(4), audit_event(4), system(4), ars(5), attributes(5), audit_binfile(5), audit_flags(5), audit_remote(5), audit_syslog(5)
『Oracle Solaris 11.1 の管理: セキュリティーサービス』の監査に関するセクションを参照してください。
-setplugin オプションを使ってプラグイン出力を選択した場合、-setpolicy +cnt オプションと -setqhiwater オプションに関するシステム動作が若干変更されます。-setpolicy +cnt を設定した場合、ディスク領域が解放されるまで、選択されたプラグインにデータが引き続き送信されます (audit_binary プラグインの出力が停止していても)。-setpolicy –cnt を使用した場合のブロック動作については、前述の「サブコマンド」を参照してください。キュー高位境界値は、qsize 属性 (前述の -setplugin オプションの説明を参照) によってオーバーライドされないかぎり、auditd 内でキュー制限の上限として使用されます。
プロセスベースの情報を変更または表示する auditconfig オプションは、perzone ポリシーの影響を受けません。端末 ID パラメータや監査キューパラメータなどのシステム監査データを変更するものは、perzone ポリシーが設定されていないかぎり、大域ゾーンでのみ有効です。perzone が設定されている場合、システム監査の表示は非大域ゾーンを反映します。それ以外の場合、大域ゾーンの設定を反映します。
プラグイン (-setplugin) や監査リモートサーバー (-setremote) の設定を変更 (アクティブ化や非アクティブ化、各属性の変更など) しても、監査サービスがリフレッシュされるまでは適用されません。監査サービスをリフレッシュするには、audit(1M) を使用します。