GNU/Linux >> LINUX-Kenntnisse >  >> Debian

So richten Sie Rsyslog Server Debian 10/11 ein

Rsyslog ist ein Open-Source-Protokollierungsprogramm, das das IP-Netzwerk verwendet, um alle Protokolldateien an einen zentralen Protokollserver zu senden. Es ist eine verbesserte Version von Syslog unter Linux. Es ermöglicht Systemadministratoren, alle Server von einem einzigen Standort aus zu überwachen.

Rsyslog arbeitet in einem Client/Server-Modell, das Protokolle von Remote-Clients auf Port 514 oder einem beliebigen konfigurierten benutzerdefinierten Port über das TCP/UDP-Protokoll empfängt. Es unterstützt auch Datenbanken (MySQL, PostgreSQL), die zum Speichern von Protokollen verwendet werden.

In dieser Anleitung lernen wir, wie man Rsyslog unter Debian 10/11 installiert und konfiguriert

Schritt 1:Rsyslog-Server installieren

Installieren Sie zunächst das Rsyslog-Paket aus dem Debian-Repository auf Ihrem Servercomputer. Ausführen:

$ sudo apt-get install rsyslog -y

Überprüfen Sie nach Abschluss der Installation, ob Rsyslog wie gezeigt korrekt ausgeführt wird:

$ sudo systemctl status rsyslog

Der Rsyslog-Dienst ist jetzt auf Ihrem Server-Rechner eingerichtet und läuft.

Schritt 2:Rsyslog-Server konfigurieren

Jetzt, da es läuft, konfigurieren Sie Rsyslog so, dass es als Server auf Ihrem Debian-System läuft. Öffnen Sie die Konfigurationsdatei /etc/rsyslog.conf .

$ sudo vim /etc/rsyslog.conf

Suchen Sie die Zeilen unten und kommentieren Sie sie für den Empfang von UDP- und TCP-Protokollen von Remote-Clients aus.

# provides UDP syslog reception

module(load="imudp")

input(type="imudp" port="514")

# provides TCP syslog reception

module(load="imtcp")

input(type="imtcp" port="514")

Als Nächstes müssen wir die Vorlage angeben, die der Rsyslog-Daemon verwendet, um eingehende Protokolle von Client-Systemen zu speichern. Hängen Sie die folgenden Zeilen am Ende Ihrer Konfigurationsdatei an.

$template remote-incoming-logs,"/var/log/%HOSTNAME%/%PROGRAMNAME%.log"

*.* ?remote-incoming-logs

Starten Sie rsyslog neu, damit die Änderungen wirksam werden.

$ sudo systemctl restart rsyslog

Rsyslog überwacht Port 514. Sie können den Standardport in der Konfigurationsdatei ändern. Um zu überprüfen, ob der rsyslog-Daemon auf Port 514 lauscht, führen Sie den folgenden ss-Befehl aus.

$ sudo ss -tunlp | grep 514

Schritt 3:Firewall für rsyslog konfigurieren

Der rsyslog-Daemon ist jetzt auf dem Server konfiguriert. Wenn Sie sich hinter der UFW-Firewall befinden, lassen Sie Port 514 zu, damit der Server Protokollnachrichten von Clients empfangen kann. Führen Sie die Befehle aus:

$ sudo ufw allow 514/tcp

$ sudo ufw allow 514/udp

Starten Sie die Firewall neu, damit die neuen Regeln angewendet werden. Ausführen:

$ sudo ufw reload

Schritt 4:Rsyslog-Client konfigurieren

Konfigurieren Sie als Nächstes den Rsyslog-Client so, dass Protokollmeldungen an den Rsyslog-Server gesendet werden. Stellen Sie sicher, dass RSyslog korrekt auf Ihrem Client-Rechner installiert ist.

Öffnen Sie zunächst die Konfigurationsdatei

$ sudo nano /etc/rsyslog.conf

Kopieren Sie die folgenden Zeilen und fügen Sie sie am Ende der Datei ein:

#Enable sending system logs over UDP to rsyslog server

*.* @rsyslog-server-ip:514

#Enable sending system logs over TCP to rsyslog server

*.* @@rsyslog-server-ip:514

Die obige Konfiguration weist den Client an, Protokolldateien mit TCP- und UDP-Protokollen an den rsyslog-Server zu senden. Ersetzen Sie rsyslog-server-ip durch Ihre Server-IP-Adresse.

Wenn der Remote-Server ausfällt und Sie Ihre Protokolle behalten müssen, können Sie den Festplatten-Warteschlangenpuffer einstellen, indem Sie die folgenden Zeilen zur Client-Konfigurationsdatei hinzufügen.

##Set disk queue when rsyslog server will be down:

$ActionQueueFileName queue

$ActionQueueMaxDiskSpace 1g

$ActionQueueSaveOnShutdown on

$ActionQueueType LinkedList

$ActionResumeRetryCount -1

Speichern und schließen Sie die Datei. Laden Sie den rsyslog-Dienst neu, damit die Änderungen übernommen werden.

 $ sudo systemctl restart rsyslog

Schritt 5:Client-Protokolldateien anzeigen

Rsyslog-Protokolldateien werden im Verzeichnis /var/log/ aufbewahrt Ordner auf Ihrem Server. Um die Protokolle des Clients anzuzeigen, verwenden Sie den folgenden ls-Befehl:

$ ls /var/log/

Standardmäßig werden die Protokolldateien des Clients in einem Ordner gespeichert, der nach dem Hostnamen des Clientsystems benannt ist. In meinem Fall hat das Client-System den Hostnamen debian.

Führen Sie als Nächstes den folgenden Befehl aus, um die im Verzeichnis des Clients enthaltenen Protokolle anzuzeigen.

$ sudo ls -l /var/log/debian/

Sie können Protokolle auch in Echtzeit auf Ihrem Terminal anzeigen. Lassen Sie uns die Protokolle des Root-Benutzers anzeigen. Führen Sie den Befehl aus:

$ sudo tail -f /var/log/debian/sudo.log

Schlussfolgerung

Der rsyslog-Server ist jetzt auf Debian 11 konfiguriert. Sie können jetzt mehrere Clients konfigurieren, um Protokollmeldungen an den zentralen Server zu senden.


Debian
  1. So installieren Sie Webmin unter Debian 10/11

  2. So installieren Sie den XFCE-Desktop unter Debian 10/11

  3. Installieren Sie Wireguard-Server auf Debian 10/11

  4. Festlegen einer statischen IP auf Debian 11 - Wie geht das?

  5. So richten Sie einen OpenVPN-Server unter Debian 10 ein

So richten Sie einen Minecraft-Server unter Debian 10 ein

So richten Sie einen Mailserver mit PostfixAdmin unter Debian 11 ein

So installieren Sie Google Chrome unter Debian 10/11

So legen Sie eine statische IP unter Debian 11 fest

So richten Sie NTP-Server und -Client unter Debian 11 ein

So installieren Sie den SVN-Server unter Debian 11/10