ヤマハRTXシリーズのSYSLOGをLinuxサーバで受信する

2010.07.02.金
Server技術

トマト@ネットワーク云々担当です。

ヤマハルータ、RTXシリーズのSYSLOGを、Linuxサーバで受信し、ログファイルとして出力する方法です。

ルータ本体に記録出来るログは、それぞれ以下の通りです。

RTX1000 最大500行
RTX1100 最大500行
RTX1200 最大10,000行
RTX1500 最大500行
RTX3000 最大500行


ルータ側で出力出来るログは、3種類あります。

・notice(IPフィルタ等で落としたパケット情報等)
・info(ISDNの呼制御情報)
・debug(ISDNおよび、PPPのデバッグ情報等)
 ※大量のデバッグメッセージが出力されます



■検証環境
ルータ:RTX1100
サーバ:CentOS release 5.5

ルータ側IPアドレス:192.168.1.1
サーバ側IPアドレス:192.168.1.100
※lan1側のローカル環境で接続しています

取得ログ  :notice
ファシリティ:local5
※サーバの「/etc/syslog.conf」ファイル内で、使用されていないファシリティ番号を使用

■ルータ側設定

# syslog notice on
# syslog host 192.168.1.100
# syslog facility local5
# save



■サーバ側設定
/etc/syslog.conf

*.info;mail.none;authpriv.none;cron.none;local5.none /var/log/messages
※上記を追記しておかないと、messages側にもログが出力されてしまいます

# RTX1100
local5.* /var/log/rtx1100.log


空ファイルを作成します。
# touch /var/log/rtx1100.log

外部からのSYSLOGを受信出来るようにします。
/etc/sysconfig/syslog

# Options to syslogd
# -m 0 disables 'MARK' messages.
# -r enables logging from remote machines
# -x disables DNS lookups on messages recieved with -r
# See syslogd(8) for more details
SYSLOGD_OPTIONS="-r -m 0"

※「/etc/init.d/syslog」から読み込まれます

ログのローテーションに追加します。
/etc/logrotate.d/syslog

/var/log/messages /var/log/secure /var/log/maillog /var/log/spooler /var/log/boot.log /var/log/cron /var/log/rtx1100.log {
sharedscripts
postrotate
/bin/kill -HUP cat /var/run/syslogd.pid 2> /dev/null 2> /dev/null || true
/bin/kill -HUP cat /var/run/rsyslogd.pid 2> /dev/null 2> /dev/null || true
endscript
}


syslogを再起動します。
# /etc/init.d/syslog restart

SYSLOGが受信出来ているか確認します。
# tail -f /var/log/rtx1100.log

SYSLOGを受信出来ていれば、完了です。
受信出来ない場合は、フィルタ等を確認しましょう。