Website-Suche

Verwendung von Logwatch für die grundlegende Sicherheitsüberwachung unter Linux


Linux-Systeme schreiben viele Informationen in Protokolldateien. In der Regel verfügt jeder Systemdienst, den Sie installieren, über eine eigene Protokolldatei oder einen Satz von Protokolldateien. Dies gilt zusätzlich zu allen Standardprotokollen, die generiert werden, z. B. die von dmesg, dem boot-Protokoll, dem Paket-Manager-Protokoll usw. In diesen Dateien ist es üblich, Tausende von Einträgen über einen sehr kurzen Zeitraum zu sehen.

Obwohl sich all diese Ereignisprotokollierung als sehr hilfreich erweist, um Einblicke in das zu erhalten, was genau in Ihrem System vor sich geht (insbesondere, wenn ein Problem auftritt), werden die Protokolldateien oft massiv größer und es wird sehr schwierig, sie effektiv zu durchsuchen. Zum Beispiel könnte es relevante Warnungen geben, die irgendwo in den Protokolldateien vergraben sind, aber viel Glück beim Finden unter den Hunderten von anderen Einträgen. Dies wäre eine sehr manuelle und zeitaufwändige Aufgabe.

Logwatch entlastet den Systemadministrator, indem es die Log-Dateien für Sie überwacht. Es überwacht die von Ihnen angegebenen Protokolldateien und benachrichtigt Sie dann per E-Mail, wenn ein Eintrag auftritt, der Ihre Aufmerksamkeit erfordert. Sobald wir Logwatch nach unseren Wünschen konfiguriert haben, sucht es nach den Ereignissen, auf die wir achten müssen, sodass wir dies nicht mehr manuell tun müssen. In diesem Tutorial gehen wir Schritt für Schritt auf die Anleitung zur Installation und Konfiguration von Logwatch auf einem Linux-System ein.

In diesem Tutorial lernen Sie:

  • So installieren Sie Logwatch auf allen gängigen Linux-Distributionen
  • So konfigurieren Sie Logwatch
  • So führen Sie Logwatch manuell mit dem logwatch-Befehl aus
  • So planen Sie die regelmäßige Logwatch-Überwachung mit cron

So installieren Sie Logwatch

Das erste, was wir tun müssen, ist Logwatch zu installieren, da es unter Linux nicht standardmäßig installiert ist. Glücklicherweise kann es über das Standard-Software-Repository jeder großen Linux-Distribution installiert werden.

Sie können den entsprechenden Befehl unten verwenden, um Logwatch mit dem Paketmanager Ihres Systems zu installieren.

So installieren Sie Logwatch unter Ubuntu, Debian und Linux Mint:


sudo apt update
sudo apt install logwatch

So installieren Sie Logwatch auf Fedora, CentOS, AlmaLinux, Rocky Linux und Red Hat:


sudo dnf install logwatch

So installieren Sie Logwatch auf Arch Linux und Manjaro:


sudo pacman -S logwatch

Möglicherweise werden Sie während der Erstinstallation von Logwatch aufgefordert, die E-Mail-Einstellungen zu konfigurieren. Wenn dies der Fall ist, wählen Sie den Typ des E-Mail-Servers aus, den Sie verwenden möchten, zusammen mit der entsprechenden Einstellung, z. B. der Ziel-E-Mail-Adresse, die von Logwatch verwendet werden soll:

So konfigurieren Sie Logwatch

