Trusted Solaris の監査管理

監査の設定手順 - 基本

ここでは、ワークステーションの監査を設定する手順について説明します。

専用の監査パーティションを作成する方法

    インストールの際に、ディスクをフォーマットして専用の監査パーティションを作成します。

パーティションのマウント先ディレクトリの名前には、 /etc/security/audit/workstation-name(.n) (workstation-name はワークステーション名) という命名規則を適用します。

ディスクフルワークステーションにはローカル監査ディレクトリが少なくとも 1 つ必要です。このディレクトリは、監査サーバーと通信できなくなった場合に最後の手段として使用されます。

命名規則については、「監査ファイルの保存場所」を参照してください。

監査ファイルサーバーでは、パーティションの大半に監査ファイルが保持されます。egret 監査ファイルサーバーの例を次に示します。

ディスク 

スライス 

マウント先 

サイズ 

c0t2d0 

s0 

/etc/security/audit/egret 

1.0 GB 

 

s1 

/etc/security/audit/egret.1 

0.98 GB 

 

s2 

ディスク全体 

1.98 GB 

c0t2d1 

s0 

/etc/security/audit/egret.2 

502 MB 

 

s1 

/etc/security/audit/egret.3 

500 MB 

 

s2 

ディスク全体 

1002 MB 


注 -

もう 1 つのディスクには egret/(ルート) パーティションと /swap パーティションがあります。


監査管理サーバーをはじめとするディスクフルワークステーションでは、少なくとも 1 つのパーティションをローカル監査ファイル専用とする必要があります。ワークステーション willet の例を次に示します。

ディスク 

スライス 

マウント先 

サイズ (MB) 

c0t3d0 

s0 

70 

 

s1 

スワップ 

180 

 

s2 

ディスク全体 

1002 

 

s3 

/usr 

350 

 

s4 

/etc/security/audit/willet 

202 

 

s7 

/export/home 

200 

ヒント

ワークステーション 1 台あたりのディスク容量は約 200M バイトですが、サイトのディスクに必要な容量は監査の処理量によって変わり、この値を大幅に上回ることもあります。

小さいパーティションを数多く作るより、大きいパーティションを少数作るほうが効果的です。


注 -

ワークステーションのインストール後、監査パーティションを格納するディスクを追加する方法については、Solaris 7 版の『Solaris のシステム管理 (第 2 巻)』を参照してください。Trusted Solaris セキュリティ属性でディスクを保護するには『Trusted Solaris 管理の手順』を参照してください。


特権の必要なコマンドを実行する方法

監査を設定するコマンドの大半は、プロファイルシェルで実行されます。プロファイルシェルでコマンドを実行するには、特権が必要です。また、アプリケーションマネージャの「システム管理 (System_Admin)」フォルダや「Solstice アプリケーション (Solstice_Apps)」フォルダにあるアクションも必要です。

ログインして管理役割になる

  1. ワークステーションにログインします。

    1. 自分のユーザー名を入力して Return キーを押します。

      だれもログインできないようにワークステーションが保護されている場合には、「ログインを有効にする (Enable Logins)」ダイアログボックスが表示されます。

    2. ログインを有効にすることが許容されている場合は、「ログイン (Login)」の後の「はい (Yes)」ボタンをクリックします。

      ログインを有効にすることが許容されていない場合は、管理者にログインを有効にしてもらいます。

    3. パスワードを入力します。

    4. 「了解 (OK)」をクリックしてダイアログを終了します。

      今日のメッセージとラベルビルダー画面が表示されます。シングルラベルシステムでは、画面にセッションラベルの説明が表示されます。マルチラベルシステムでは、ラベルビルダーでセッション認可上限を選択します。

    5. 特別な理由がなければデフォルトのままログインします。

      Return キーを押すか、「了解 (OK)」ボタンをクリックしてログインします。

  2. 割り当てられている管理役割になります。

    1. フロントパネルの中央でマウスの右ボタンをクリックします。

    2. メニューから「役割になる : role 役割 (Assume administrative Role)」(role は役割名を指します) を選択します。

    3. パスワードプロンプトで役割のパスワードを入力します。

