皆さん、こんにちは。この投稿では、Debian 11でのrsyslogについて少しお話します。さらに、クライアントから作業できるように、rsyslogをインストールしてセットアップする方法を紹介します。始めましょう。
Debian 11のrsyslogとは何ですか?
簡単に言うと、rsyslogは、クライアントマシンを介したログの収集と集中管理を担当するデーモンであると言えます。
通常、これらのログは/var/logs/
にあります ただし、構成で指定したほとんどすべてのディレクトリで機能します。
rsyslogの驚くべき点の1つは、エンタープライズ環境で使用するのに十分な汎用性と堅牢性を備えていることですが、非常に軽量でシンプルなため、小規模なシステムでも使用できます。
これに加えて、データをテキストファイルに保存するか、MariaDBなどのデータベースマネージャーに保存するかを選択できます。そのため、使用するのは簡単です。今日は、その方法を紹介します。
Debian 11へのrsyslogのインストール–ログサーバーのセットアップ
サーバーに関しては、Debian11の公式リポジトリからパッケージをインストールできます。このため、SSH経由でサーバーに接続したら、サーバーを更新できます。
sudo apt update
sudo apt upgrade
その後、実行してパッケージをインストールできます
sudo apt install rsyslog
RsyslogはTCPおよびUDPポート514で動作するため、これらのポートがファイアウォールで開いていることを確認する必要があります。
sudo ufw allow 514/tcp
sudo ufw allow 514/udp
これらの変更を適用するには、ファイアウォールを再起動する必要があります。
sudo ufw reload
最後に、実行してサービスのステータスを確認する必要があります
sudo systemctl status rsyslog

このようにして、rsyslogがインストールされ実行されていることがわかります。次に、構成する必要があります。
rsyslogサーバーの構成
rsyslogの主な構成は、/etc/rsyslog.conf
にあります。 変更する必要のあるファイル。これを行う前に、元のコピーを保持しておくことをお勧めします。
sudo cp /etc/rsyslog.conf /etc/rsyslog.conf.bak
今すぐ編集
sudo nano /etc/rsyslog.conf
そして、このファイルで最初に行う必要があるのは、アプリケーションが機能するポートを有効にすることです。
したがって、ファイルの先頭で、次のセクションのコメントを解除します。
module(load="imudp")
input(type="imudp" port="514")
module(load="imtcp")
input(type="imtcp" port="514")

これに加えて、rsyslogがクライアントのログを収集する方法に関するテンプレートを定義する必要があります。この場合、ファイルの最後にこれらの2行を追加します。
$template remote-incoming-logs,"https://1118798822.rsc.cdn77.org/var/log/%HOSTNAME%/%PROGRAMNAME%.log"
*.* ?remote-incoming-logs
remote-incoming-logs
を定義している場所 テンプレートとログは/var/log
に保存されます それらを区別するには、ログを生成するプログラムのホスト名と名前を使用する必要があります。
今のところこれで十分です。変更を保存できます。
それらを適用するには、アプリケーションサービスを再起動するだけです。
sudo systemctl restart rsyslog
クライアントでのRsyslog構成は、サーバーと非常によく似ています。まず、ディストリビューションにパッケージをインストールする必要があります。
次に、ファイアウォールでTCPポートとUDPポート514を開きます。
そして、rsyslog構成ファイル内
sudo nano /etc/rsyslog.conf
ファイルの最後に次の行を追加します
*.* @rsyslog-ip-address:514
*.* @@rsyslog-ip-address:514
RsyslogサーバーのIPアドレスを設定する必要があることを忘れないでください。最初の行はUDPを参照し、2番目の行はTCPを参照しています。
これに加えて、次の情報をファイルに追加する必要があります。
$ActionQueueFileName queue
$ActionQueueMaxDiskSpace 2g
$ActionQueueSaveOnShutdown on
$ActionQueueType LinkedList
$ActionResumeRetryCount -1
これらのディレクティブは、ログの送信時に設定するオプションです。
変更を保存して、テキストエディタを閉じます。
変更を適用するには、サービスを再起動します。
sudo systemctl restart rsyslog
この構成で十分です。
この投稿では、Debian 11でrsyslogを設定する方法を学びました。したがって、ログを一元化して、すべてをチェックできるサーバーを用意できます。
お役に立てば幸いです。
Rsyslogドキュメント