PCリンクスでは、パソコンの設定・修理から組込み機器の受託開発まで承ります。

 

VPNルーターのログをLinuxサーバで記録

前回の記事で、”Web Assistance”機能を使用しました。

6回目の今回は、VPNルーターのログをLinuxサーバで記録して、リアルタイムに表示します。
※ちなみに当方の環境では、サーバ上に約1ヶ月分のログが保管されます。

RTX1100のログは、最大 500 件(行)保持することができます。最大数を越えた場合は、発生時刻の古いものから消去されていきます。トラブルが発生した時などは、通信ログ情報を頼りに、解析を進めることになるのですが、如何せん、500件では記録容量が少なすぎ、思うように解析を進めることができません。

そこで、すでに設置済みのLinuxサーバにVPNルーターのログをsyslogで送り、サーバ側で記録するようにします。“tail-f”コマンドを使用すると、ログ情報をリアルタイムに表示できますので、効率的に解析を進めることができるようになります。

 

Linuxサーバの設定

Linuxサーバは、ローカル環境に設置済みの”CentOS“(Ver5.8)を使用します。

RTX1100のログは、単独のログファイル(rtx1100.log)に記録させるようにします。
ルーター側でファシリティ(ログの分類を示す名前)を指定して、ログをサーバへ受け渡しすることで、サーバ側で単独のログファイルに分類して出力させることが可能となります。今回は、ファシリティ = local3 を使用することとします。
※local0 – local7のファシリティは、任意の用途に自由に使用できますので、空いている値を使用します。
※ルーター側でファシリティを指定しないと、サーバのデフォルト値である ’user’ が適用され、他のアプリケーションのログと混じってしまいますので、RTX1100単独のログファイルとはなりません。必ずlocal0 – local7を指定するようにします。

サーバ側は、syslog.confファイルの設定を変更することで、ルーター専用のログファイルとしてに出力させることが可能となります。この時、2重記録を避けるためにmessagesファイルへはログを記録させないようにします。

[root@ms01 ~]# pico /etc/syslog.conf
# RTX1100のログをmessagesへ出力しないようにする
*.info;mail.none;authpriv.none;cron.none;kern.none;local3.none  	/var/log/messages

(中略)

# VPNルーター( RTX1100)のログを記録する
Local3.*                                                /var/log/rtx1100.log

次に、/var/log/rtx1100.log の空ファイルを用意しておきます。

[root@ms01 ~]# touch /var/log/rtx1100.log

次に、syslogの起動オプションを変更し、外部からログを受け付けるようにします。(初期値はログを受け付けません)

[root@ms01 ~]# pico /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/logrotate.d/syslogを修正して、追加したrtx1100.logログのローテーションを行うようにします。

/var/log/messages /var/log/secure /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
    endscript
}

(以下は省略)

最後に、syslogを再起動させる。

[root@ms01 ~]# /etc/rc.d/init.d/syslog restart
カーネルロガーを停止中:                                    [  OK  ]
システムロガーを停止中:                                    [  OK  ]
システムロガーを起動中:                                    [  OK  ]
カーネルロガーを起動中:                                    [  OK  ]

現在のsyslogd が、どのようなオプションで起動しているかを確認しておきます。“-r”で起動していればOKです。

[root@ms01 ~]# ps -ef | grep syslog
root     11564     1  0 13:20 ?        00:00:00 syslogd -r -m 0

 

VPNルーターの設定

Linuxサーバ側の対応が完了しましたので、VPNルーター側の設定を変更します。

syslogを受け取るLinuxサーバのIPアドレスを指定します。

[RTX]# syslog host 192.168.0.xxx

syslogファシリティ(ログの種別)を”local3″に設定します。

[RTX]# syslog facility local3

IPアドレスを記録時、 DNSサーバに問い合せ(resolv)て、 ホスト名に変換する機能をonします。

[RTX]# dns syslog resolv on

最後に設定を保存します。

[RTX]# save
セーブ中... CONFIG0 終了

 

LinuxサーバでVPNルーターのログを表示

サーバ上に記録したログを表示させます。VPNルーターのログ情報は、リアルタイム表示されます。

[root@ms01 ~]# tail -f /var/log/rtx1100.log
May  1 15:46:20 192.168.0.1 LAN1 Passed at IN(99) filter: UDP 192.168.0.xxx:33993 > 192.168.0.255:4114
May  1 15:46:28 192.168.0.1 [INSPECT] PP[01][out][107] UDP 192.168.0.xxx:123 > 219.117.196.238:123 (2012/05/01 15:45:58)
May  1 15:46:35 192.168.0.1 LAN1 Passed at IN(99) filter: UDP 192.168.0.xxx:25507 > 111.221.77.165:40013
May  1 15:46:36 192.168.0.1 LAN1 Passed at IN(99) filter: UDP 192.168.0.xxx:32872 > 192.168.0.255:4117
May  1 15:46:36 192.168.0.1 LAN1 Passed at IN(99) filter: UDP 192.168.0.xxx:49557 > 192.168.0.255:4114
May  1 15:46:36 192.168.0.1 LAN1 Passed at IN(99) filter: UDP 192.168.0.xxx:48438 > 192.168.0.255:4117
May  1 15:46:36 192.168.0.1 LAN1 Passed at IN(99) filter: UDP 192.168.0.xxx:53046 > 192.168.0.255:4114
May  1 15:46:43 192.168.0.1 LAN1 Passed at IN(99) filter: UDP 192.168.0.xxx:ntp > ntp-b3.nict.go.jp:ntp

 

以上で、「VPNルーターのログをLinuxサーバで記録」を終了します。

コメント

コメントを受け付けておりません。