プロファイルシェルを開く

  1. 管理役割になって、タスクによって要求されたラベルのワークスペース内の背景を右クリックし、メニューから「ツール」、「端末エミュレータ」の順に選択して、ターミナルを起動します。

  2. clist コマンドを入力します。


    # clist
    

    プロファイルシェルの場合はコマンドのリストが表示されます。

空き領域を削除する方法 (オプション)

  1. ラベル admin_low でシステム管理者になって、umount(1M) コマンドを実行して監査パーティションのマウントを解除します。

    たとえば、監査ファイルサーバー egret では次のように入力します。


    egret$ umount /etc/security/audit/egret
    egret$ umount /etc/security/audit/egret.1
    egret$ umount /etc/security/audit/egret.2
    egret$ umount /etc/security/audit/egret.3
    
  2. コマンド tunefs -m 0 を実行して、各パーティションに予約されているファイルシステム領域 (minfree しきい値) を 0 にします。

    セキュリティ管理者は、audit_control(4) ファイルに、予約ファイルシステム領域 (minfree しきい値) を設定します。

    たとえば、監査ファイルサーバー egret では次のように入力します。


    egret$ tunefs -m 0 /etc/security/audit/egret
    egret$ tunefs -m 0 /etc/security/audit/egret.1
    egret$ tunefs -m 0 /etc/security/audit/egret.2
    egret$ tunefs -m 0 /etc/security/audit/egret.3
    

    同様に、ワークステーション willet では次のように入力します。


    willet$ umount /etc/security/audit/willet
    willet$ tunefs -m 0 /etc/security/audit/willet
    

    ファイルシステムを調整することの長所と短所については、tunefs(1M) のマニュアルページを参照してください。

監査ファイルシステムを保護する方法

  1. ラベル admin_low でセキュリティ管理者になって、ファイルシステムのマウントが解除されている状態で、すべての監査ファイルシステムを対象に、適切なファイルのアクセス権を設定します。

    たとえば、監査ファイルサーバー egret では次のように入力します。


    egret$ chmod -R 750 /etc/security/audit/egret
    egret$ chmod -R 750 /etc/security/audit/egret.1
    egret$ chmod -R 750 /etc/security/audit/egret.2
    egret$ chmod -R 750 /etc/security/audit/egret.3
    

    ワークステーション willet では次のように入力します。


    willet$ chmod -R 750 /etc/security/audit/willet
    
  2. ラベル admin_high でセキュリティ管理者になって、ファイルシステムのマウントが解除されている状態で、すべての監査ファイルシステムを対象に、サイトのセキュリティポリシーで定められた Trusted Solaris セキュリティ属性のデフォルトを設定します。

    ラベル admin_high でコマンドを実行するためには、admin_high ワークスペースを作成する必要があります。「Admin_High ワークスペースを作成する方法」の手順に従ってください。

    たとえば、監査ファイルサーバー egret の場合、次のコマンドをその監査パーティションすべてで繰り返してください。


    egret$ setfsattr -l "admin_high;admin_high" -s "[admin_high]" ¥
    /etc/security/audit/egret
    

    ワークステーション willet では次のように入力します。


    willet$ setfsattr -l "admin_high;admin_high" -s "[admin_high]" ¥
    /etc/security/audit/willet
    

    -l オプションを付けると、ファイルシステムで作成されるすべてのファイルのラベルが admin_high になります。また、-s オプションでは、監査ファイルにパーティションのデフォルト機密ラベルが設定されます。詳細については、setfsattr(1M) のマニュアルページを参照してください。


    注 -

    このとき、ローカル監査ファイルシステムは、ホストの /etc/vfstab ファイルにあります。


