Rsyslog設定 · 1 min read · Oct 06, 2025
Ubuntu 24.04にRsyslogサーバーとクライアントをインストールおよび構成する方法

Rsyslogは、Ubuntu上で動作する強力で柔軟なシステムログデーモンで、オペレーティングシステムやアプリケーションによって生成されたログメッセージを収集、フィルタリング、保存、転送するために使用されます。これは、従来のsyslogサービスの強化版であり、高性能のログ記録、先進的なフィルタリング機能、TCP、UDP、RELP(Reliable Event Logging Protocol)を含む複数のログ記録プロトコルのサポートなどの追加機能を提供します。Rsyslogは、さまざまなソースからのログメッセージを処理し、それらをファイル、データベース、またはリモートサーバーなどの異なる宛先に送信できます。これは、監視、トラブルシューティング、および監査目的のための集中ログ記録システムで広く使用されています。詳細な構成を許可することで、RsyslogはUbuntu管理者がシステムログを効率的に管理し、重要な情報が安全にキャプチャされ、保存されることを保証します。
ログは、Linuxシステムやアプリケーションに関連する問題を分析し、トラブルシューティングするために非常に便利です。デフォルトでは、すべてのログファイルはLinuxベースのオペレーティングシステムの/var/logディレクトリ内にあります。ログファイルには、cron、kernel、users、securityなどのいくつかのタイプがあり、これらのファイルのほとんどはRsyslogサービスによって制御されています。
このチュートリアルでは、Ubuntu 24.04サーバーでRsyslogサーバーを構成する方法を説明します。
前提条件
- Ubuntu 24.04を実行している2台のサーバー。
- Rsyslogサーバーマシンに静的IPアドレス192.168.0.101が構成され、Rsyslogクライアントマシンに192.168.0.102が構成されています。
- 両方のサーバーにrootパスワードが構成されています。
Rsyslogのインストール
次のコマンドを実行してRsyslogをインストールできます。
apt install rsyslog -yRsyslogをインストールした後、次のコマンドでRsyslogのバージョンを確認できます。
rsyslogd -v次のコマンドでRsyslogのステータスも確認できます。
systemctl status rsyslog次の出力が表示されるはずです。
? rsyslog.service - System Logging Service
Loaded: loaded (/lib/systemd/system/rsyslog.service; enabled; vendor preset: enabled)
Active: active (running) since Tue 2024-08-22 04:28:55 UTC; 1min 31s ago
Docs: man:rsyslogd(8)
http://www.rsyslog.com/doc/
Main PID: 724 (rsyslogd)
Tasks: 4 (limit: 1114)
CGroup: /system.slice/rsyslog.service
??724 /usr/sbin/rsyslogd -n
Aug 22 04:28:53 ubuntu2404 systemd[1]: Starting System Logging Service...
Aug 22 04:28:54 ubuntu2404 rsyslogd[724]: imuxsock: Acquired UNIX socket '/run/systemd/journal/syslog' (fd 3) from systemd. [v8.32.0]
Aug 22 04:28:54 ubuntu2404 rsyslogd[724]: rsyslogd's groupid changed to 106
Aug 22 04:28:54 ubuntu2404 rsyslogd[724]: rsyslogd's userid changed to 102
Aug 22 04:28:54 ubuntu2404 rsyslogd[724]: [origin software="rsyslogd" swVersion="8.32.0" x-pid="724" x-info="http://www.rsyslog.com"] start
Aug 22 04:28:55 ubuntu2404 systemd[1]: Started System Logging Service.
Rsyslogサーバーの構成
Rsyslogは現在インストールされ、実行中です。次に、サーバーモードで実行するように構成する必要があります。ファイル/etc/rsyslog.confを編集できます。
nano /etc/rsyslog.conf最初に、UDPまたはTCPのいずれか、または両方のプロトコルを定義する必要があります。
UDPとTCPの接続を同時に使用するには、以下の行を検索してコメントを解除します。
$ModLoad imudp
$UDPServerRun 514
$ModLoad imtcp
$InputTCPServerRun 514
次に、アクセスを制限するために特定のサブネット、IP、またはドメインを定義します。以下のようにします。
$AllowedSender TCP, 127.0.0.1, 192.168.0.0/24, *.example.com
$AllowedSender UDP, 127.0.0.1, 192.168.0.0/24, *.example.com
次に、Rsyslogサーバーに受信するsyslogメッセージをどのように保存するかを指示するテンプレートを作成する必要があります。GLOBAL DIRECTIVESセクションの直前に以下の行を追加します。
$template remote-incoming-logs, "/var/log/%HOSTNAME%/%PROGRAMNAME%.log"
*.* ?remote-incoming-logs
作業が完了したら、ファイルを保存して閉じます。次に、次のコマンドでRsyslog構成に構文エラーがないか確認します。
rsyslogd -f /etc/rsyslog.conf -N1次の出力が表示されるはずです。
rsyslogd: version 8.32.0, config validation run (level 1), master config /etc/rsyslog.conf
rsyslogd: End of config validation run. Bye.
最後に、次のコマンドでRsyslogサービスを再起動します。
systemctl restart rsyslog次に、次のコマンドでRsyslogがTCP/UDPでリッスンしていることを確認します。
netstat -4altunp | grep 514次の出力が得られるはずです。
tcp 0 0 0.0.0.0:514 0.0.0.0:* LISTEN 1332/rsyslogd
udp 0 0 0.0.0.0:514 0.0.0.0:* 1332/rsyslogd
Rsyslogクライアントの構成
Rsyslogサーバーはインストールされ、リモートホストからのログを受信するように構成されています。
次に、Rsyslogクライアントを構成して、リモートRsyslogサーバーにsyslogメッセージを送信する必要があります。
クライアントマシンにログインし、以下のようにRsyslog構成ファイルを開きます。
nano /etc/rsyslog.confファイルの最後に以下の行を追加します。
##UDP経由でのログ送信を有効にするには、以下の行を追加します。
*.* @192.168.0.101:514
##TCP経由でのログ送信を有効にするには、以下の行を追加します。
*.* @@192.168.0.101:514
##Rsyslogサーバーがダウンしているときのディスクキューを設定します。
$ActionQueueFileName queue
$ActionQueueMaxDiskSpace 1g
$ActionQueueSaveOnShutdown on
$ActionQueueType LinkedList
$ActionResumeRetryCount -1
ファイルを保存して閉じます。次に、構成変更を適用するためにRsyslogサーバーを再起動します。
systemtcl restart rsyslogクライアントログの表示
この時点で、RsyslogクライアントはログをRsyslogサーバーに送信するように構成されています。
Rsyslogサーバーにログインし、/var/logディレクトリを確認します。クライアントマシンのホスト名を含むエントリといくつかのログファイルが表示されるはずです。
ls /var/log/rsyslog-client/出力:
CRON.log kernel.log rsyslogd-2039.log rsyslogd.log sudo.log wpa_supplicant.log
結論
上記の記事では、Ubuntu 24.04サーバーにRsyslogサーバーをインストールおよび構成する方法と、Rsyslogクライアントを構成してログをRsyslogサーバーに送信する方法を学びました。質問があればお気軽にお尋ねください。
新しい投稿を受信箱で受け取る
スパムはありません。いつでも購読を解除できます。