rsyslogでネットワーク機器のログ管理
raspberry pi2を使って我が家のネットワーク機器3台(A,B,C)のログを一括管理する。
raspbianではデフォルトでrsyslogが導入されているので、設定ファイルの編集から
/etc/rsyslog.confを編集。
# Provides UDP syslog receptio
#$ModLoad imudp.so *先頭の#を外す
#$UDPServerRun 514 *先頭の#を外す
これでUDPの514ポート経由でログを受け入れるようになる。
ちなみに直下にTCPの記述がありTCP経由に関しても同様の設定で可能
次に受信したログを送信先毎にログファイルに書き出す設定をどうコンフィグ内に追記
###RULUS###の後に
:fromhost-ip, isequal, "機器AのIPアドレス" /var/log/Aの機器名.log
& ~
:fromhost-ip, isequal, "機器BのIPアドレス" /var/log/Bの機器名.log
& ~
:fromhost-ip, !isequal, "機器CのIPアドレス" /var/log/Cの機器名.log
& ~
上記、設定で機器毎にログファイルが作成される。ログファイルはログを受信した時点で自動で作成されとても便利。ちなみに&~は直前のログを破棄するという記述の為、機器Bのログに機器Aのログは混在しない