監査ディレクトリを作成する方法

  1. ラベル admin_high でシステム管理者になって、ローカル監査ファイルシステムを再びマウントします。

    これについては、「Admin_High ワークスペースを作成する方法」の手順に従って admin_high プロセスを獲得します。

    たとえば、監査ファイルサーバー egret では次のように入力します。


    egret$ mount /etc/security/audit/egret
    egret$ mount /etc/security/audit/egret.1
    egret$ mount /etc/security/audit/egret.2
    egret$ mount /etc/security/audit/egret.3
    

    同様に、ワークステーション willet では次のように入力します。


    willet$ mount /etc/security/audit/willet
    
  2. マウントした各監査パーティションの最上位に files という名前のディレクトリを作成します。

    たとえば、監査ファイルサーバー egret では次のように入力します。


    egret$ mkdir /etc/security/audit/egret/files
    egret$ mkdir /etc/security/audit/egret.1/files
    egret$ mkdir /etc/security/audit/egret.2/files
    egret$ mkdir /etc/security/audit/egret.3/files
    

    ワークステーション willet では次のように入力します。


    willet$ mkdir /etc/security/audit/willet/files
    

監査ファイルシステムを共有する方法

  1. ラベル admin_low でシステム管理者になって、ローカルホストの dfstab(4) ファイルにローカル監査ファイルシステムをすべて入力します。

    1. アプリケーションマネージャをクリックして「システム管理 (System_Admin)」フォルダをダブルクリックし、さらに「ファイルシステムの共有 (Share Filesystems)」アクションをダブルクリックします。

    2. dfstab ファイルに各ローカル監査ディレクトリを入力して保護します。

      たとえば、監査ファイルサーバー egret の場合、次のように記述します。

      share -F nfs -o ro -d "local audit files" /etc/security/audit/egret
      share -F nfs -o rw=willet:audubon -d "audit willet" /etc/security/audit/egret.1
      share -F nfs -o rw=grebe:audubon -d "audit grebe" /etc/security/audit/egret.2
      share -F nfs -o rw=sora:audubon -d "audit sora" /etc/security/audit/egret.3

      ワークステーション willet の場合は、次のように記述します。

      share -F nfs -o ro -d "local audit files" /etc/security/audit/willet
  2. トラステッドパスメニューで「シャットダウン (Shut Down)」を選択してワークステーションを再起動します。

監査ファイルシステムをマウントする方法

  1. ラベル admin_low でシステム管理者になって、監査管理サーバー audubon で、Trusted Solaris ネットワークの全監査ディレクトリのマウント先を作成します。

    監査管理サーバー audubon の場合、次のように入力します。


    audubon$ mkdir /etc/security/audit/willet
    audubon$ mkdir /etc/security/audit/egret
    audubon$ mkdir /etc/security/audit/egret.1
    ...
  2. ラベル admin_low でシステム管理者になって、監査管理サーバーの vfstab(4) ファイルにネットワーク上の全監査パーティションを入力します。

    読み取り/書き込み (rw) オプションを付けて監査ディレクトリをマウントします。リモートパーティションをマウントするためには、soft オプションを付けます。

    1. アプリケーションマネージャをクリックして「システム管理 (System_Admin)」フォルダをダブルクリックし、さらに「マウント・ポイントの設定 (Set Mount Points)」アクションをダブルクリックします。

    2. vfstab(4) ファイルにマウント先を入力します。

      監査管理サーバー audubonvfstab ファイルの一部は次のようになります。

      egret:/etc/security/audit/egret - 	/etc/security/audit/egret 	nfs 	- 	yes 	bg,soft,nopriv
      egret:/etc/security/audit/egret.1 - 	/etc/security/audit/egret.1 	nfs 	- 	yes 	bg,soft,nopriv
      egret:/etc/security/audit/egret.2 - 	/etc/security/audit/egret.2 	nfs 	- 	yes 	bg,soft,nopriv
      egret:/etc/security/audit/egret.3 - 	/etc/security/audit/egret.3 	nfs 	- 	yes 	bg,soft,nopriv
      willet:/etc/security/audit/willet - 	/etc/security/audit/willet 	nfs 	- 	yes 	bg,soft,nopriv
      ...
  3. リモート監査ファイルサーバーのパーティションのマウント先をワークステーションごとに作成し、vfstab(4) ファイルに入力します。ラベル admin_low でシステム管理者になって、これを行ってください。

    ワークステーション willet にマウント先を作成する場合、次のように入力します。


    willet$ mkdir /etc/security/audit/egret
    willet$ mkdir /etc/security/audit/audubon.2
    
    1. アプリケーションマネージャをクリックして「システム管理 (System_Admin)」フォルダをダブルクリックし、さらに「マウント・ポイントの設定 (Set Mount Points)」アクションをダブルクリックします。

    2. vfstab(4) ファイルにマウント先を入力します。

      willetvfstab ファイルの一部は次のようになります。

      egret:/etc/security/audit/egret - /etc/security/audit/egret nfs - yes bg,soft,nopriv
      audubon:/etc/security/audit/audubon.2 - /etc/security/audit/audubon.2 nfs - yes nopriv

