[Ubuntu] シスログサーバーを動かして RTX 1100 のシスログを保存する方法

前書き

我が家にある Ubuntu でシスログサーバーを構築します。パナソニックのレッツノートにインストールしているデスクトップ版の Ubuntu です。我が家のメインルーターであるヤマハの RTX1100 (古いっ!) のログを取得するようにします。

Ubuntu のバージョン情報

$ head -6 /etc/os-release
 NAME="Ubuntu"
 VERSION="20.04.1 LTS (Focal Fossa)"
 ID=ubuntu
 ID_LIKE=debian
 PRETTY_NAME="Ubuntu 20.04.1 LTS"
 VERSION_ID="20.04"
$

Ubuntu のバージョン 20.04 のようですね。

シスログの設定ファイルを修正する

/etc/rsyslog.conf を修正します。具体的には、

#module(load="imudp")
#input(type="imudp" port="514")

上記 2 行の先頭にある # を消します。(コメントになっているのでコメント解除します)

RTX1100 のシスログ保管を定義するファイルを作る

/etc/rsyslog.d ディレクトリに RTX1100 のシスログを保管することを定義するファイルを作ります。ここでは 75-rtx1100.conf というファイル名にしました。作った後 ls した状態がこちら。↓

$ pwd
 /etc/rsyslog.d
$ ls -tlr
 total 12
 -rw-r--r-- 1 root root  314 Aug 16  2017 20-ufw.conf
 -rw-r--r-- 1 root root 1124 Jan 31  2018 50-default.conf
 -rw-r--r-- 1 root root    3 Dec 25 23:11 75-rtx1100.conf
$

20-ufw.conf と 50-default.conf はシスログサーバの設定を始める前から存在していました。

作ったファイル (75-rtx1100.conf) に下記を書き込みます。

local4.*        -/var/log/rtx1100.log

シスログにはファシリティという概念があり、ファシリティとはログの種類分けに使われていると僕はざっくり理解しています。

で、RTX1100 のシスログは local4 というファシリティ (区分) でログを残していく定義にして、シスログサーバの /var/log/rtx1100.log にログを残していく定義にしたのが上記の 1 行というわけです。

シスログサーバのプロセスを再起動する

Ubuntu はデフォルト状態でシスログサーバのプロセス (rsyslogd) が動いているようなので、ここで再起動します。

$ sudo systemctl restart rsyslog

再起動したらプロセスの状態を一応見ておきます。

$ sudo systemctl status rsyslog
 ● rsyslog.service - System Logging Service
      Loaded: loaded (/lib/systemd/system/rsyslog.service; enabled; vendor preset: enabled)
      Active: active (running) since Fri 2020-12-25 23:28:45 JST; 16s ago
 TriggeredBy: ● syslog.socket
        Docs: man:rsyslogd(8)
              
RSyslog Documentation
Main PID: 793693 (rsyslogd) Tasks: 5 (limit: 4517) Memory: 1.7M CGroup: /system.slice/rsyslog.service └─793693 /usr/sbin/rsyslogd -n -iNONE Dec 25 23:28:45 CF-S10 systemd[1]: Starting System Logging Service… Dec 25 23:28:45 CF-S10 rsyslogd[793693]: imuxsock: Acquired UNIX socket '/run/systemd/journal/syslog' (fd 3) from systemd.> Dec 25 23:28:45 CF-S10 rsyslogd[793693]: rsyslogd's groupid changed to 106 Dec 25 23:28:45 CF-S10 systemd[1]: Started System Logging Service. Dec 25 23:28:45 CF-S10 rsyslogd[793693]: rsyslogd's userid changed to 102 Dec 25 23:28:45 CF-S10 rsyslogd[793693]: [origin software="rsyslogd" swVersion="8.2001.0" x-pid="793693" x-info="https://w> $

タイムスタンプのところを見て、再起動を実行したタイミングと時間が合ってることを (最低限) 確認しておく。

ログファイルが記録され始めたことを確認する

では /var/log/rtx1100.log になんでもいいからログが記録され始めたことを確認しておきたいところです。

ここで僕は RTX1100 に telnet でログインして管理者権限になりました。これだけでもヤマハルータはシスログを吐きます。ログファイルをチェックします。

$ ls -l /var/log/rtx1100.log
 -rw-r----- 1 syslog adm 176 Dec 25 23:29 /var/log/rtx1100.log
$ cat /var/log/rtx1100.log
 Dec 25 23:29:37 Login succeeded for TELNET: 172.16.1.2
 Dec 25 23:29:43 _gateway 'administrator' succeeded for TELNET: 172.16.1.2
 Dec 25 23:29:58 Logout from TELNET: 172.16.1.2
$

ログがシスログサーバ側で記録されていることが確認できました。

ヤマハルータ側の設定は?

ところでヤマハルータ側には何も設定しなくていいのか?という疑問が出たかもしれません。設定は必要です。RTX1100 には以下 4 行を入れていました。

syslog host 172.16.1.2
syslog local address 172.16.1.1
syslog facility local4
syslog notice on

1 行目はシスログサーバの IP アドレスを指定しています。

2 行目は RTX1100 がシスログを投げる時の送信元 IP アドレスを指定しています。

3 行目がシスログサーバのときに出てきたファシリティの設定です。Ubuntu 側で local4 というファシリティ指定にしたので、RTX1100 側でも合わせて local4 と書かないといけないと思います。

4 行目はヤマハのマニュアルによると、「各種フィルター機能等で検出したパケット情報を SYSLOG で出力するか否かを設定する」コマンドだそうです。とりあえず ON にしときました。

[Ubuntu] シスログサーバーを動かして RTX 1100 のシスログを保存する方法” に対して1件のコメントがあります。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください