Server Setup · 4 min read · Oct 06, 2025
So richten Sie einen Rsyslog-Server auf Ubuntu 18.04 LTS ein

Protokolle sind sehr nützlich, um Probleme im Zusammenhang mit Systemen und Anwendungen in Linux zu analysieren und zu beheben. Standardmäßig befinden sich alle Protokolldateien im Verzeichnis /var/log in Linux-basierten Betriebssystemen. Es gibt mehrere Arten von Protokolldateien, darunter cron, kernel, users, security, und die meisten dieser Dateien werden vom Rsyslog-Dienst gesteuert.
Rsyslog ist ein leistungsstarkes und sicheres System zur Protokollverarbeitung. Der Rsyslog-Server empfängt Protokolle über das Netzwerk von mehreren physischen oder virtualisierten Servern und überwacht die Gesundheit verschiedener Dienste. Mit dem Rsyslog-Server können Sie Protokolle für andere Server, Netzwerkgeräte und Remote-Anwendungen von einem zentralen Standort aus überwachen.
In diesem Tutorial erklären wir, wie Sie den Rsyslog-Server auf einem Ubuntu 18.04-Server konfigurieren.
Voraussetzungen
- Zwei Server, die Ubuntu 18.04 ausführen.
- Eine statische IP-Adresse 192.168.0.101 ist auf der Rsyslog-Server-Maschine konfiguriert und 192.168.0.102 ist auf der Rsyslog-Client-Maschine konfiguriert.
- Ein Root-Passwort ist auf beiden Servern konfiguriert.
Rsyslog installieren
Standardmäßig ist Rsyslog auf dem Ubuntu 18.04-Server installiert. Wenn es nicht installiert ist, können Sie es mit dem folgenden Befehl installieren:
apt-get install rsyslog -yNach der Installation von Rsyslog können Sie die Version von Rsyslog mit dem folgenden Befehl überprüfen:
rsyslogd -vSie sollten die folgende Ausgabe erhalten:
rsyslogd 8.32.0, kompiliert mit:
PLATFORM: x86_64-pc-linux-gnu
PLATFORM (lsb_release -d):
FEATURE_REGEXP: Ja
GSSAPI Kerberos 5 Unterstützung: Ja
FEATURE_DEBUG (Debug-Build, langsamer Code): Nein
32-Bit-Atomoperationen unterstützt: Ja
64-Bit-Atomoperationen unterstützt: Ja
Speicher-Allocator: system default
Laufzeit-Instrumentierung (langsamer Code): Nein
uuid-Unterstützung: Ja
systemd-Unterstützung: Ja
Anzahl der Bits in RainerScript-Ganzzahlen: 64
Siehe http://www.rsyslog.com für weitere Informationen.
Sie können auch den Status von Rsyslog mit dem folgenden Befehl überprüfen:
systemctl status rsyslogSie sollten die folgende Ausgabe sehen:
? rsyslog.service - System Logging Service
Loaded: loaded (/lib/systemd/system/rsyslog.service; enabled; vendor preset: enabled)
Active: active (running) since Tue 2019-10-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
Oct 22 04:28:53 ubuntu1804 systemd[1]: Starting System Logging Service...
Oct 22 04:28:54 ubuntu1804 rsyslogd[724]: imuxsock: Acquired UNIX socket '/run/systemd/journal/syslog' (fd 3) from systemd. [v8.32.0]
Oct 22 04:28:54 ubuntu1804 rsyslogd[724]: rsyslogd's groupid changed to 106
Oct 22 04:28:54 ubuntu1804 rsyslogd[724]: rsyslogd's userid changed to 102
Oct 22 04:28:54 ubuntu1804 rsyslogd[724]: [origin software="rsyslogd" swVersion="8.32.0" x-pid="724" x-info="http://www.rsyslog.com"] start
Oct 22 04:28:55 ubuntu1804 systemd[1]: Started System Logging Service.
Rsyslog-Server konfigurieren
Rsyslog ist jetzt installiert und läuft. Als Nächstes müssen Sie es so konfigurieren, dass es im Servermodus läuft. Sie können dies tun, indem Sie die Datei /etc/rsyslog.conf bearbeiten.
nano /etc/rsyslog.confZuerst müssen Sie das Protokoll entweder UDP oder TCP oder beide definieren.
Um sowohl UDP- als auch TCP-Verbindungen gleichzeitig zu verwenden, suchen Sie die folgenden Zeilen und entfernen Sie das Kommentarzeichen:
$ModLoad imudp
$UDPServerRun 514
$ModLoad imtcp
$InputTCPServerRun 514
Als Nächstes definieren Sie das spezifische Subnetz, die IP oder die Domain, um den Zugriff wie unten gezeigt zu beschränken:
$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
Als Nächstes müssen Sie eine Vorlage erstellen, um dem Rsyslog-Server zu sagen, wie eingehende Syslog-Nachrichten gespeichert werden sollen. Fügen Sie die folgenden Zeilen direkt vor dem Abschnitt GLOBAL DIRECTIVES hinzu:
$template remote-incoming-logs, "/var/log/%HOSTNAME%/%PROGRAMNAME%.log"
*.* ?remote-incoming-logs
Speichern und schließen Sie die Datei, wenn Sie fertig sind. Überprüfen Sie dann die Rsyslog-Konfiguration auf Syntaxfehler mit dem folgenden Befehl:
rsyslogd -f /etc/rsyslog.conf -N1Sie sollten die folgende Ausgabe sehen:
rsyslogd: version 8.32.0, config validation run (level 1), master config /etc/rsyslog.conf
rsyslogd: End of config validation run. Bye.
Starten Sie schließlich den Rsyslog-Dienst mit dem folgenden Befehl neu:
systemctl restart rsyslogÜberprüfen Sie nun, ob Rsyslog auf TCP/UDP mit dem folgenden Befehl hört:
netstat -4altunp | grep 514Sie sollten die folgende Ausgabe erhalten:
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-Client konfigurieren
Der Rsyslog-Server ist installiert und konfiguriert, um Protokolle von Remote-Hosts zu empfangen.
Jetzt müssen Sie den Rsyslog-Client konfigurieren, um Syslog-Nachrichten an den Remote-Rsyslog-Server zu senden.
Melden Sie sich bei der Client-Maschine an und öffnen Sie die Rsyslog-Konfigurationsdatei wie unten gezeigt:
nano /etc/rsyslog.confFügen Sie die folgenden Zeilen am Ende der Datei hinzu:
## Aktivieren Sie das Senden von Protokollen über UDP, fügen Sie die folgende Zeile hinzu:
*.* @192.168.0.101:514
## Aktivieren Sie das Senden von Protokollen über TCP, fügen Sie die folgende Zeile hinzu:
*.* @@192.168.0.101:514
## Setzen Sie die Festplattenschlange, wenn der Rsyslog-Server ausgefallen ist:
$ActionQueueFileName queue
$ActionQueueMaxDiskSpace 1g
$ActionQueueSaveOnShutdown on
$ActionQueueType LinkedList
$ActionResumeRetryCount -1
Speichern und schließen Sie die Datei. Starten Sie dann den Rsyslog-Server neu, um die Konfigurationsänderungen anzuwenden:
systemtcl restart rsyslogClient-Protokoll anzeigen
An diesem Punkt ist der Rsyslog-Client konfiguriert, um seine Protokolle an den Rsyslog-Server zu senden.
Melden Sie sich jetzt beim Rsyslog-Server an und überprüfen Sie das Verzeichnis /var/log. Sie sollten den Eintrag mit dem Hostnamen Ihrer Client-Maschinen einschließlich mehrerer Protokolldateien sehen:
ls /var/log/rsyslog-client/Ausgabe:
CRON.log kernel.log rsyslogd-2039.log rsyslogd.log sudo.log wpa_supplicant.log
Fazit
Im obigen Artikel haben wir gelernt, wie man den Rsyslog-Server auf einem Ubuntu 18.04-Server installiert und konfiguriert. Wir haben auch gelernt, wie man den Rsyslog-Client konfiguriert, um Protokolle an den Rsyslog-Server zu senden. Zögern Sie nicht, mich zu fragen, wenn Sie Fragen haben.
Erhalte neue Beiträge in deinem Posteingang.
Kein Spam. Jederzeit abmelden.