ヤマハルータRTX1200のログを、syslogサーバにより記録する。
尚、サービス名は「rsyslog」。
インストール
Ubuntu 16.04ではrsyslogは標準でインストールされているのでインストール不要。
syslog(UDP)を受け付ける設定
/etc/rsyslog.conf
ファイルの下記2行をコメントアウトし有効にする。
module(load="imudp")
input(type="imudp" port="514")
作成するログファイルの設定
syslogにはログ内容を分類するためのファシリティ(facility)という属性がある。この属性を使うとsyslogサーバ側でログを分類して保存できる。なお、ユーザが任意に利用できるファイシリティはlocal0〜local7まで。
/etc/rsyslog.d/
フォルダの下に、下記内容の70-rtxlog.conf
ファイルを作成。
local0.* -/var/log/rtxlog.log
rsyslogサービスの再起動
$ sudo service rsyslog restart
テスト用のログを作成
$ sudo logger -p local0.info "Test local0"
ログの確認
$ sudo tail /var/log/rtxlog.log
ログのローテーションを設定
syslog出力されるファイルは、logrotateによって定期的にローテート、圧縮される。
この設定は/etc/logrotate.d/rsyslog
に書かれているので、下記行を追加。
⋮
⋮(略)
⋮
/var/log/cron.log
/var/log/debug
/var/log/messages
/var/log/rtxlog.log <=== この行を追加
{
rotate 4
weekly
missingok
notifempty
compress
delaycompress
sharedscripts
postrotate
invoke-rc.d rsyslog rotate > /dev/null
endscript
}
RTX1200の設定
GUIで、管理者向けトップページ > 保守 > SYSLOGの管理 から、SYSLOGサーバのアドレスと、記録するログの種類(INFO,NOTICE)を指定する(下記画面)。
下記コマンドでファイシリティを指定。
syslog facility local0
以上で、syslogサーバにログが記録される。
ログの調整
NOTICEの設定をONにすると、デフォルトでは下記のように[INSPECT]のログが多数記録される。
これは動的フィルタで開放した通信ポートを閉じているログである。
Oct 12 12:18:50 rtx1200 [INSPECT] PP[01][out][200081] UDP 192.168.1.1:10021 > 202.219.2.39:53 (2016/10/12 12:18:44)
Oct 12 12:19:51 rtx1200 [INSPECT] PP[01][out][200082] TCP 192.168.1.153:62305 > 111.221.29.254:443 (2016/10/12 12:18:44)
Oct 12 12:20:32 LAN1 Rejected at IN(100002) filter: UDP 192.168.1.163:138 > 192.168.1.255:138
Oct 12 12:21:43 rtx1200 [INSPECT] PP[01][out][200081] UDP 192.168.1.1:10952 > 202.248.130.151:53 (2016/10/12 12:21:37)
この[INSPECT]ログを収集したくない場合は、下記の様に ip filter dynamic 設定の後ろにsyslog=off
を追加する。これは、GUIのフィルタ設定からでもOFFする事ができる。
ip filter dynamic 200081 * * domain syslog=off
ip filter dynamic 200082 * * www syslog=off
補足
ログファイルを手動で (rm コマンドなど)削除した場合、それ以後は syslog はログファイルの書き込みを行わない。(ログファイルが無いから)
その場合は、rsyslogサービスを再起動する事で再開する。
参考
- 「ヤマハルータで挑戦 企業ネットをじぶんで作ろう」p202〜p215 谷山亮治著 日経BP社発行
- syslog 設定方法 | Yamahaルータのsyslog設定
- ヤマハルータでログを取得する(syslog機能)公開 : マロンくん.NET
- RTXルータでパケットフィルタのログを確認する : 3流プログラマのメモ書き
- syslogの使い方をあらためて整理してみた – into the void
- 正しいログの削除の仕方 – HDE BLOG
- http://www.rtpro.yamaha.co.jp/RT/FAQ/Syslog/
- Linuxコマンド集 – 【 scp 】 リモート・マシン間でファイルをコピーする:ITpro
コメント