NEC IXのsyslog設定

スポンサーリンク

NEC IXシリーズにおけるログ管理の方法についてまとめます。NEC IXはサブシステム単位でログ出力のseverity(重要度)を定義する事ができます。

設定まとめ

コマンド一覧

syslogに関するコマンド一覧は以下の通りです。

Router(config)# logging subsystem <subsystem> <severity>
Router(config)# logging subsystem all <severity>
Router(config)# logging buffered <size> [ cyclic | one-time ]
Router(config)# logging timestamp {datetime|timeofday|uptime}
Router(config)# syslog ip enable
Router(config)# syslog ip host <host>
Router(config)# syslog ip facility <facility>
Router(config)# syslog ip source <ipv4_address>

ログのメモリ保存

以下のコマンドで出力されたログをメモリ内に保存する事ができます。保存するログの量やローテートするかを指定する事もできます。

なお、メモリに保存されたログですので再起動と同時に消えてしまう事に注意して下さい。再起前のログ調査が必要ならば後述のsyslogサーバへの転送設定が必要です。

Router(config)# logging buffered <size> [ cyclic | one-time ]

初期設定 (telnetログインができるまで)」で示した「Webブラウザ操作用の工場出荷設定」のデフォルト設定は以下の通りです。デフォルトで131072byteのログがローテートされながらメモリに記録されます。

logging buffered 131072

重要度(severity)の定義

NEC IXは、システム単位でログ出力の量を定義する事ができます。以下のコマンドでsubsystem毎にseverityを定義します。なお、subsystemにはtelnet, ssh, ospf, vrrp, natなどが存在します。例えば、telnetを有効にすればルータへのログイン・ログアウトを記録する事ができます。

Router(config)# logging subsystem <subsystem> <severity>

以下のコマンドで全subsystemに対するログを有効にする事ができます。ただし、全subsystemのログを有効にするのはログの量が多くなり過ぎるリスクがありますので、リスクとリターンを考えつつ設定を作成しましょう。

Router(config)# logging subsystem all <severity>

初期設定 (telnetログインができるまで)」で示した「Webブラウザ操作用の工場出荷設定」のデフォルト設定は以下の通りです。デフォルトで全システムのwarn以上のログが記録されます。

logging subsystem all warn

ログの表示設定

以下のコマンドでログに記録される時間をdatetime, timeofday, uptimeのいずれかを指定できます。なお、設定が適用されるのはメモリ内のログのみで、syslogサーバへ転送されるログには適用されません。

Router(config)# logging timestamp {datetime|timeofday|uptime}

初期設定 (telnetログインができるまで)」で示した「Webブラウザ操作用の工場出荷設定」のデフォルト設定は以下の通りです。

logging timestamp datetime

syslogサーバへの転送

以下のコマンドでsyslogサーバへのログ転送を有効にします。

Router(config)# syslog ip enable

syslogサーバのIPアドレスおよびfacilityを指定します。

Router(config)# syslog ip host <host>
Router(config)# syslog ip facility <facility>

送信元インターフェースの指定

syslogの送信元IPアドレスを明示指定する事ができます。明示的な指定がないと障害時や構成変更時に送信元IPアドレスが変わってしまいログが見づらくなってしまいます。送信元をLoopback Addressのような不変の値を使用するようにすると、ログが管理しやすくなります。

Router(config)# syslog ip source <ipv4_address>

動作確認

動作確認の構成

以下の環境で動作確認を行います。

+-----------------+
|     Internet    |
|    (ISP:Jcom)   |
+-------+---------+
        |
        |
        |
        | 
  Gi0.0 | .dhcp
+-------+---------+ 
|   NEC IX 2015   | 
|       R1        |
+-------+---------+
  Gi1.0 | .254
        |
        | 192.168.1.0/24
        |
 ens192 | .100
+-------+---------+
| Rocky Linux 8.5 |
|      host100    |
+-----------------+

初期設定

IX2015の初期設定は以下の通りとします。設定はIPアドレスとインターネットに接続するためのNATしか投入していません。

R1 : NEC IX 2015
Using 749 out of 524288 bytes

! NEC Portable Internetwork Core Operating System Software
! IX Series IX2105 (magellan-sec) Software, Version 8.10.11, RELEASE SOFTWARE
! Compiled Aug 02-Fri-2013 13:57:45 JST #2
! Last updated Nov 19-Fri-2021 13:53:31 JST
!
!
hostname Router
timezone +09 00
!
!
!
!
!
!
!
!
!
!
!       
!
!
!
!
!
!
!
!
!
!
telnet-server ip enable
!
!
!
!
!
!
!
!
!
device GigaEthernet0
!
device GigaEthernet1
!
interface GigaEthernet0.0
  ip address dhcp receive-default
  no shutdown
