Cisco 機器のログを rsyslog で取得する方法

複数の機器を管理していいたらログを一元管理したくなります。2,3台ならまだしも、10台の機器にいちいちリモートアクセスしてログを見るなんてめんどくさいったらありゃしない。今回はCiscoのルータ・スイッチのログをLinuxサーバに出力する方法をご紹介します。

1.サーバ側の設定

サーバ側では外部からのログ転送を受け入れるようrsyslogを設定変更する必要があります。rsyslogではTCP/UDPの514番ポートをリッスンしてログを取得するのでファイアウォール(iptables)の設定を行っている場合は事前にポートの解放を行いましょう。ポートのリスン状態はnetstat -antuで確認できます。

※iptablesの許可設定(iptables使ってない場合は不要です。)

[root@coogle rsyslog.d]# iptables -A INPUT  -p ucp -d サーバIP --dport 514 -j ACCEPT
[root@coogle rsyslog.d]# iptables -A OUTPUT -p ucp -s サーバIP --sport 514 -j ACCEPT

1-1.ネットワーク機器からのログの通信を受け付けるため、/etc/rsyslog.confの以下パラメータのコメントを外します。

[root@coogle rsyslog.d]# vi /etc/rsyslog.conf
# Provides UDP syslog reception 
$ModLoad imudp 
$UDPServerRun 514

1-2.ログを取得する為の設定ファイルを作成します。今回はデフォルトでinclude設定が行われている/erc/rsyslog.d/配下ログ取得用ファイルを作成します。rsyslog.confにエントリを追記する方法でも問題ありません。

[root@coogle rsyslog.d]# vi /etc/rsyslog.d/任意の名前.conf
local3.* /var/log/10-isp.log

上記の意味は、ファシリティ「local3」で受信したルータのログをログレベルに関わらず、すべて/var/log/10-isp.logに書き込む。という意味になります。この指定したログファイルはrsyslog再起動時に自動的に作成されます。

1-3.編集完了後、rsyslogdを再起動しましょう。

[root@ ~]# /etc/init.d/rsyslog restart
Shutting down system logger:                               [  OK  ]
Starting system logger:                                    [  OK  ]

2.Cisco機器側の設定

Cisco機器では外部に対してログを送信するよう設定を加える必要があります。ファシテリティはサーバ側で設定したrsyslog.confのものと必ず一致させる必要があります。

Catalyst 3650の場合

Tagutagu_l3sw(config)#logging on
Tagutagu_l3sw(config)#logging host 192.168.1.10
Tagutagu_l3sw(config)#logging trap debugging
Tagutagu_l3sw(config)#logging facility local3

C1841の場合

Tagutagu_ro(config)#logging on
Tagutagu_ro(config)#logging host 192.168.1.10 transport udp port 514
Tagutagu_ro(config)#logging trap debugging※
Tagutagu_ro(config)#logging facility local3

※サンプル設定ではtrapのレベルdebuggingとなっていますが、非常に大量のログ書き込みが起こる可能性がありますので用途に応じて書き変えてください。

Syslogレベル参考

levelキーワード
レベル
説明
Syslog定義

emergencies

0

システムが不安定

LOG_EMERG

alerts

1

ただちに対応が必要

LOG_ALERT

critical

2

クリティカル

LOG_CRIT

errors

3

エラー

LOG_ERR

warnings

4

警告

LOG_WARNING

notifications

5

正常だが、要注意

LOG_NOTICE

informational

6

単なる情報メッセージ

LOG_INFO

debugging

7

デバッグ メッセージ

LOG_DEBUG

設定は以上です。

Copyright © 2021 たぐたぐ.com. All rights reserved.