監査ファイルシステムの空き領域を予約する方法

  1. ラベル admin_low でセキュリティ管理者になって、audit_control(4) ファイルに予約する空き領域の値 (minfree しきい値)を入力します。

    1. アプリケーションマネージャで「システム管理 (System_Admin)」フォルダを開きます。

    2. 「監査制御 (Audit Control)」アクションをダブルクリックします。

  2. minfree: 行に 10 から 20 までの数値を入力します。

    dir:/var/audit
    flags:
    minfree:20
    naflags:
  3. 内容を保存してエディタを終了します。

監査ファイルの保存場所を指定する方法

  1. ラベル admin_low でセキュリティ管理者になって、audit_control ファイルに監査ファイルの保存場所を入力します。

    1. アプリケーションマネージャで「システム管理 (System_Admin)」フォルダを開きます。

    2. 「監査制御 (Audit Control)」アクションをダブルクリックします。

  2. 最初にインストールしたワークステーションで、そのローカル監査ファイルシステムを dir: 行に入力します。

    NIS+ ルートマスター grebeaudit_control ファイルは次のようになります。

    dir:/etc/security/audit/grebe/files
    flags:
    minfree:20
    naflags:
  3. 監査ファイルサーバーのインストールと設定がすでに完了している場合は、dir: のエントリに、マウント済みファイルシステム名とその最上位のディレクトリ files を追加します。

    マウント済みファイルシステムは、ワークステーションのローカルファイルシステムの前に入力します。

    dir:/etc/security/audit/egret/files
    dir:/etc/security/audit/egret.1/files
    dir:/etc/security/audit/grebe/files
    flags:
    minfree:20
    naflags:
  4. 内容を保存してエディタを終了します。

  5. セキュリティ管理者になって、admin_high プロファイルシェルで audit -s コマンドを実行します。すると、監査デーモンにより audit_control ファイルがもう一度読み込まれ、監査レコードが指定のディレクトリに書き込まれます。


    $ audit -s
    

    監査レコードはデフォルトで /var/audit に保存されますが、この処理によって、 audit_control ファイルに入力した最初のディレクトリに保存されるようになります。

監査フラグを設定する方法

  1. ラベル admin_low でセキュリティ管理者になって、audit_control(4) ファイルにシステム全体の監査フラグを入力します。

    1. アプリケーションマネージャで「システム管理 (System_Admin)」フォルダを開きます。

    2. 「監査制御 (Audit Control)」アクションをダブルクリックします。

  2. ユーザーアクションを原因としないイベントを監査する場合は、naflags: 行に na クラスを入力します。

    dir:/etc/security/audit/egret/files
    dir:/etc/security/audit/egret.1/files
    dir:/etc/security/audit/grebe/files
    flags:
    minfree:20
    naflags:na
    
  3. ワークステーションでユーザーレベルのイベントを監査する場合は、flags: 行にその他のクラスを入力します。

    dir:/etc/security/audit/egret/files
    dir:/etc/security/audit/egret.1/files
    dir:/etc/security/audit/grebe/files
    flags:lo,ad,-all,^-fc
    minfree:20
    naflags:na

    監査フラグの各フィールドの構文については、audit_control ファイルの例」を参照してください。

  4. 内容を保存してエディタを終了します。


    注 -

    分散システムでは、audit_control ファイルの監査フラグはネットワーク上の全ワークステーションで同じにします。ファイルのマスターコピーをネットワーク上のすべてのワークステーションに配布する手順については、「監査構成ファイルをネットワーク上の各ワークステーションに配布する方法」を参照してください。