!
interface GigaEthernet1.0
  ip address 192.168.1.254/24
  no shutdown
!
interface Loopback0.0
  no ip address
!
interface Null0.0
  no ip address

動作確認 (1) ログのメモリ蓄積

以下の設定を投入し、メモリへのログ出力を有効にします。なお、以下設定は「Webブラウザ操作用の工場出荷設定」と全く同じ設定です。「コンソールケーブル操作用の工場出荷設定」を使用する方は、以下のような明示的な設定が必要になります。

[R1:IX2015]
logging buffered 131072
logging subsystem all warn
logging timestamp datetime

NEC IXを再起動し、その時に出力されるログを観察します。

[R1:IX2015]
Router# svintr-config 
Enter configuration commands, one per line. End with CNTL/Z.
Router(config)# reload 
Notice: The router will be RELOADED. This is to ensure that
        the peripheral devices are properly initialized.
Are you sure you want to reload the router? (Yes or [No]): Yes


再起動に伴いログが出力される事を確認します。


[R1:IX2015]
Router(config)# show logging 
Buffer logging enabled, 131072 bytes, type cyclic
  13 messages (1-13), 1002 bytes logged, 0 messages dropped

Log Buffer (1-13):
2021/11/21 15:24:49   GW.038: User anonymous@ has logged on
2021/11/21 15:24:58  ETH.031: Link status up for port 0, 1G b/s, GigaEthernet0
2021/11/21 15:24:58   IP.021: Interface GigaEthernet0.0, link up
2021/11/21 15:24:58  ETH.031: Link status up for port 1, 1G b/s, GigaEthernet1
2021/11/21 15:24:58  ETH.031: Link status up for port 4, 1G b/s, GigaEthernet1
2021/11/21 15:24:58   IP.021: Interface GigaEthernet1.0, link up
2021/11/21 15:24:58   IP.021: Interface GigaEthernet0.0, line protocol up
2021/11/21 15:24:58   IP.021: Interface GigaEthernet1.0, line protocol up
2021/11/21 15:24:58   IP.021: Interface GigaEthernet1.0, up
2021/11/21 15:25:07   IP.021: Interface GigaEthernet0.0, up
2021/11/21 15:25:09  TCP.039: Received ACK segment with destination port 23, sequence number 4139019608 while in the LISTEN state, send RESET
2021/11/21 15:25:09  TCP.040: Sending RESET to host 192.168.1.100
2021/11/21 15:25:11   GW.038: User anonymous@192.168.1.100 has logged on
Router(config)# 

動作確認 (2) 重要度(severity)

NEC IXがサブシステム単位のログ出力が可能である事を確認します。デフォルト設定である全サブシステムのwarn以上の出力を削除し、telnetのinfo以上を出力するように変更します。

[R1:IX2015]
no logging subsystem all 
logging subsystem tels info 

NEC IXを削除します。

[R1:IX2015]
Router(config)# reload 
Notice: The router will be RELOADED. This is to ensure that
        the peripheral devices are properly initialized.
Are you sure you want to reload the router? (Yes or [No]): Yes

さきほどのログではインターフェースのupなどが記録されていましたが、以下はtelnetに関するログしか記録されていません。

[R1:IX2015]
Router(config)# show logging 
Buffer logging enabled, 131072 bytes, type cyclic
  3 messages (1-3), 245 bytes logged, 0 messages dropped

Log Buffer (1-3):
2021/11/21 15:28:11 TELS.001: Connected client 192.168.1.100, server 192.168.1.254
2021/11/21 15:29:15 TELS.001: Connected client 192.168.1.100, server 192.168.1.254
2021/11/21 15:29:15 TELS.007: Received terminal size width 80, height 24
Router(config)# 

動作確認 (3) syslogサーバへの転送

syslogサーバへの転送設定は以下3行です。syslogの転送を有効にし、syslogサーバのIPアドレスとfacilityを指定します。

[R1:IX2015]
syslog ip enable
syslog ip host 192.168.1.100
syslog facility local6

何らかの方法でsyslogサーバを構築します。3cdaemonを使用しても良いですし、VMware等でLinuxサーバを構築しても良いでしょう。syslogサーバにログが転送された事を確認します。

[host100:RockyLinux8.5]
[root@host100 ~]# tail -n3 /var/log/messages 
Nov 21 15:38:24 192.168.1.254  TELS[003]: Disconnected client 192.168.1.100, server 192.168.1.254
Nov 21 15:38:25 192.168.1.254  TELS[001]: Connected client 192.168.1.100, server 192.168.1.254
Nov 21 15:38:25 192.168.1.254  TELS[007]: Received terminal size width 80, height 24
[root@host100 ~]# 
タイトルとURLをコピーしました