Tips記事
» 2001年07月04日 00時00分 UPDATE

ダイヤルアップルータのsyslogをサーバで一元管理させたい

[木田佳克,ITmedia]

 NATでインターネット上にサーバを公開している場合,ダイヤルアップルータへのアクセス状況はサーバから直接把握することができない。しかし,ダイヤルアップルータにsyslog記録を行える機能が搭載されていれば,次の方法でサーバ上でログを一元管理することが可能だ。

 まず最初に,syslogのログ記録内容を設定してファイル名を決める。ここではrouterというファイル名で記録させるようにした。

# vi /etc/syslog.conf

user.debug;user.notice;user.info /var/log/router ←追加する

 ログ記録を始めるには,あらかじめログファイル(ここでは,/var/log/router)を0バイトの状態で作成しておかなければならない。さらに,syslogの起動スクリプトを編集して外部(ルータ)からログを受け入れるようにパラメータ(-r)を加える。

# touch /var/log/router
# vi /etc/rc.d/init.d/syslog

# See how we were called.
case "$1" in
start)
echo -n "Starting system logger: "
# we don't want the MARK ticks
daemon syslogd -r -m 0

 設定し終えたらsyslogを再起動させて編集内容を反映させる。

# /etc/rc.d/init.d/syslog restart

 ここまでの設定では,「/var/log/router」ログファイルが容量肥大化の一途をたどってしまう。そこで,ログファイルの分割を行う定義ファイルを編集して,ほかのsyslogログファイル(messagesやmaillogなど)と同じく1週間ごとに切り替えするように設定しよう。次の5行を付け加えればよい。

# vi /etc/logrotate.d/syslog

/var/log/router {
postrotate
/usr/bin/killall -HUP syslogd
endscript
}

 最後にダイヤルアップルータの設定でsyslogをサーバに転送するようにしよう。ここではMN128での設定画面例だ。

画面
ここでは,syslog転送先のサーバを「SYSLOGホストアドレス」で指定している

 以上の操作で,次のようなログがrouterファイルに記録されるようになる。ログファイルの内容を詳しく知りたい人は,Linux How-Toを参考にしてほしい。

Jul4 14:17:01 192.168.0.1 PPP#0: LCP EQ received
Jul4 14:17:01 192.168.0.1 PPP#0: LCP EP sent
Jul4 14:17:28 192.168.0.1 IP#3: fnum=61 tx passed TCP from 192.168.0.200/80 to 203.139.xxx.xx/55532
Jul4 14:17:28 192.168.0.1 IP#3: fnum=61 tx passed TCP from 192.168.0.200/80 to 203.139.xxx.xx/55533

Copyright © ITmedia, Inc. All Rights Reserved.

注目のテーマ