例外ユーザー情報を設定する方法

    ラベル admin_low でセキュリティ管理者になって、audit_user(4) ファイルのシステム全体の監査フラグに例外ユーザー情報 (システム全体の設定とは異なった条件で監査を行うユーザーの情報) を入力します。

    1. アプリケーションマネージャで「システム管理 (System_Admin)」フォルダを開きます。

    2. 「ユーザー監査 (Audit Users)」アクションをダブルクリックします。

    3. ユーザー例外値を入力し、内容を保存してエディタを終了します。

    次の例では、スーパーユーザー (root) のログインとログアウト (lo) は監査されますが、スーパーユーザーによるファイル作成 (fc) は、システム全体が監査されている場合でも監査されません。jane のエントリは、audit_control ファイルに規定されたフラグのうち成功した file_read イベント以外のすべてのイベントを監査することを示しています。ヌルイベント no は監査されません。

    # User Level Audit User File
    #
    # File Format
    #
    #       username:always:never
    #
    root:lo:no,fc
    jane:all,^+fr:no
    

監査障害を警告する方法

  1. ラベル admin_low でシステム管理者になって、Aliases データベースに監査障害の警告メールを送るエイリアス名を入力します。

    1. アプリケーションマネージャで「Solstice アプリケーション (Solstice_Apps)」フォルダを開きます。

    2. 「データベース・マネージャ (Database Manager)」をダブルクリックします。

    3. 「NIS+」、「別名 (Aliases)」の順に選択して、Return キーを押します。

  2. 監査障害をメンバーに通知する audit_warn(1M) というエイリアスを追加します。

    次の audit_warn エイリアスは、監査サブシステムの調査が必要な場合にセキュリティ管理者およびシステム管理者に電子メールを送ります。

    Alias: audit_warn
    Expansion: secadmin@grebe,admin@grebe
    

常時監査ポリシーを設定する方法

  1. ラベル admin_low でセキュリティ管理者になって、audit_startup(1M) ファイルに常時監査ポリシーを入力します。

    1. アプリケーションマネージャで「システム管理 (System_Admin)」フォルダを開きます。

    2. 「監査の開始 (Audit Startup)」アクションをダブルクリックします。

  2. ポリシーオプション付きの auditconfig(1M) コマンドを呼び出すスクリプトを作成します。

    次の例の audit_startup(1M) スクリプトは、ACL (アクセス制御リスト) を監査レコードに追加し、ワークステーションの監査ファイルシステムがいっぱいになるとワークステーションを停止し、起動時に現在の監査ポリシーを標準出力します。

    #!/bin/sh
    auditconfig -setpolicy +slabel,+acl
    auditconfig -setpolicy +ahlt
    auditconfig -getpolicy
  3. 内容を保存してエディタを終了します。


    注意 - 注意 -

    評価済みの構成で監査を実行する場合、cnt ポリシーを有効にすることはできません。また、ahlt ポリシー (デフォルト) を無効にすることはできません。


