The Geek Diary

Der Systemprotokoll-Daemon ist für die Protokollierung der von Anwendungen oder dem Kernel generierten Systemmeldungen verantwortlich. Der Systemprotokoll-Daemon unterstützt auch die Remote-Protokollierung. Die Nachrichten werden nach Einrichtung und Priorität unterschieden. Grundsätzlich sind die von syslog verarbeiteten Protokolle im Verzeichnis /var/log/ auf Linux-Systemen verfügbar:

# ls /var/logacpid cron.1 maillog.3 rpmpkgs.3 spooler.3anaconda.log cron.2 maillog.4 rpmpkgs.4 spooler.4anaconda.syslog cron.3 messages sa squidanaconda.xlog cron.4 messages.1 samba tallylogaudit cups messages.2 scrollkeeper.log vboxboot.log dmesg messages.3 secure wtmpboot.log.1 faillog messages.4 secure.1 Xorg.0.logboot.log.2 gdm oracle-validated secure.2 Xorg.0.log.oldboot.log.3 httpd pm secure.3 YaST2boot.log.4 lastlog ppp secure.4 yum.logbtmp mail prelink setroubleshootconman maillog rpmpkgs spoolerconman.old maillog.1 rpmpkgs.1 spooler.1cron maillog.2 rpmpkgs.2 spooler.2

wobei einige der Protokolle in einem Unterverzeichnis wie cups, samba, httpd abgelegt werden. Unter den Protokollen unter / var / log ist / var /log /messages das häufigste, da dort die Kernel- / Kernsystemprotokolle gespeichert werden. Die Kernelmodule werden im Allgemeinen auch dort abgelegt. Für die Problemdiagnose / -überwachung ist / var / log / messages die primäre zu untersuchende Protokolldatei.

Der Systemprotokoll-Daemon / -Dienst und seine Konfigurationsdatei unterscheiden sich je nach verwendeter Linux-Version, dh:

RHEL 5: syslogd - /etc/syslog.confRHEL 6: rsyslogd - /etc/rsyslog.conf

Rsyslog

Rsyslog ist der neue Logging-Daemon, der RHEL6 startet, um mit dem alten syslog-ng-Daemon zu konkurrieren. Einige der Vorteile, die rsyslog daemon gegenüber syslog-ng bietet, sind:

1. Zuverlässige Vernetzung
– Rsyslog verwendet TCP anstelle von UDP, die zuverlässiger ist. TCP verwendet die Acknowledgment- und Retransmission-Funktionen.
– mit Rsyslog Daemon können Sie mehrere Ziel-Hosts / Dateien für die Nachrichtenübermittlung angeben, wenn rsyslogd nicht in der Lage ist, eine Nachricht an ein bestimmtes Ziel zu liefern.

2. Precision
– es ist möglich, Nachrichten auf einem beliebigen Teil der Nachricht zu filtern, anstatt die Priorität der Nachricht und der ursprünglichen Anlage.
– Unterstützung für präzise Zeitstempel, um Nachrichten, die der Syslog-Daemon zu protokollieren.

3. Weitere Features
– TLS-Verschlüsselung
– Fähigkeit, SQL-Datenbanken anmelden.

rsyslog.conf

Die Konfigurationsdatei – /etc/rsyslog.conf für den rsyslogd-Daemon wird verwendet, um alle Nachrichten zu verarbeiten. Die Konfigurationsdatei enthält grundsätzlich Regelanweisungen, die wiederum 2 Dinge bereitstellen:

1 . Selektoren
– welche Nachrichten entsprechen.
– Selektor besteht aus einer Einrichtung und Priorität durch einen Punkt getrennt (.)(z. mail.info)
2. aktionen
– was tun mit übereinstimmenden Nachrichten?
– normalerweise ein Ziel zum Protokollieren der Nachricht (Datei auf dem lokalen Computer oder einem Remote-Host)

Selektoren und Aktionen

Selektoren bestehen aus 2 Dingen Einrichtungen und Prioritäten. Sie geben an, welche Nachrichten übereinstimmen sollen. Das Feld Aktion gibt an, welche Aktion auf die übereinstimmende Nachricht angewendet werden soll. Zum Beispiel :

kern.debug /var/log/kernlog

– Die Nachrichten mit der Möglichkeit Kernel und Priorität debug werden in der Datei /var/log/kernlog protokolliert.
– Prioritätsanweisungen sind hierarchisch in Selektoren. Rsyslog stimmt mit allen Nachrichten mit der angegebenen Priorität und höher überein. Daher werden alle Nachrichten vom Kernel mit der Priorität debug und höher protokolliert. Da Debug die niedrigste Priorität hat, werden alle Nachrichten mit dem Kern abgeglichen.
– Eine andere Möglichkeit, dies zu tun, ist das Sternchen (*) zu verwenden. Beispiel:

kern.* /var/log/kernlog

