Die RSYSLog -Datei kann verwendet werden, um einen zentralen Protokollierungsserver zu konfigurieren und die einzelnen Client -Systeme so zu konfigurieren, dass ihre Protokolldateien an den Protokollierungsserver gesendet werden.
Rsyslog kann sowohl auf der Red Hat- als auch auf Ubuntu -Verteilungen installiert werden. Das Adiscon Ubuntu -Repository bietet die neuesten Versionen von Rsyslog über Ubuntu. In ähnlicher Weise bietet das Adiscon RPM -Repository die neuesten Versionen von Rsyslog für Red Hat/CentOS.
Installieren Sie den Rsyslog -Dienst auf diesem System, um ein System als Protokollierungsserver zu verwenden. Installieren Sie außerdem den RSYSLog -Dienst auf den Systemen, mit denen Protokolle an diesen Server gesendet werden.
Mit dem Rsyslog -Daemon können wir Protokolle an Remote -Server senden. Es ist relativ einfach, Rsyslog zu konfigurieren. Die Protokolldateien sind zentral, was bei der Archivierung und Fehlerbehebungsprozesse unterstützt wird.
Warum sind Protokolldateien wichtig??
Protokolldateien sind im Grunde genommen ein unverzichtbarer Bestandteil eines Server -Setups. Diese Dateien werden in: verwendet in:
Protokolldateien sind eine Schlüsselquelle für das Sammeln kritischer Informationen über ein System und verschiedene darauf ausgeführte Prozesse. Diese Informationen werden zur Prüfung und Fehlerbehebung verwendet.
Was werden wir abdecken??
In diesem Tutorial erfahren Sie mehr über den Rsyslog -Service unter Linux.
Auswählen der Partition für /var /log
Das /etc /rsyslog.Conf enthält eine Liste von Protokolldateien, die vom Dämon Rsyslogd verwaltet werden. Das Verzeichnis/var/protokoll/enthält die meisten Protokolldateien. Anwendungen wie Samba, HTTPD und andere speichern ihre Protokolle auch in einem Unterverzeichnis im /var /log.
Es ist eine gute Praxis, das Verzeichnis /var /log auf einer separaten Partition zu montieren. Dies hilft bei der Vermeidung einer Situation, in der die lokalen Protokolle den von dem Stammdateisystem geteilten Raum besetzen. Dies ist ein kritisch wichtiger Schritt bei der Konfiguration der Server, die zu viele Protokolldateien von mehreren Remote -Systemen empfangen.
Der Rsyslog -Protokollierungsdienst
Die RSYSLog -Anwendung hilft bei der Zentralisierung der Protokollsammlung auf Ihrer Infrastruktur. Diese Anwendung funktioniert parallel zum sogenannten Systemd-Journald. Obwohl der Rsyslog-Dienst weiter.
Der Systemd-Journald wurde mit Systemd in RHEL 7 eingeführt und wird weiterhin mit RHEL 8 und 9 verwendet. Der Rsyslog -Dienst bietet eine Rückwärtskompatibilität für neuere Rhel -Systeme.
Der Rsyslog.Conf -Konfigurationsdatei
Lassen Sie uns nun mit dem tatsächlichen RSYSlog zu tun.Conf -Datei bei der Lage /etc/rsyslog.Conf. Diese Datei ist rückwärts kompatibel mit dem Syslog kompatibel.Conf -Datei der Sysklogd.
Die in dieser Datei angegebenen Regeln bestimmen, wie der RSYSLogd mit den Nachrichten umgeht. Allgemeine Weise kann man die Nachrichten basierend auf ihrer Quelle, ihrem Thema (Einrichtung) und Dringlichkeit (Priorität) kategorisieren. Nach der Klassifizierung kann eine Aktion zugewiesen und ausgeführt werden, wenn eine Nachricht den festgelegten Zustand qualifiziert.
Diese Datei enthält drei Hauptspezifikationen: globale Richtlinien, Module und Regeln. Der Abschnitt "Regeln" umfasst die Filter- und Aktionskomponenten.
Beispieldatei -Snippet auf RHEL 8:
$ cat /etc /rsyslog.Conf
# Rsyslog -Konfigurationsdatei
#### Module ####
Modul (Load = "Imuxsock" # bietet Unterstützung für die lokale Systemprotokollierung (e.G. Über Logger -Befehl)
# Lokale Nachrichten werden jetzt über Imjournal abgerufen.
Modul (Load = "Imjournal" # bietet Zugriff auf das Systemd Journal
#### Globale Anweisungen ####
# Wo zu Auxiliary -Dateien platziert werden soll
Global (WorkDirectory = "/var/lib/rsyslog")
# Verwenden Sie das Standard -Zeitstempelformat
Modul (load = "integriert: omfile" template = "rsyslog_traditionalFileFormat"))
# Fügen Sie alle Konfigurationsdateien in /etc /rsyslog ein.D/
integrieren (file = "/etc/rsyslogog.D/*.conf "modus =" optional ")
#### REGELN ####
# Protokollieren Sie alle Kernel -Nachrichten in der Konsole.
Globale Richtlinien
Globale Anweisungen werden verwendet, um den Rsyslogd -Daemon zu konfigurieren. Im Allgemeinen geben sie einen Wert für eine bestimmte vordefinierte Variable an, die sich auf die Funktionalität von Rsyslogd oder eine Regel auswirkt.
Modulabschnitt
Das Hinzufügen von Erweiterungen in Rsyslog ist aufgrund seiner modularen Architektur einfach. Wenn Sie die Datei öffnen, gibt es eine Zeile:
Modul (Load = "Imuxsock") # bietet Unterstützung für die lokale Systemprotokollierung
Der Zweck dieser Zeile ist es, den RSYSLog zu leiten, um das Modul „Imuxsock“ zu laden, um Nachrichten über /dev /log zu empfangen.
Dann gibt es einen Block für den UDP -Syslog -Empfang:
#module (load = "imUdp"))
#Input (type = "imUdp" port = "514")
Diese Zeilen, die mit "#" beginnen, sind jedoch Kommentare und werden nur ignoriert. Sie sagen jedoch, wie Sie den RSYSLog -Server so konfigurieren, dass die Nachrichten in einem UDP -Netzwerk empfangen werden.
Wie üblich lädt die erste Zeile das Modul mit dem Namen "IMUDP". Die zweite Zeile gibt den UDP -Port 514 als Port an, auf dem das Modul auf Protokollierungsnachrichten anhören soll. Wenn Sie diese Funktion verwenden möchten, kommentieren Sie einfach die Zeilen.
Regelnabschnitt
Am Ende der Konfigurationsdatei befindet sich ein Block, der die folgenden Zeilen enthält:
# Fügen Sie alle Konfigurationsdateien in /etc /rsyslog ein.D/
$ Includeconfig /etc /rsyslogg.D/*.Conf
Andere Dateien können in einer RSYSlog -Konfiguration hinzugefügt werden, so. Diese Richtlinie weist Rsyslogd an, alle Dateien in die zu laden /etc/rsyslog.D.
Selektoren und Aktionen
Um eine Protokollnachricht irgendwo zu senden, müssen wir eine Regel definieren, die der Nachricht entspricht. Betrachten Sie beispielsweise die folgende Zeile von /etc/syslog.D/50-Default.Conf:
*.= Debugg/var/log/debugug
Hier der erste Teil, **.= Debugug ”, ist ein Selektor. Der nächste Teil, "/Var/log/debugg", ist der Weg zu dem Ort, an dem Rsyslogd die gefilterten Nachrichten platziert.
Der Filterteil einer Regel wählt einen Teil von Syslog -Nachrichten aus. Der Aktionsteil entscheidet, welche Aktion mit diesen Nachrichten ausgeführt werden soll.
Rsyslog hat unterschiedliche Möglichkeiten, die Syslog -Nachrichten basierend auf den ausgewählten Eigenschaften zu filtern. Die Filtermethoden können basierend auf: Einrichtung/Priorität, Eigentum und Ausdrücke klassifiziert werden.
Der Teil der Aktionen gibt, wie bereits erwähnt, an, was mit den zuvor gefilterten Nachrichten zu tun ist. Aktionen können die Syslog -Nachrichten in den Protokolldateien speichern, die Syslog -Nachrichten über ein Netzwerk übertragen usw.
Den Rsyslog -Dokumentation erhalten
Eine umfassende Dokumentation der RSYSLog -Anwendung ist online zu sehen https: // www.rsyslog.com/doc/. Ein lokales Dokumentationspaket heißt jedoch rsyslog-doc kann auch auf Ihrem System installiert werden.
Um dieses Paket auf RHEL 8 zu installieren, müssen Sie ein Appstream -Repository und einen administrativen Zugriff auf Ihrem System installieren lassen. Wenn diese Anforderungen erfüllt sind, führen Sie einfach den folgenden Befehl aus, um dieses Paket zu installieren:
$ yum install Rsyslog-doc installieren
Um zu überprüfen, ob das Paket korrekt installiert ist, führen Sie den folgenden Befehl aus:
$ firefox/usr/share/doc/rsyslog/html/index.html &
Bearbeiten der Rsyslog.Conf Datei
Nehmen Sie vor dem Bearbeiten dieser Datei eine Sicherung, damit wir bis zu einem sicheren Punkt wiederherstellen können, wenn etwas schief geht.
Konfigurieren wir diese Datei für UDP. Wir öffnen jetzt diese Datei und kontrollieren die Zeilen, die UDP entsprechen:
# Bietet UDP -Syslog -Empfang
Modul (load = "imUdp")
input (type = "imUdp" port = "514")
Um diese Datei für den TCP -Empfang zu konfigurieren, werden die Zeilen, die TCP entsprechen, konfigurieren:
# Bietet TCP -Syslog -Empfang
Modul (load = "imtcp")
input (type = "imtcp" port = "514"
Abschluss
Dieses Tutorial bietet einen Überblick über den Rsyslog -Dienst unter Linux. Sie können auch auf die Hauptseiten verweisen, um die detaillierten Informationen zu diesem Service zu untersuchen.