Als Administratoren , IT-Supportmitarbeiter oder Verantwortlicher für den Bereich Netzwerke und Systeme haben wir etwas Grundlegendes, um jedes Ereignis im System zu verfolgen , das sowohl auf Benutzer- als auch auf Anwendungsebene oder im System selbst auftritt ereignisse
Jedes Ereignis registriert eine Reihe von Elementen, mit deren Hilfe wir die einzelnen Aktivitäten anhand von Werten wie Datum, Uhrzeit, ID, Benutzer und Ereignis detailliert bestimmen können. Auf diese Weise können wir die Verwaltung und Verwaltung wesentlich zentraler gestalten.
Wir können sehen, dass jeder Datensatz zu einer anderen Kategorie gehört, wie z. B. System, Sicherheit usw.
In Linux-Umgebungen steht uns das Dienstprogramm Rsyslog zur Verfügung, mit dem diese Ereignisse auf einfache und vollständige Weise verwaltet werden können.
Rsyslog ist in der Lage, Eingaben aus einer Vielzahl von Quellen zu akzeptieren, umzuwandeln und Ergebnisse für verschiedene Ziele zu generieren, wodurch das IT-Management optimiert wird.
RSYSLOG kann mehr als eine Million Nachrichten pro Sekunde an lokale Ziele senden, wenn eine eingeschränkte Verarbeitung angewendet wird, einschließlich entfernter Ziele.
- $ LocalHostName-Direktive [Name]: Mit dieser Direktive können wir den Hostnamen des Systems mit dem in der Direktive angegebenen überschreiben. Wenn die Anweisung mehrmals gegeben wird, werden alle bis auf die letzte ignoriert.
- Unterstützung für HDFS von hinzugefügtem Hadoop.
- Es verfügt über ein impstat-Modul zum Ausführen periodischer Statistiken in den Rsyslog-Zählern.
- Es hat das IMPTCP-Plugin.
- Es enthält einen neuen Typ von “String-Generator” -Modul, mit dem die Ausgabeverarbeitung beschleunigt wird.
- Unterstützt OSX und Solaris.
- Möglichkeit, benutzerdefinierte Nachrichtenanalysatoren zu erstellen.
- Unterstützung mehrerer Regelsätze für imudp.
- Neue Schnittstelle für Transaktionsausgabemodule mit überragender Leistung.
- Multithreading
- Kompatibel mit den Protokollen TCP, SSL, TLS, RELP
- Unterstützt MySQL, PostgreSQL, Oracle und mehr
- Filtern Sie einen beliebigen Teil der Syslog-Nachricht
- Voll konfigurierbares Ausgabeformat
- Geeignet für Broadcast-Ketten der Enterprise-Klasse
- Anlagen- oder Prioritätsreporter
- Eigenschaftsbasierte Filter
- Filter basierend auf Ausdrücken
Der Filter of Facility wird durch das interne Subsystem von Linux dargestellt, das für die Erstellung der Datensätze zuständig ist. Wir haben die folgenden Optionen:
- auth / authpriv = Dies sind die Nachrichten, die von Authentifizierungsprozessen erzeugt werden
- cron = Dies sind Datensätze, die Cron-Tasks zugeordnet sind
- daemon = Nachrichten bezüglich der Ausführung von Systemdiensten
- kernel = Zeigt Nachrichten vom Linux-Kernel an
- mail = Enthält Mailserver-Nachrichten
- syslog = Nachrichten, die sich auf Syslog oder andere Daemons beziehen
- lpr = Deckt Drucker- oder Druckservermeldungen ab
- local0 – local7 = Benutzerdefinierte Nachrichten unter der Kontrolle des Administrators zählen
Prioritäts- oder Schweregradstufen mit Rsyslog werden einem Schlüsselwort und einer Nummer wie folgt zugewiesen:
- emerg = Notfall – 0
- alert = Warnungen – 1
- err = Errors – 3
- warn = Warnungen – 4
- notice = Benachrichtigung – 5
- info = Information – 6
- debbug = Debug – 7
1. So konfigurieren und überprüfen Sie den Status von Rsyslog unter Linux
Der Rsyslog-Daemon wird in den meisten Linux-Distributionen automatisch installiert. Andernfalls müssen die folgenden Befehle ausgeführt werden:
sudo apt-get installiere Rsyslog
sudo yum installiere Rsyslog
Wir können den aktuellen Status von Rsyslog überprüfen, indem wir die folgende Zeile ausführen:
systemctl status rsyslog.service
service rsyslog status /etc/init.d/rsyslog status
Wenn der Status des Rsyslog-Dienstes inaktiv ist, können wir ihn starten, indem Sie Folgendes ausführen:
systemctl rsyslog.service starten
Dienst rsyslog starten /etc/init.d/rsyslog start
2. Konfigurieren von Rsyslog unter Linux
Um ein rsyslog-Programm für die Ausführung im Servermodus zu konfigurieren, müssen Sie die Konfigurationsdatei im Verzeichnis /etc/rsyslog.conf bearbeiten.
Wir können mit dem gewünschten Editor zugreifen:
sudo nano /etc/rsyslog.conf
Dort werden wir folgende Änderungen vornehmen. Suchen und entfernen Sie das Zeichen (#) in den folgenden Zeilen, um den Empfang von UDP-Registrierungsnachrichten auf Port 514 zu ermöglichen. Standardmäßig wird der UDP-Port von Syslog zum Senden und Empfangen von Nachrichten verwendet:
$ ModLoad imudp $ UDPServerRun 514
Das UDP-Protokoll ist für den Datenaustausch über ein Netzwerk nicht zuverlässig. Daher können wir Rsyslog so konfigurieren, dass Protokollnachrichten über das TCP-Protokoll an einen Remoteserver gesendet werden. Um das TCP-Empfangsprotokoll zu aktivieren, werden die folgenden Zeilen entfernt:
$ ModLoad imtcp $ InputTCPServerRun 514
Dadurch kann der rsyslog-Dämon einen TCP-Socket an Port 514 binden und überwachen.
Beide Protokolle können in rsyslog aktiviert werden, um gleichzeitig unter Linux ausgeführt zu werden.
Wenn angegeben werden muss, welche Absender auf den rsyslog-Daemon zugreifen dürfen, müssen die folgenden Zeilen hinzugefügt werden:
$ AllowedSender TCP, 127.0.0.1, 192.168.0.5/24, * .domain.com
Zu diesem Zeitpunkt muss eine neue Vorlage erstellt werden, die vom rsyslog-Daemon analysiert wird, bevor die eingehenden Datensätze empfangen werden. Diese Vorlage sollte dem lokalen Rsyslog-Server mitteilen, wo die eingehenden Protokollnachrichten gespeichert werden sollen. Diese Vorlage wird nach der Zeile $ AllowedSender eingefügt:
$ template Incoming-logs, "/ var / log /% HOSTNAME% /% PROGRAMNAME% .log" Eingehende Protokolle & ~
Um nur die von kern generierten Nachrichten zu registrieren, fügen wir Folgendes hinzu. Mit den obigen Anweisungen werden die empfangenen Datensätze von der Vorlage analysiert und im lokalen Dateisystem im Verzeichnis / var / log / unter folgendem Pfad gespeichert:% HOSTNAME% und% PROGRAMNAME%.
kern. *? Incoming-Logs
Wir können die Änderungen mit der folgenden Tastenkombination speichern:
+ O Strg + O
Wir verlassen den Editor mit:
+ X Strg + X
3. Starten Sie den Dienst neu und überprüfen Sie die Rsyslog-Ports unter Linux
Wenn wir eine Änderung vornehmen, müssen wir den Dienst neu starten, indem wir eine der folgenden Optionen ausführen:
sudo service rsyslog restart sudo systemctl Rsyslog neu starten
Um die von Rsyslog verwendeten Ports zu überprüfen, führen wir Folgendes aus:
sudo netstat -tulpn | grep rsyslog
Wie wir angegeben haben, wird der Port 514 verwendet. Wir müssen ihn in der Firewall für die Verwendung mit den folgenden Zeilen aktivieren.
firewall-cmd --permanent --add-port = 514 / tcp firewall-cmd-reload
ufw erlauben 514 / tcp ufw erlauben 514 / udp
Wenn wir IPTables verwenden:
iptables -AINPUT -p tcp -m tcp --dport 514 -j ACCEPT iptables -A-INPUT -p udp --dport 514 -j ACCEPT
Auf diese Weise haben wir Rsyslog unter Linux installiert, um die verschiedenen Arten von Datensätzen zu verwalten, die dort ständig generiert werden.