注意: # や % の意味が分からない人は 用語 を参照してください。
syslog は NetBSD に入っているものをそのまま使います。 pkgsrc から syslog をインストールは"しません"。
ログは全部あつめましょう。
指定されたサーバ(以下、ログ取りサーバ)へ全部とばしましょう(w)。
例: ログ取りサーバが log という名前 [/etc/syslog.conf] *.* @logIP も直書きで OK。
例: ログ取りサーバが 192.168.0.1 [/etc/syslog.conf] *.* @192.168.0.1
指定されたサーバ(以下、ログ取りサーバ)のほうです。 全部とばされてくる人です(w)。
2つ設定が必要です。 (1) /etc/rc.conf で syslogd のオプションを変更します。 (2) /etc/syslog.conf で保存するファイルを指定します。
(1) は syslogd のデフォルトは syslogd -s (secure mode)で UDP port を開いていません。 syslogd は、この -s オプションをつけないと UDP port を開きます。
また、syslogd は tcp wrapper でアクセス制御をしています。 デフォルトでは hosts.deny で ALL: ALL のはずですから、 きちんと必要なクライアント相手に対してだけ syslogd を許可して下さい。
例: /var/log/messages に記録。
[/etc/syslog.conf] *.* /var/log/messages注: 飛ばしてはいけません(w)。 無限ループしちゃうじゃないですか!
もちろん /var/log ディレクトリは、 十分巨大なファイルシステム上にないといけません。 ファイル名やディレクトリ名は適宜変更して下さい( 管理者の指定にしたがいましょう)。
次に /etc/rc.conf を編集します。
syslogd=yes syslogd_flags=""と変更し syslogd をリスタートしてください。
# /etc/rc.d/syslogd restart
必ず netstat で syslog port が開いているか確認して下さい。
# netstat -na |grep 514 udp 0 0 *.514 *.* udp6 0 0 *.514 *.*
fstat でも確認すると、なお良いです。
# fstat | grep syslogd|grep : root syslogd 7553 6* internet6 dgram udp c33185a0 *:514 root syslogd 7553 16* internet dgram udp c33145e8 *:514
pkgsrc に syslog-ng (SYSLOG Next Generation: /usr/pkgsrc/sysutils/syslog-ng) というのもありますが、 あまりに多機能過ぎて、 こんなにすごい機能がいる気がしない…ので、 使ってません。
Copyright (C) 1993-2022 Ken'ichi Fukamachi mail:< fukachan at fml.org >