GNU/Linux >> Linux の 問題 >  >> Cent OS

CentOS 8 /RHEL8でRsyslogサーバーを構成する方法

Rsyslog は、 CentOSにデフォルトで存在する無料のオープンソースロギングユーティリティです。 8およびRHEL 8システム。 ログを一元化するための簡単で効果的な方法を提供します クライアントノードから単一の中央サーバーへ。ログの集中化は、2つの点で有益です。まず、システム管理者はすべてのクライアントシステムにログインしてログを確認しなくても、中央のポイントからリモートサーバーのすべてのログを表示できるため、ログの表示が簡素化されます。これは、監視する必要のあるサーバーが複数ある場合に非常に役立ちます。次に、リモートクライアントがクラッシュした場合でも、すべてのログが中央のrsyslogに保存されるため、ログが失われる心配はありません。サーバー 。 Rsyslogは、 UDPのみをサポートするsyslogに取って代わりました プロトコル。これは、両方の UDP のサポートなどの優れた機能を使用して、基本的なsyslogプロトコルを拡張します。 およびTCP ログの転送におけるプロトコル、拡張されたフィルタリング機能、および柔軟な構成オプション。そうは言っても、CentOS 8 /RHEL8システムでRsyslogサーバーを構成する方法を見てみましょう。

前提条件

一元化されたロギングプロセスをテストするために、次のラボセットアップを行います。

  • Rsyslogサーバー CentOS 8最小IPアドレス:10.128.0.47
  • クライアントシステム RHEL 8最小IPアドレス:10.128.0.48

上記の設定から、Rsyslogサーバーを設定し、後で監視のためにログをRsyslogサーバーに送信するようにクライアントシステムを構成する方法を示します。

始めましょう!

CentOS8でのRsyslogサーバーの構成

デフォルトでは、RsyslogはCentOS 8 /RHEL8サーバーにインストールされています。 Rsyslogのステータスを確認するには、SSH経由でログインし、次のコマンドを発行します。

$ systemctl status rsyslog

サンプル出力

何らかの理由でrsyslogが存在しない場合は、次のコマンドを使用してインストールできます。

$ sudo yum install rsyslog

次に、Rsyslog構成ファイルのいくつかの設定を変更する必要があります。構成ファイルを開きます。

$ sudo vim /etc/rsyslog.conf

以下に示す行をスクロールしてコメントを外し、UDPプロトコルを介してログを受信できるようにします

module(load="imudp") # needs to be done just once
input(type="imudp" port="514")

同様に、TCP rsyslog受信を有効にする場合は、次の行のコメントを解除します。

module(load="imtcp") # needs to be done just once
input(type="imtcp" port="514")

構成ファイルを保存して終了します。

クライアントシステムからログを受信するには、ファイアウォールでRsyslogのデフォルトポート514を開く必要があります。これを実現するには、

を実行します
# sudo firewall-cmd  --add-port=514/tcp  --zone=public  --permanent

次に、ファイアウォールをリロードして変更を保存します

# sudo firewall-cmd --reload

サンプル出力

次に、Rsyslogサーバーを再起動します

$ sudo systemctl restart rsyslog

起動時にRsyslogを有効にするには、コマンドの下で実行します

$ sudo systemctl enable rsyslog

Rsyslogサーバーがポート514でリッスンしていることを確認するには、次のようにnetstatコマンドを使用します。

$ sudo netstat -pnltu

サンプル出力

完全!クライアントシステムからログを受信するようにRsyslogサーバーを正常に構成しました。

ログメッセージをリアルタイムで表示するには、次のコマンドを実行します。

$ tail -f /var/log/messages

次に、クライアントシステムを構成しましょう。

RHEL8でのクライアントシステムの設定

Rsyslogサーバーと同様に、ログインして、次のコマンドを発行してrsyslogデーモンが実行されているかどうかを確認します。

$ sudo systemctl status rsyslog

サンプル出力

次に、rsyslog構成ファイルを開きます

$ sudo vim /etc/rsyslog.conf

ファイルの最後に、次の行を追加します

*.* @10.128.0.47:514           # Use @ for UDP protocol
*.* @@10.128.0.47:514          # Use @@ for TCP protocol

構成ファイルを保存して終了します。 Rsyslogサーバーと同様に、ファイアウォールのデフォルトのRsyslogポートであるポート514を開きます

$ sudo firewall-cmd  --add-port=514/tcp  --zone=public  --permanent

次に、ファイアウォールをリロードして変更を保存します

$ sudo firewall-cmd --reload

次に、rsyslogサービスを再起動します

$ sudo systemctl restart rsyslog

起動時にRsyslogを有効にするには、次のコマンドを実行します

$ sudo systemctl enable rsyslog

ロギング操作のテスト

Rsyslogサーバーとクライアントシステムのセットアップと構成が正常に完了したら、構成が意図したとおりに機能していることを確認します。

クライアントシステムで次のコマンドを発行します:

# logger "Hello guys! This is our first log"

次に、Rsyslogサーバーに移動し、以下のコマンドを実行して、ログメッセージをリアルタイムで確認します

# tail -f /var/log/messages

クライアントシステムで実行されたコマンドからの出力は、Rsyslogサーバーのログメッセージに登録され、Rsyslogサーバーがクライアントシステムからログを受信して​​いることを示します。

そして、それだけです、みんな!クライアントシステムからログメッセージを受信するようにRsyslogサーバーを正常にセットアップしました。

また読む:Logrotateを使用してLinuxでログファイルをローテーションおよび圧縮する方法

また読む: CentOS 8 /RHEL8にRedisサーバーをインストールする方法


Cent OS
  1. CentOS/RHEL 6,7 で特定の IP アドレスをフィルタリング/破棄するように rsyslog を構成する方法

  2. Rsyslog :CentOS/RHEL 6,7 でログ ファイルをリモート サーバーに送信する方法

  3. CentOS/RHEL 6,7 で監査ログをリモート Rsyslog サーバーに送信する方法

  1. CentOS 5 /RHEL5でDNSサーバーを構成する方法

  2. CentOS / RHEL 7 で NTP サーバーとクライアントを構成する方法

  3. CentOS / RHEL :DHCP サーバーの構成方法

  1. RHEL 8 /CentOS8にvncサーバーをインストールする方法

  2. NextcloudをRHEL8/CentOS8サーバーにインストールする方法

  3. RHEL 8 /CentOS8サーバーにOwnCloudをインストールする方法