Die wichtigsten Event und Audit-Logging Tools unter Linux
Auditd Audit-Logging-Software
Auditd ist ein Audit-Logging-Tool unter Linux, das es ermöglicht, Systemereignisse aufzuzeichnen und zu überwachen. Es bietet eine granulare Kontrolle und Überwachung von Änderungen an Dateien, Verzeichnissen und Benutzeraktivitäten.
Einer der Vorteile von Auditd ist seine Fähigkeit, eine umfassende Audit-Trail-Datei zu erstellen, die Informationen über Systemereignisse enthält, wie z.B. wer, was und wann ausgeführt wurde. Außerdem kann Auditd benutzerdefinierte Regeln erstellen, um spezifische Systemereignisse zu überwachen.
Ein Nachteil von Auditd ist, dass es aufgrund seiner granularen Kontrolle viel Systemressourcen benötigt. Dies kann die Systemleistung beeinträchtigen, insbesondere bei stark frequentierten Systemen.
Auditd funktioniert, indem es Systemereignisse aufzeichnet und in der Audit-Trail-Datei speichert. Ein Beispiel für eine Regel, die mit Auditd erstellt werden kann, ist das Überwachen von Änderungen an wichtigen Systemdateien wie /etc/passwd und /etc/shadow.
Im Vergleich zu anderen Audit-Logging-Tools bietet Auditd eine granulare Kontrolle und Überwachung von Systemereignissen und die Möglichkeit, benutzerdefinierte Regeln zu erstellen.
Auditd ist geeignet für Organisationen, die eine hohe Sicherheitsstufe benötigen und die Möglichkeit haben möchten, die Systemaktivität genau zu überwachen.
Installation von Auditd unter Linux
Um Auditd über unterschiedliche Paketmanager zu installieren, können folgende Befehle verwendet werden:
- Unter Debian/Ubuntu: sudo apt-get install auditd
- Unter Fedora: sudo dnf install audit
- Unter Arch Linux: sudo pacman -S audit
Wie konfiguriere ich Auditd?
Um Auditd zu konfigurieren, gibt es einige Schritte, die durchgeführt werden müssen:
- Konfigurationsdatei erstellen: Die Konfigurationsdatei kann mit einem Texteditor wie vim oder nano erstellt werden. Die Datei sollte im Pfad /etc/audit/auditd.conf erstellt werden.
- Regeln definieren: Nachdem die Konfigurationsdatei erstellt wurde, müssen Regeln definiert werden, um zu bestimmen, was überwacht werden soll. Dies kann durch Bearbeiten der Datei /etc/audit/rules.d/audit.rules erfolgen.
- Service neu starten: Nachdem die Konfiguration geändert wurde, muss der Auditd-Dienst neu gestartet werden, damit die Änderungen übernommen werden. Der Befehl zum Neustart des Dienstes lautet normalerweise
systemctl restart auditd
.
Hier sind einige spezifische Konfigurationsbeispiele:
- Überwachung von Dateiänderungen: Um Änderungen an einer bestimmten Datei zu überwachen, können Sie folgende Regel hinzufügen:
-w /path/to/file -p wa -k file-changes
Dies überwacht die Datei im Pfad /path/to/file auf Schreib- und Attributänderungen und protokolliert sie unter dem Schlüsselwort „file-changes“.
- Überwachung von Systemaufrufen: Um Systemaufrufe zu überwachen, können Sie folgende Regel hinzufügen:
-a exit,always -F arch=b64 -S execve -k system-calls
Dies protokolliert alle Ausführungen von Programmen und Skripten auf dem System und markiert sie mit dem Schlüsselwort „system-calls“.
- Überwachung von Benutzeraktivitäten: Um Aktivitäten eines bestimmten Benutzers zu überwachen, können Sie folgende Regel hinzufügen:
-w /home/user -k user-activity
Dies überwacht alle Aktivitäten im Home-Verzeichnis des Benutzers „user“ und protokolliert sie unter dem Schlüsselwort „user-activity“.
- Überwachung der Verwendung des „chroot“ -Befehls:bash
-
-w /usr/sbin/chroot -p x -k chroot_exec
- Überwachung von Systemaufrufen, die mit Dateizugriffen zusammenhängen:
-a always,exit -F arch=b64 -S open,openat,truncate,ftruncate,creat,chmod,chown -F key=file_access
- Überwachung von Benutzeranmeldungen:
-w /var/log/wtmp -p wa -k logins
- Überwachung von Netzwerkaktivitäten:
-w /usr/sbin/tcpdump -p x -k network
Es gibt viele weitere Möglichkeiten zur Konfiguration von Auditd, je nach den spezifischen Überwachungsanforderungen. Es ist wichtig zu beachten, dass eine zu umfangreiche Überwachung zu einer großen Menge an Protokolldaten führen kann, die schwer zu analysieren sein können. Es ist sinnvoll, nur die notwendigen Ereignisse zu überwachen.
Wer benutzt Auditd?
Auditd wird von verschiedenen Organisationen und Unternehmen genutzt, um die Sicherheit ihrer Systeme zu verbessern und die Einhaltung von Compliance-Anforderungen zu gewährleisten. Dazu gehören beispielsweise Regierungsbehörden, Finanzinstitute und Unternehmen aus verschiedenen Branchen.
Laut einer Umfrage von „The Linux Foundation“ aus dem Jahr 2020 haben 55% der Befragten Auditd eingesetzt, um Compliance-Anforderungen zu erfüllen, und 47% gaben an, dass Auditd für ihre Sicherheitsüberwachung und -analyse unerlässlich sei. Eine weitere Umfrage von „Red Hat“ aus dem Jahr 2019 ergab, dass 74% der Befragten Auditd zur Einhaltung von Compliance-Anforderungen nutzen.
Es gibt keine offiziellen Statistiken darüber, wie viele Organisationen Auditd tatsächlich einsetzen, da dies oft von den jeweiligen IT-Teams oder Sicherheitsverantwortlichen entschieden wird. Wir haben nicht geprüft, wer bei diesen Umfragen aktiv mitgemacht hat. Jedoch deuten die Umfrageergebnisse darauf hin, dass Auditd bei vielen Unternehmen und Organisationen eine wichtige Rolle in Bezug auf Compliance und Sicherheit spielt.
Am Ende ist es auch eine Frage der Konfigurierbarkeit. Wenn es viele IT-Profis nutzen, dann muss man als IT-Hobby-Admin nicht unbedingt damit klarkommen, da man ggf. kein Team zur Verfügung hat und zuviel Zeit für die Planung und Konfiguration benötigt.
Quellen:
- The Linux Foundation. (2020). Open Source Security and Risk Analysis: Report. https://www.linuxfoundation.org/wp-content/uploads/2020/08/2020-Open-Source-Security-and-Risk-Analysis-Report.pdf
- Red Hat. (2019). 2019 Red Hat Enterprise Linux (RHEL) Security Trends Report. https://www.redhat.com/cms/managed-files/rh-customer-security-trends-survey-2019-f21533-en.pdf
Nächste Seite: Was ist Syslog-ng und wie funktioniert es?
Syslog-ng Audit Logging
Syslog-ng ist eine Open-Source-Software, die als zentrales Protokollsystem auf Linux- und Unix-Systemen dient. Die Software bietet die Möglichkeit, Log-Meldungen von verschiedenen Quellen zu sammeln, zu analysieren und zu speichern. In diesem Artikel werde ich auf die Vor- und Nachteile von Syslog-ng, dessen Funktionsweise, Vergleich zu anderen Audit-Logging-Tools, Zielgruppen und die Installation und Konfiguration von Syslog-ng eingehen.
Vor- und Nachteile von Syslog-ng
Einer der größten Vorteile von Syslog-ng ist die Möglichkeit, Protokolldaten von verschiedenen Quellen zu sammeln und zentral zu speichern. Dies ermöglicht es Systemadministratoren, potenzielle Sicherheitsbedrohungen und Fehler schnell zu erkennen und zu beheben. Syslog-ng bietet auch eine hohe Flexibilität bei der Protokollierung von Daten, einschließlich der Möglichkeit, verschiedene Filter zu definieren und Protokolldaten in verschiedene Formate umzuwandeln. Ebenfalls ist die Software leichtgewichtig und ressourcenschonend.
Ein möglicher Nachteil von Syslog-ng ist die Tatsache, dass die Konfiguration etwas komplex sein kann. Dies erfordert möglicherweise Kenntnisse in der Konfiguration von Linux-Systemen und Grundkenntnisse in der Programmierung.
Funktionsweise von Syslog-ng
Syslog-ng sammelt Protokolldaten von verschiedenen Quellen, wie z.B. Systemprotokolle, Anwendungsprotokolle, Netzwerkgeräte und andere Quellen. Diese Protokolldaten werden dann in ein zentrales Protokollsystem geschrieben, wo sie analysiert und gespeichert werden können. Syslog-ng bietet eine Vielzahl von Filtern und Optionen zur Anpassung der Protokollierung, um nur relevante Daten zu speichern.
Vergleich zu anderen Audit-Logging-Tools
Im Vergleich zu anderen Audit-Logging-Tools bietet Syslog-ng eine größere Flexibilität bei der Protokollierung von Daten. Es bietet auch eine umfassende Filter- und Verarbeitungsoptionen, um nur relevante Daten zu speichern. Im Vergleich zu anderen Tools wie Auditd ist Syslog-ng jedoch weniger granular und kann möglicherweise nicht alle Anforderungen an die Sicherheitsüberwachung erfüllen.
Für wen ist Syslog-ng geeignet
Syslog-ng ist für Systemadministratoren und Organisationen geeignet, die eine zentrale Protokollierung und Überwachung von verschiedenen Quellen benötigen. Die Software ist besonders nützlich für Unternehmen, die eine Vielzahl von Systemen und Anwendungen betreiben und eine effiziente Möglichkeit benötigen, um Protokolldaten zu sammeln und zu analysieren.
Installation und Konfiguration von Syslog-ng unter Linux
Syslog-ng kann über verschiedene Paketmanager installiert werden, wie z.B. apt, yum oder zypper, je nach verwendeter Linux-Distribution. Die Konfiguration erfolgt durch Anpassung der Konfigurationsdateien unter /etc/syslog-ng/syslog-ng.conf. Es gibt zahlreiche Tutorials und Handbücher im Internet, die die Konfiguration von Syslog-ng detailliert beschreiben.
Nächster Teil: Rsyslog