Linux Auditd- und Unix-Systemprotokolle erfassen

In diesem Dokument wird beschrieben, wie Sie Audit-Daemon- (auditd) und Unix-Systemlogs erfassen und mit dem Chronicle-Forwarder Logs in Chronicle aufnehmen.

Die Verfahren in diesem Dokument wurden unter Debian 11.7 und Ubuntu 22.04 LTS (Jammy Jellyfish) getestet.

Logs aus Auditd und Syslog erfassen

Sie können die Linux-Hosts so konfigurieren, dass Auditd-Logs an einen Chronicle-Forwarder mit rsyslog gesendet werden.

  1. Stellen Sie den Audit-Daemon und das Framework für die Prüfungsweiterleitung mit dem folgenden Befehl bereit. Wenn Sie den Daemon und das Framework bereits bereitgestellt haben, können Sie diesen Schritt überspringen.

    apt-get install auditd audispd-plugins
    
  2. Wenn Sie das Logging aller Befehle, einschließlich Nutzer und Root, aktivieren möchten, fügen Sie /etc/audit/rules.d/audit.rules die folgenden Zeilen hinzu:

    -a exit,always -F arch=b64 -S execve
    -a exit,always -F arch=b32 -S execve
    
  3. Starten Sie die Prüfung mit folgendem Befehl neu:

    service auditd restart
    

Chronicle-Forwarder für Auditd konfigurieren

Geben Sie im Chronicle-Forwarder den folgenden Datentyp an:

  - syslog:
    common:
      enabled: true
      data_type: AUDITD
      batch_n_seconds:
      batch_n_bytes:
    tcp_address:
    connection_timeout_sec:

Weitere Informationen finden Sie unter Chronicle-Forwarder unter Linux installieren und konfigurieren.

Syslog konfigurieren

  1. Die Parameter in der Datei /etc/audisp/plugins.d/syslog.conf müssen den folgenden Werten entsprechen:

    active = yes
    direction = out
    path = /sbin/audisp-syslog
    type = always
    args = LOG_LOCAL6
    format = string
    
  2. Ändern oder erstellen Sie die Datei /etc/rsyslog.d/50-default.conf und fügen Sie am Ende der Datei die folgende Zeile hinzu:

    local6.* @@FORWARDER_IP:PORT
    

    Ersetzen Sie FORWARDER_IP und PORT durch die IP-Adresse und den Port Ihres Forwarders. Die erste Spalte gibt an, welche Logs von /var/log über rsyslog gesendet werden. Der @@ in der zweiten Spalte gibt an, dass TCP zum Senden der Nachricht verwendet wird. Verwenden Sie für UDP ein @.

  3. Zum Deaktivieren des lokalen Loggings in syslog konfigurieren Sie rsyslog. Fügen Sie dazu local6.none in die Zeile ein, die konfiguriert, was im lokalen Syslog protokolliert wird. Die Datei ist je nach Betriebssystem unterschiedlich. Für Debian ist die Datei /etc/rsyslog.conf und für Ubuntu /etc/rsyslog.d/50-default.conf:

    *.*;local6.none;auth,authpriv.none              -/var/log/syslog
    
  4. Starten Sie die folgenden Dienste neu:

    service auditd restart
    service rsyslog restart
    

Unix-Systemprotokolle erfassen

  1. Erstellen oder ändern Sie die Datei /etc/rsyslog.d/50-default.conf und fügen Sie am Ende der Datei die folgende Zeile hinzu:

    *.*   @@FORWARDER_IP:PORT
    

    Ersetzen Sie FORWARDER_IP und PORT durch die IP-Adresse Ihres Forwarders. Die erste Spalte gibt an, welche Logs von /var/log über rsyslog gesendet werden. @@ in der zweiten Spalte gibt an, dass zum Senden der Nachricht TCP verwendet wird. Verwenden Sie für UDP ein @.

  2. Führen Sie den folgenden Befehl aus, um den Daemon neu zu starten und die neue Konfiguration zu laden:

    sudo service rsyslog restart
    

Chronicle-Forwarder für Unix-Logs konfigurieren

Geben Sie im Chronicle-Forwarder den folgenden Datentyp an:

  - syslog:
    common:
      enabled: true
      data_type: NIX_SYSTEM
      batch_n_seconds:
      batch_n_bytes:
    tcp_address:
    connection_timeout_sec:

Weitere Informationen finden Sie unter Chronicle-Forwarder unter Linux installieren und konfigurieren.