VirtualBoxで実行されるCentOS 7を設定して、監査ログをFreeBSD 10.3ホストに送信しようとしています。理想的にはFreeBSDのログを受けたいです。auditdistd(8)
しかし、今はnetcatを使ってこれを達成できるようにしたいです。
私の問題は、netcatがデータを取得できないことです。
詳細
- これを実行すると、
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
設定
ネットワーク設定
- CentOSとFreeBSDはホスト専用ネットワークに接続されています。私は彼らに次のIPを割り当てました。
- セントOS:192.168.56.101
- FreeBSD: 192.168.56.1
FreeBSDのインストール
私はnetcatにポート60でリッスンするように依頼しました。
nc -lk 60
接続が有効です。nc 192.168.56.1 60
CentOSを使用してFreeBSDにデータを送信できます。
CentOSの設定
カーネルバージョンは
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
。Linux Auditのユーザースペースバージョンは2.6.6です。
auditdが実行中で、積極的にログインしています
/var/log/audit.log
。の監査ルールがうまく
/etc/audit/rules.d/
構成されています。構成は
/etc/audisp/audisp-remote.conf
次のとおりです。remote-server = 192.168.56.1 port = 60 local_port = any transport = tcp mode = immediate
/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
以下は修正例です。公式リポジトリ(リンク)。
内容は次のとおりです
/etc/audisp/audispd.conf
。q_depth = 150 overflow_action = SYSLOG priority_boost = 4 max_restarts = 10 name_format = HOSTNAME
必要に応じて詳細をお知らせします。
答え1
成功のためにここにあるすべてが必要かどうかはわかりません。それにもかかわらず、設定は機能し、FreeBSDでnetcatを使用してLinux監査ログを受信できました。
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
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
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
FreeBSD
/etc/hosts.allow
::ALL : ALL : allow
これが必要かどうかわからない+おそらく悪い考えだろう。
それはすべてです。これでnc -lk 60
FreeBSDとservice auditd restart
CentOSで実行するだけです。しかし、私の場合、netcatは各レコードを少なくとも2回受信/印刷するようですが、これはやや珍しいようです。