– Mehrere Selektoren können in einer einzigen Zeile angegeben werden, die durch Semikolons getrennt ist. Dies ist nützlich, wenn dieselbe Aktion auf mehrere Nachrichten angewendet werden muss.
– wenn eine Datei im Aktionsfeld aufgeführt ist, werden die übereinstimmenden Nachrichten in die Datei geschrieben.
– Es können andere Geräte wie FIFO, Terminal usw., um die Nachrichten zu schreiben.
– Wenn ein Benutzername im Aktionsfeld aufgeführt ist, werden die übereinstimmenden Nachrichten an die Benutzer alle Terminals gedruckt, wenn sie angemeldet sind.
– (*) im Aktionsfeld gibt

Einrichtungen

Die Anlage wird verwendet, um anzugeben, welche Art von Programm oder eine Anwendung erzeugt die Nachricht. Dadurch kann der Syslog-Daemon verschiedene Quellen unterschiedlich behandeln. In der folgenden Tabelle sind die Standardeinrichtungen und ihre Beschreibung aufgeführt :

Facility Description
auth/authpriv security/authorization messages (private)
cron clock daemon (crond and atd messages)
daemon messages from system daemons without separate facility
kern kernel messages
local0 – local7 reserved for local use
lpr line printer subsystem
mail messages from mail daemons
news USENET nachrichten-Subsystem
syslog intern vom Systemprotokoll-Daemon generierte Nachrichten
Benutzer generische Nachrichten auf Benutzerebene
uucp UUCP-Subsystem

Priorität

Die Priorität einer Nachricht gibt die Wichtigkeit dieser Nachricht an. In der folgenden Tabelle sind die Standardprioritäten und ihre Bedeutung aufgeführt :

Priority Description
emerg system is unusable
alert action must be taken immediately
crit critical conditions
err error conditions
warning warning conditions
notice normal but significant importance
info informational messages
debug debugging messages

Log Rotation

Log-Dateien wachsen regelmäßig im Laufe der Zeit und müssen daher regelmäßig getrimmt werden. Linux bietet ein Dienstprogramm, um diese Funktionalität ohne Benutzereingriff bereitzustellen. Das logrotate-Programm kann verwendet werden, um die Protokolldateirotation zu automatisieren. Die grundlegende Logrotate-Konfiguration erfolgt in der Konfigurationsdatei /etc/logrotate.conf. In der Konfigurationsdatei können wir Optionen festlegen, z. B. wie häufig Protokolle gedreht und wie viele alte Protokolle aufbewahrt werden sollen.

# cat /etc/logrotate.confweeklyrotate 4createinclude /etc/logrotate.d/var/log/wtmp { monthly minsize 1M create 0664 root utmp rotate 1}

Gemäß der obigen Logrotate-Konfigurationsdatei werden die Protokolle jede Woche gedreht (Umbenennen des vorhandenen Protokolls in Dateiname.minsize 1M – logrotate läuft und schneidet die Nachrichten-Dateien, wenn die Dateigröße gleich oder größer als 1 MB ist.
rotate 4 – halten Sie die letzten 4 Dateien beim Drehen.
create – Erstellen Sie eine neue Datei beim Drehen mit der angegebenen Berechtigung und Eigentum.
include – fügen Sie die hier genannten Dateien für den Dämon spezifische Protokollrotationseinstellungen.

# ls -l /var/log/messages*-rw------- 1 root root 1973 Jun 10 15:07 /var/log/messages-rw------- 1 root root 10866 Jun 6 04:02 /var/log/messages.1-rw------- 1 root root 19931 May 30 04:02 /var/log/messages.2-rw------- 1 root root 238772 May 23 04:02 /var/log/messages.3-rw------- 1 root root 171450 May 14 18:29 /var/log/messages.4

– Der Logrotate-Daemon liest hauptsächlich die gesamte Konfiguration aus der Datei /etc/logrotate.conf und enthält dann Daemon-spezifische Konfigurationsdateien aus /etc/logrotate.d/ Verzeichnis.
– Die logrotate Daemon zusammen mit Rotation und Entfernung von alten Protokollen, ermöglicht die Komprimierung von Log-Dateien.
– Der Daemon läuft täglich von /etc/cron.täglich / logrotate.

Logwatch

– RHEL-Systeme werden auch mit Logwatch-Paketen ausgeliefert.
– Logwatch wird verwendet, um die Protokolle zu analysieren, um alle interessanten Nachrichten zu identifizieren.
– Logwatch kann so konfiguriert, Logfiles von beliebten Diensten und E-Mail-Administrator die Ergebnisse zu analysieren.
– Es kann auf stündlicher oder nächtlicher Basis für verdächtige Aktivitäten konfiguriert werden. Standardmäßig wird es in einem RHEL-System jede Nacht ausgeführt und der Bericht wird an den Root-Benutzer gesendet.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht.