Go to main content
Oracle® Solaris 11.3 での監査の管理

印刷ビューの終了

更新: 2016 年 11 月
 
 

監査ファイルのためのリモートリポジトリを構成する方法

この手順では、1 つまたは複数の監査対象システムから監査レコードを受信して格納するためのリモートシステムである監査リモートサーバー (ARS) を構成します。次に、リモートサーバー上で監査デーモンをアクティブにします。

この構成は 2 つの部分から成ります。最初に、監査データをセキュアに転送するためのベースとなるセキュリティーメカニズム、つまり、KDC を構成します。2 番目に、監査対象システムと ARS の両方に監査サービスを構成します。この手順は、ARS と KDC が同じサーバー上に存在している、1 つの監査対象クライアントと 1 つの ARS を含むシナリオを示しています。より複雑なシナリオも同様に構成できます。最初の 4 つの手順では、KDC の構成について説明します。最後の手順では、監査サービスの構成について説明します。

始める前に

次を完了したことを確認します。

  1. サイトで KDC が構成されていない場合は、構成します。

    監査対象システムと ARS の両方が使用できるシステム上の KDC、各システムのホスト主体、および audit サービス主体が必要です。次の例は、KDC 構成の方針を示しています。

    arstore # kdcmgr -a audr/admin -r EXAMPLE.COM create master
    

    このコマンドは、管理主体 audr/admin を使用して EXAMPLE.COM レルム内にマスター KDC を作成し、そのマスター KDC を有効にして、Kerberos サービスを開始します。

  2. KDC が使用可能なことを確認します。

    詳細は、kdcmgr(1M) のマニュアルページを参照してください。

    # kdcmgr status
    
    KDC Status Information
    --------------------------------------------
    svc:/network/security/krb5kdc:default (Kerberos key distribution center)
    State: online since Wed Feb 29 01:59:27 2012
    See: man -M /usr/share/man -s 1M krb5kdc
    See: /var/svc/log/network-security-krb5kdc:default.log
    Impact: None.
    
    KDC Master Status Information
    --------------------------------------------
    svc:/network/security/kadmin:default (Kerberos administration daemon)
    State: online since Wed Feb 29 01:59:28 2012
    See: man -M /usr/share/man -s 1M kadmind
    See: /var/svc/log/network-security-kadmin:default.log
    Impact: None.
    
    Transaction Log Information
    --------------------------------------------
    
    Kerberos update log (/var/krb5/principal.ulog)
    Update log dump :
    Log version # : 1
    Log state : Stable
    Entry block size : 2048
    Number of entries : 13
    First serial # : 1
    Last serial # : 13
    First time stamp : Wed Feb 29 01:59:27 2012
    Last time stamp : Mon Mar 5 19:29:28 2012
    
    
    Kerberos Related File Information
    --------------------------------------------
    (Displays any missing files)
  3. KDC キータブファイルに audit サービス主体を追加します。

    KDC システム上で kadmin.local コマンドを入力することによって、この主体を追加できます。または、kadmin コマンドを使用し、パスワードを指定することによって、リモートから主体を追加できます。この例では、arstore システムが KDC を実行しています。

    # kadmin -p audr/admin
    
    kadmin: addprinc -randkey audit/arstore.example.com@EXAMPLE.COM
    
    kadmin: ktadd audit/arstore.example.com@EXAMPLE.COM
    
  4. 各監査対象システム上で、鍵を追加します。

    受信者と送信者は鍵を持っている必要があります。

    enigma # kclient
    
    .. Enter the Kerberos realm: 
    EXAMPLE.COM
    
    .. KDC hostname for the above realm: 
    arstore.example.com
    
    .. Will this client need service keys ? [y/n]: 
    y
    
  5. ARS 上で監査サービスを構成します。
    • Kerberos レルム内の任意の監査対象システムから監査レコードを受け入れる接続グループを作成して、名前を付けます。
      # auditconfig -setremote group create Bank_A
      

      Bank_A が接続グループです。hosts 属性が定義されていないため、このグループはすべての接続を受け入れます。つまり、これはワイルドカードグループです。audit_remote プラグインが正しく構成されているこの Kerberos レルム内の監査対象システムはすべて、この ARS に到達できます。

    • このグループへの接続を制限するには、このリポジトリを使用できる監査対象システムを指定します。
      # auditconfig -setremote group Bank_A "hosts=enigma.example.com"
      

      接続グループ Bank_A は現在、enigma システムからの接続のみを受け入れます。その他のどのホストからの接続も拒否されます。

    • このグループ内の監査ファイルが大きくなりすぎないようにするには、最大サイズを設定します。
      # auditconfig -setremote group Bank_A "binfile_fsize=4GB"
      
      # auditconfig -getremote
      Audit Remote Server
      Attributes: listen_address=;login_grace_time=30;max_startups=10;listen_port=0;
      Connection group: Bank_A (inactive)
      Attributes: binfile_dir=/var/audit;binfile_fsize=4GB;binfile_minfree=1;
      hosts=enigma.example.com;
  6. 監査対象システム上で監査サービスを構成します。

    ARS を指定するには、p_hosts 属性を使用します。

    enigma # auditconfig -setplugin audit_remote \
         active p_hosts=arstore.example.com
    
    enigma # auditconfig -getplugin audit_remote
    Plugin: audit_remote
    Attributes: p_retries=3;p_timeout=5;p_hosts=arstore.example.com;
  7. 監査サービスをリフレッシュします。

    監査サービスは、リフレッシュ時に監査プラグインの変更を読み取ります。

    # audit -s

    KDC は現在、監査対象システム enigma と ARS の間の接続を管理しています。

