詳細

詳細

VirtualBoxで実行されるCentOS 7を設定して、監査ログをFreeBSD 10.3ホストに送信しようとしています。理想的にはFreeBSDのログを受けたいです。auditdistd(8)しかし、今はnetcatを使ってこれを達成できるようにしたいです。

私の問題は、netcatがデータを取得できないことです。

詳細

  1. これを実行すると、service auditd status次のような結果が得られます。
Redirecting to /bin/systemctl status  auditd.service
auditd.service - Security Auditing Service
   Loaded: loaded (/usr/lib/systemd/system/auditd.service; enabled; vendor preset: enabled)
   Active: active (running) since Fri 2016-08-19 11:35:42 CEST; 3s ago
  Process: 2216 ExecStartPost=/sbin/augenrules --load (code=exited, status=1/FAILURE)
 Main PID: 2215 (auditd)
   CGroup: /system.slice/auditd.service
           ├─2215 /sbin/auditd -n
           └─2218 /sbin/audispd

Aug 19 11:35:42 hephaistos audispd[2218]: plugin /sbin/audisp-remote was restarted
Aug 19 11:35:42 hephaistos audispd[2218]: plugin /sbin/audisp-remote terminated unexpectedly
Aug 19 11:35:42 hephaistos audispd[2218]: plugin /sbin/audisp-remote was restarted
Aug 19 11:35:42 hephaistos audispd[2218]: plugin /sbin/audisp-remote terminated unexpectedly
Aug 19 11:35:42 hephaistos audispd[2218]: plugin /sbin/audisp-remote was restarted
Aug 19 11:35:42 hephaistos audispd[2218]: plugin /sbin/audisp-remote terminated unexpectedly
Aug 19 11:35:42 hephaistos audispd[2218]: plugin /sbin/audisp-remote was restarted
Aug 19 11:35:42 hephaistos audispd[2218]: plugin /sbin/audisp-remote terminated unexpectedly
Aug 19 11:35:42 hephaistos audispd[2218]: plugin /sbin/audisp-remote has exceeded max_restarts
Aug 19 11:35:42 hephaistos audispd[2218]: plugin /sbin/audisp-remote was restarted

設定

ネットワーク設定

  1. CentOSとFreeBSDはホスト専用ネットワークに接続されています。私は彼らに次のIPを割り当てました。
  • セントOS:192.168.56.101
  • FreeBSD: 192.168.56.1

FreeBSDのインストール

  1. 私はnetcatにポート60でリッスンするように依頼しました。

     nc -lk 60
    

接続が有効です。nc 192.168.56.1 60CentOSを使用してFreeBSDにデータを送信できます。

CentOSの設定

  1. カーネルバージョンは4.7.0-1.el7.elrepo.x86_64 #1 SMP Sun Jul 24 18:15:29 EDT 2016 x86_64 x86_64 x86_64 GNU/Linux

  2. Linux Auditのユーザースペースバージョンは2.6.6です。

  3. auditdが実行中で、積極的にログインしています/var/log/audit.log

  4. の監査ルールがうまく/etc/audit/rules.d/構成されています。

  5. 構成は/etc/audisp/audisp-remote.conf次のとおりです。

     remote-server = 192.168.56.1
     port = 60
     local_port = any
     transport = tcp
     mode = immediate
    
  6. /etc/audisp/plugins.d/syslog.conf:とには2つの基本ファイルがあり、どちらaf_unix.confもアクティブではありません。追加しましたが、af-remote.conf次のようになります。

     # This file controls the audispd data path to the
     # remote event logger. This plugin will send events to
     # a remote machine (Central Logger).
    
     active = yes
     direction = out
     path = /sbin/audisp-remote
     type = always
     #args =
     format = string
    

以下は修正例です。公式リポジトリ(リンク)

  1. 内容は次のとおりです/etc/audisp/audispd.conf

     q_depth = 150
     overflow_action = SYSLOG
     priority_boost = 4
     max_restarts = 10
     name_format = HOSTNAME
    

必要に応じて詳細をお知らせします。

答え1

成功のためにここにあるすべてが必要かどうかはわかりません。それにもかかわらず、設定は機能し、FreeBSDでnetcatを使用してLinux監査ログを受信できました。

  1. CentOS /etc/audisp/audisp-remote.conf::

    remote_server = 192.168.56.1
    port = 60
    local_port = 60
    transport = tcp
    mode = immediate
    queue_depth = 200
    format = managed
    
  2. CentOS /etc/audisp/plugins.d/au-remote.conf::

    active = yes
    direction = out
    path = /sbin/audisp-remote
    type = always
    args = /etc/audisp/audisp-remote.conf
    format = string
    
  3. CentOS /etc/audit/auditd.conf::

    local_events = yes
    log_file = /var/log/audit/audit.log
    # Send logs to the server.  Don't save them.
    write_logs = no
    log_format = RAW
    log_group = root
    priority_boost = 8
    num_logs = 5
    disp_qos = lossy
    dispatcher = /sbin/audispd
    name_format = hostname
    max_log_file = 6
    max_log_file_action = ROTATE
    action_mail_acct = root
    space_left = 75
    space_left_action = SYSLOG
    admin_space_left = 50
    admin_space_left_action = SUSPEND
    disk_full_action = SUSPEND
    disk_error_action = SUSPEND
    
    ##tcp_listen_port =
    tcp_listen_queue = 5
    tcp_max_per_addr = 1
    use_libwrap = yes
    ##tcp_client_ports = 1024-65535
    tcp_client_max_idle = 0
    
    enable_krb5 = no
    krb5_principal = auditd
    ##krb5_key_file = /etc/audit/audit.key
    distribute_network = no
    
  4. FreeBSD /etc/hosts.allow::

     ALL : ALL : allow
    

    これが必要かどうかわからない+おそらく悪い考えだろう。


それはすべてです。これでnc -lk 60FreeBSDとservice auditd restartCentOSで実行するだけです。しかし、私の場合、netcatは各レコードを少なくとも2回受信/印刷するようですが、これはやや珍しいようです。

関連情報