監査構成ファイルをネットワーク上の各ワークステーションに配布する方法

  1. インストール中、ラベル admin_low でスーパーユーザーになって、最初にインストールされたワークステーションに、サイト用にカスタマイズした監査構成ファイルのコピーを置くディレクトリを作成します。

    このディレクトリには、カスタマイズした audit_controlaudit_useraudit_startupaudit_warn の各ファイルを置きます。イベントとクラスの対応関係を変更している場合には、audit_event ファイルと audit_class ファイルもこのディレクトリに置きます。audit_data ファイルはここには置きません。

    ネットワーク上の最初のワークステーション grebe の場合、次のようにします。


    # mkdir /export/home/tmp
    
  2. 修正したファイルを /etc/security ディレクトリから /export/home/tmp ディレクトリへコピーします。


    # cp /etc/security/audit_control /export/home/tmp/audit_control
    # cp /etc/security/audit_user /export/home/tmp/audit_user
    # cp /etc/security/audit_startup /export/home/tmp/audit_startup
    # cp /etc/security/audit_event /export/home/tmp/audit_event
    
  3. テープまたはフロッピーディスク装置を割り当てます。

    これについては、「デバイスの割り当てと割り当て解除の方法」の手順に従います。

  4. tar(1) コマンドを実行して /export/home/tmp ディレクトリの内容をテープまたはフロッピーディスクへコピーします。

    1. テープにコピーするには、次のコマンドを入力します。


      # cd /export/home/tmp
      # tar cv audit_control audit_user audit_startup audit_event
      
    2. フロッピーディスクにコピーするには、次のコマンドを入力します。


      # cd /export/home/tmp
      # tar cvf /dev/diskette ¥
      audit_control audit_user audit_startup audit_event
      
  5. テープまたはフロッピーディスク装置の割り当てを解除し、指示に従います。

    これについては、「デバイスの割り当てを解除する方法」の手順に従います。

  6. ラベル admin_low でスーパーユーザーになって、新しいワークステーションを構成するごとに、テープまたはフロッピーディスクから新しいワークステーションの正しいディレクトリへファイルをコピーします。

    1. 新しいファイルのディレクトリを用意します。


      # cd /etc/security
      # mv audit_control audit_control.orig
      # mv audit_startup audit_startup.orig
      # mv audit_warn audit_user.orig
      # mv audit_event audit_event.orig
      
    2. ラベル admin_low で適切なデバイスを割り当てます。

      ここで、「デバイスの割り当てと割り当て解除の方法」の手順に従います。

      1. テープからコピーするには、次のコマンドを入力します。


        # tar xv audit_control audit_user audit_startup audit_event
        
      2. フロッピーディスクからコピーするには、次のコマンドを入力します。


        # tar xvf /dev/diskette ¥
        audit_control audit_user audit_startup audit_event
        
    3. デバイスの割り当てを解除します。

      ここで、「デバイスの割り当てを解除する方法」の手順に従います。

  7. ラベル admin_low でセキュリティ管理者になって、リモート監査ファイルシステムのあるワークステーション、ローカル監査ファイルシステムのあるワークステーションで、それぞれの audit_control ファイルを修正します。

デバイスの割り当てと割り当て解除の方法

デバイスの割り当てと割り当て解除は、デバイス割り当てマネージャで行います。

  1. 要求された役割とラベルを指定したワークスペース内で、フロントパネルのスタイルマネージャアイコンの上にある三角形をマウスの左ボタンでクリックします。

    「ツール (Tools)」サブパネルが表示されます。

  2. デバイス割り当てマネージャアイコンを 1 回クリックします。

    Graphic
  3. 割り当てるデバイスをダブルクリックします。

    mag_tape_0 では、テープデバイスが割り当てられます。floppy_0 では、フロッピーディスクが割り当てられます。

  4. ラベルビルダーが表示されたら、「了解 (OK)」をクリックします。

    読み込んだファイルは、admin_low とラベル付けされます。

  5. 表示されるウィンドウの指示に従います。

デバイスの割り当てを解除する方法

  1. デバイス割り当てマネージャが割り当てられているワークスペースへ移動します。

  2. デバイスをダブルクリックして割り当てを解除します。

    割り当てを解除するデバイスを一覧表示したウィンドウが現れます。

  3. 表示に従ってドライブからテープまたはフロッピーディスクを取り出し、適切なラベルを付けます。

  4. Return キーを押してウィンドウを終了します。

  5. 左上のボタンをクリックして「閉じる (Close)」を選択し、「デバイス割り当てマネージャ (Device Manager)」ウィンドウを閉じます。