使用例 27  監査レコードの同じ ARS 上の異なるファイルの場所へのストリーム出力

この例では、手順にある例を拡張します。管理者は、2 つの接続グループを作成することによって、ARS 上のホストごとに監査レコードを分離します。

audsys1 からの監査ファイルは、この ARS 上の Bank_A の接続グループにストリーム出力されます。

arstore # auditconfig -setremote group create Bank_A

arstore # auditconfig -setremote group active Bank_A "hosts=audsys1" \
   "hosts=audsys1;binfile_dir=/var/audit/audsys1;binfile_fsize=4M;"

audsys2 からの監査ファイルは、Bank_B の接続グループにストリーム出力されます。

arstore # auditconfig -setremote group create Bank_B

arstore # auditconfig -setremote group active Bank_B \
"hosts=audsys2;binfile_dir=/var/audit/audsys2;binfile_fsize=4M;"

保守を容易にするために、管理者はその他の属性値を同様に設定します。

arstore # auditconfig -getremote
Audit Remote Server
Attributes: listen_address=;login_grace_time=30;max_startups=10;listen_port=0;

Connection group: Bank_A
Attributes: binfile_dir=/var/audit/audsys1;binfile_fsize=4M;binfile_minfree=1;
hosts=audsys1

Connection group: Bank_B
Attributes: binfile_dir=/var/audit/audsys2;binfile_fsize=4M;binfile_minfree=1;
hosts=audsys2
使用例 28  KDC の別のシステム上への ARS の配置

この例では、管理者は ARS を KDC の別のシステム上に配置します。最初に、管理者はマスター KDC を作成して構成します。

kserv # kdcmgr -a audr/admin -r EXAMPLE.COM create master

kserv # kadmin.local -p audr/admin

kadmin: addprinc -randkey \
audit/arstore.example.com@EXAMPLE.COM

kadmin: ktadd -k /var/user/root/krb5.keytab.audit \
     audit/arstore.example.com@EXAMPLE.COM

/tmp/krb5.keytab.audit ファイルを ARS (arstore) にセキュアに転送したあと、管理者はこのファイルを正しい場所に移動します。

arstore # chown root:root krb5.keytab.audit

arstore # chmod 600 krb5.keytab.audit

arstore # mv krb5.keytab.audit /etc/krb5/krb5.keytab

このファイルを書き換えるのではなく、管理者には、ARS 上で ktutil コマンドを使用して KDC の krb5.keytab.audit ファイルを arstore/etc/krb5/krb5.keytab ファイル内の既存の鍵とマージする方法もあります。

最後に、管理者は監査対象システム上で鍵を生成します。

enigma # kclient

.. Enter the Kerberos realm: EXAMPLE.COM

.. KDC hostname for the above realm: kserv.example.com

.. Will this client need service keys ? [y/n]: y