Nachdem Logwatch jetzt auf unserem System installiert ist, gehen wir einige grundlegende Konfigurationen durch, damit wir damit beginnen können, es zur Überwachung unserer Protokolldateien zu verwenden.

  1. Die Standardkonfigurationsdatei für Logwatch befindet sich unter /usr/share/logwatch/default.conf/logwatch.conf. Anstatt Änderungen direkt an dieser Datei vorzunehmen, erstellen wir eine Kopie davon und wenden unsere Änderungen auf die neue Datei an. Dadurch wird sichergestellt, dass zukünftige Updates keine unserer Einstellungen überschreiben. So kopieren Sie die Datei an den richtigen Speicherort:

    
    sudo cp /usr/share/logwatch/default.conf/logwatch.conf /etc/logwatch/conf/
    
  2. Verwenden Sie als Nächstes nano oder Ihren bevorzugten Texteditor, um die Datei zu öffnen, damit wir mit den Änderungen beginnen können:

    
    sudo nano /etc/logwatch/conf/logwatch.conf
    
  3. Die erste Einstellung, die wir in Betracht ziehen sollten, ist Ausgabe, und wir können zwischen stdout, mail und file wählen. Dadurch wird gesteuert, ob die Ausgabe von Logwatch an den Standardausgang, per E-Mail oder an eine Datei gesendet wird. Die Konfiguration wird wie folgt angewendet:

    
    Output = stdout
    OR
    Output = mail
    OR
    Output = file
    

    Wählen Sie Ihre bevorzugte Ausgabemethode, bevor Sie mit den anderen Einstellungen fortfahren.

  4. Als nächstes folgen die E-Mail-Konfigurationseinstellungen. Sie müssen sich nur mit diesen Einstellungen herumschlagen, wenn Sie im obigen Schritt Ausgabe=Mail konfiguriert haben.

    
    MailTo = root
    MailFrom = Logwatch
    
  5. Wenn Sie sich in Schritt 1 mit der Option Output=file dafür entschieden haben, die Logwatch-Ausgabe an eine Datei zu senden, müssen Sie den Wert Filename festlegen, um den Pfad anzugeben, in dem Logwatch die Ausgabe speichern soll.

    
    Filename = /tmp/logwatch
    
  6. Die andere Einstellung, die wir unbedingt konfigurieren müssen, ist LogDir. Diese Einstellung teilt Logwatch mit, wo die Protokolldateien gespeichert sind, die Sie überwachen möchten. Wir können so viele LogDir-Einstellungen verwenden, wie wir möchten, falls wir mehrere Verzeichnisse haben, die Logwatch für uns überwachen soll.

    
    LogDir = /var/log
    LogDir = /some/other/log/path
    

Natürlich sind auch viele andere Einstellungen in dieser Konfigurationsdatei vorhanden, aber die oben genannten sind einige der wichtigsten. Fühlen Sie sich frei, die Konfigurationsdatei selbst durchzulesen, sich die bereitgestellten Beispiele anzusehen und die erforderlichen Änderungen nach Belieben vorzunehmen.

Ausführen von Logwatch

Nachdem Logwatch konfiguriert wurde, können wir es verwenden, indem wir den Befehl logwatch ausführen. Es wird auch empfohlen, einige Optionen in den Befehl einzuschließen, z. B. --detail und --range, um die Detailgenauigkeit anzugeben, die in der Ausgabe angezeigt werden soll, bzw. den Datumsbereich der zu analysierenden Protokolle.


sudo logwatch --detail Low --range today

Selbst wenn wir nur logwatch auf unserem isolierten Testsystem laufen lassen, bekommen wir einige interessante Ergebnisse zu sehen. Der folgende Screenshot zeigt, dass kürzlich drei neue Softwarepakete installiert wurden, und zeigt auch eine Liste der Benutzerauthentifizierungen sowie fehlgeschlagener Anmeldeversuche.

NOTE
Logwatch ist eine einfache Implementierung und ideal für mittelgroße Server und Infrastrukturen, die keine robuste Überwachungslösung benötigen, aber dennoch eine Möglichkeit suchen, Mitarbeiter über wichtige Ereignisse zu informieren. Wenn Sie etwas Fortgeschrittenes benötigen, sollten Sie sich den ELK-Stack und zusätzliche Überwachungstechniken ansehen.

Wenn wir etwas weiter nach unten scrollen, sehen wir eine Liste von Befehlen, die mit Administratorrechten ausgeführt wurden:

Auf einem Produktionssystem mit mehreren Benutzern und konstantem Datenverkehr würden Sie wahrscheinlich jeden Tag viel mehr Nachrichten erhalten.

Wenn Sie logwatch nach Zeitplan ausführen möchten, können Sie cron so einrichten, dass dies geschieht:


sudo crontab -e

Der folgende Cron-Eintrag würde logwatch jeden Tag um Mitternacht ausführen:


0 0 * * * logwatch --detail Low --range today

Überprüfen Sie dann das konfigurierte Verzeichnis, in dem die Logwatch-Ausgabe gespeichert ist, um zu sehen, welche Daten von Logwatch abgefangen wurden. Wenn Sie die E-Mail-Option konfiguriert haben, erhalten Sie den Logwatch-Bericht jeden Tag in Ihrem Posteingang.

Abschließende Gedanken

In diesem Tutorial haben wir gesehen, wie Sie Logwatch für die grundlegende Sicherheitsüberwachung auf einem Linux-System verwenden. Dazu gehörten die Installation des Programms Logwatch, die Konfiguration nach unseren Bedürfnissen und das Verweisen auf die Protokolldateien, die wir überwachen möchten, und schließlich die manuelle Verwendung des Befehls logwatch. Wir haben auch gelernt, wie man Logwatch in Cron einrichtet, damit es regelmäßig läuft. Logwatch spart Administratoren viel Zeit und ermöglicht es uns, Sicherheitsprobleme, die wir normalerweise manuell entdecken müssten, leicht zu identifizieren.

Verwandte Artikel: