Nix System Red Hat-Logs erfassen

Unterstützt in:

In diesem Dokument wird beschrieben, wie Sie RHEL Server-Logs (Unix-System) mit Bindplane in Google Security Operations aufnehmen. Der Parser nimmt Syslog- und JSON-formatierte Logs auf, initialisiert eine Vielzahl von UDM-Feldern mit leeren Strings, führt mehrere Stringersetzungen im Feld message durch und versucht dann, die Nachricht als JSON zu parsen. Wenn das JSON-Parsing fehlschlägt, werden Grok-Muster verwendet, um Felder basierend auf dem Inhalt von message und event_details.original zu extrahieren. Die extrahierten Felder werden dann basierend auf dem Ereignistyp und verschiedenen bedingten Prüfungen der UDM zugeordnet. Dabei werden verschiedene Logformate und ‑strukturen aus verschiedenen Unix-Systemprozessen und ‑diensten verarbeitet.

Hinweis

Folgende Voraussetzungen müssen erfüllt sein:

  • Google SecOps-Instanz
  • Wenn die Ausführung hinter einem Proxy erfolgt, sind die Firewallports geöffnet.
  • Privilegierter Zugriff auf einen RHEL-Server

Authentifizierungsdatei für die Google SecOps-Datenaufnahme abrufen

  1. Melden Sie sich in der Google SecOps-Konsole an.
  2. Rufen Sie die SIEM-Einstellungen > Collection Agents auf.
  3. Laden Sie die Authentifizierungsdatei für die Aufnahme herunter. Speichern Sie die Datei sicher auf dem System, auf dem Bindplane installiert wird.

Google SecOps-Kundennummer abrufen

  1. Melden Sie sich in der Google SecOps-Konsole an.
  2. Rufen Sie die SIEM-Einstellungen > Profile auf.
  3. Kopieren und speichern Sie die Kunden-ID aus dem Bereich Organisationsdetails.

BindPlane-Agent installieren

Linux-Installation

  1. Öffnen Sie ein Terminal mit Root- oder sudo-Berechtigungen.
  2. Führen Sie dazu diesen Befehl aus:

    sudo sh -c `$(curl -fsSlL https://github.com/observiq/bindplane-agent/releases/latest/download/install_unix.sh)` install_unix.sh
    

Zusätzliche Installationsressourcen

Weitere Installationsoptionen finden Sie im Installationsleitfaden.

Bindplane-Agenten für die Aufnahme von Syslog-Daten und das Senden an Google SecOps konfigurieren

  1. Rufen Sie die Konfigurationsdatei auf:
    • Suchen Sie die Datei config.yaml. Unter Linux befindet sie sich normalerweise im Verzeichnis /etc/bindplane-agent/.
    • Öffnen Sie die Datei mit einem Texteditor (z. B. nano oder vi).
  2. Bearbeiten Sie die Datei config.yamlso:

          receivers:
              filelog/linux:
              include:
                - /var/log/messages
                - /var/log/lastlog
                - /var/log/btmp
                - /var/log/wtmp
                - /var/log/secure
                - /var/log/cron
                - /var/log/maillog
                - /var/log/boot
              start_at: end
              poll_interval: 5s
    
          exporters:
              chronicle/linux:
                  # Adjust the path to the credentials file you downloaded in Step 1
                  creds: '/path/to/ingestion-authentication-file.json'
                  # Replace with your actual customer ID from Step 2
                  customer_id: <customer_id>
                  endpoint: malachiteingestion-pa.googleapis.com
                  # Add optional ingestion labels for better organization
                  log_type: 'NIX_SYSTEM'
                  override_log_type: false
                  raw_log_field: body
    
          service:
            pipelines:
              logs/linux:
                receivers:
                - filelog/linux
            exporters: [chronicle/linux]
          ```
    
  1. Ersetzen Sie <customer_id> durch die tatsächliche Kunden-ID.
  2. Aktualisieren Sie /path/to/ingestion-authentication-file.json auf den Pfad, in dem die Authentifizierungsdatei im Abschnitt Google SecOps-Aufnahmeauthentifizierungsdatei abrufen gespeichert wurde.

    Bindplane-Agent starten und Änderungen übernehmen

  3. Starten Sie den Bindplane-Agenten:

    sudo systemctl start bindplane-agent
    
  4. Aktivieren Sie den observIQ OTEL Collector-Dienst:

    systemctl enable --now bindplane-agent
    
  5. Starten Sie den Bindplane-Agenten bei Bedarf neu:

    sudo systemctl restart bindplane-agent
    

UDM-Zuordnungstabelle

Logfeld UDM-Zuordnung Logik
AccessControlRuleAction security_result.action Wenn AccessControlRuleAction den Wert Allow hat, legen Sie ALLOW fest. Wenn AccessControlRuleAction den Wert Block hat, legen Sie BLOCK fest.
ACPolicy security_result.rule_labels Schlüssel: ACPolicy, Wert: ACPolicy
AccessControlRuleName security_result.rule_name Direkte Zuordnung.
acct event.idm.read_only_udm.target.user.userid Direkte Zuordnung nach dem Entfernen von Anführungszeichen und umgekehrten Schrägstrichen.
addr event.idm.read_only_udm.target.ip, event.idm.read_only_udm.target.asset.ip Direkte Zuordnung, wenn nicht leer, ? oder UNKNOWN.
ApplicationProtocol event.idm.read_only_udm.network.application_protocol Direkte Zuordnung.
auid event.idm.read_only_udm.additional.fields Schlüssel: auid, Wert: auid
comm event.idm.read_only_udm.target.process.command_line Direkte Zuordnung.
command event.idm.read_only_udm.target.process.command_line Direkte Zuordnung nach dem Entfernen von voran- und nachgestellten Leerzeichen.
Computer event.idm.read_only_udm.principal.hostname, event.idm.read_only_udm.principal.asset.hostname Direkte Zuordnung. Wenn leer, verwenden Sie HostName.
ConnectionID security_result.detection_fields Schlüssel: Connection ID, Wert: ConnectionID
cwd event.idm.read_only_udm.target.process.file.full_path Direktes Mapping nach dem Entfernen von Anführungszeichen.
data message Wird in Grok-Mustern verwendet.
desc security_result.description Direkte Zuordnung.
description event.idm.read_only_udm.metadata.description, security_result.description Direkte Zuordnung.
descript security_result.description Direkte Zuordnung nach dem Entfernen von Hashes.
DeviceUUID event.idm.read_only_udm.metadata.product_log_id Direkte Zuordnung.
DNSQuery event.idm.read_only_udm.additional.fields Schlüssel: DNSQuery, Wert: DNSQuery
DNSRecordType event.idm.read_only_udm.additional.fields Schlüssel: DNSRecordType, Wert: DNSRecordType
DNSResponseType event.idm.read_only_udm.additional.fields Schlüssel: DNSResponseType, Wert: DNSResponseType
DNS_TTL event.idm.read_only_udm.additional.fields Schlüssel: DNS_TTL, Wert: DNS_TTL
DstIP event.idm.read_only_udm.target.ip, event.idm.read_only_udm.target.asset.ip Direkte Zuordnung.
DstPort event.idm.read_only_udm.target.port Direkte Zuordnung, in Ganzzahl konvertiert.
dvc event.idm.read_only_udm.principal.ip, event.idm.read_only_udm.principal.asset.ip, event.idm.read_only_udm.principal.hostname, event.idm.read_only_udm.principal.asset.hostname, event.idm.read_only_udm.intermediary.ip, event.idm.read_only_udm.target.ip, event.idm.read_only_udm.target.asset.ip, event.idm.read_only_udm.target.hostname, event.idm.read_only_udm.target.asset.hostname Wenn eine gültige IP-Adresse vorhanden ist, wird sie der Haupt-/Ziel-IP-Adresse zugeordnet. Wenn „hostname“, wird der Prinzipal-/Ziel-Hostname zugeordnet. Wird auch für die Zwischen-IP verwendet, wenn es sich um eine gültige IP-Adresse handelt.
EgressInterface event.idm.read_only_udm.principal.asset.attribute.labels Schlüssel: EgressInterface, Wert: EgressInterface
EgressVRF event.idm.read_only_udm.principal.asset.attribute.labels Schlüssel: EgressVRF, Wert: EgressVRF
EgressZone event.idm.read_only_udm.target.location.name Direkte Zuordnung.
eventType event.idm.read_only_udm.metadata.product_event_type, event.idm.read_only_udm.target.application Direkte Zuordnung. Für SERVICE_START und SERVICE_STOP, die target.application zugeordnet und dann gelöscht wurden.
EventTime @timestamp Als Zeitstempel geparst.
exe event.idm.read_only_udm.target.process.command_line Direkte Zuordnung nach dem Entfernen von Anführungszeichen und umgekehrten Schrägstrichen.
extended_description event.idm.read_only_udm.metadata.description Direkte Zuordnung nach dem Entfernen von Bindestrichen und Anführungszeichen.
Facility event.idm.read_only_udm.principal.resource.attribute.labels Schlüssel: Facility, Wert: Facility
filepath event.idm.read_only_udm.principal.process.file.full_path Direkte Zuordnung.
file_path event.idm.read_only_udm.target.file.full_path Direkte Zuordnung.
file_path_value event.idm.read_only_udm.target.file.full_path Direkte Zuordnung.
FirstPacketSecond security_result.detection_fields Schlüssel: FirstPacketSecond, Wert: FirstPacketSecond
from event.idm.read_only_udm.network.email.from Direkte Zuordnung nach dem Entfernen von spitzen Klammern.
generic_ip event.idm.read_only_udm.principal.ip, event.idm.read_only_udm.principal.asset.ip Direkte Zuordnung, wenn eine gültige IP-Adresse und nicht A256: vorhanden ist.
gid event.idm.read_only_udm.target.user.group_identifiers Direkte Zuordnung.
grp event.idm.read_only_udm.target.group.group_display_name Direkte Zuordnung nach dem Entfernen von Anführungszeichen und umgekehrten Schrägstrichen.
hashing_algo security_result.summary Direkte Zuordnung.
home event.idm.read_only_udm.target.file.full_path Direkte Zuordnung.
HostName Computer Wird verwendet, wenn Computer leer ist.
HostIP event.idm.read_only_udm.principal.ip, event.idm.read_only_udm.principal.asset.ip Der Teil von HostIP vor % wird extrahiert und als validated_ip zugeordnet.
hostname event.idm.read_only_udm.target.hostname, event.idm.read_only_udm.target.asset.hostname, event.idm.read_only_udm.principal.hostname, event.idm.read_only_udm.principal.asset.hostname Direkte Zuordnung, wenn nicht leer oder ?.
host_name event.idm.read_only_udm.target.hostname, event.idm.read_only_udm.target.asset.hostname Direkte Zuordnung.
InitiatorBytes event.idm.read_only_udm.network.sent_bytes Direkte Zuordnung, konvertiert in eine vorzeichenlose Ganzzahl.
InitiatorPackets event.idm.read_only_udm.network.sent_packets Direkte Zuordnung, in Ganzzahl konvertiert.
insertId event.idm.read_only_udm.metadata.product_log_id Direkte Zuordnung.
InstanceID security_result.detection_fields Schlüssel: Instance ID, Wert: InstanceID
int_dvc event.idm.read_only_udm.intermediary.hostname Direkte Zuordnung.
ip event.idm.read_only_udm.target.ip, event.idm.read_only_udm.target.asset.ip, event.idm.read_only_udm.principal.ip, event.idm.read_only_udm.principal.asset.ip Direkte Zuordnung.
ip_protocol event.idm.read_only_udm.network.ip_protocol Direkte Zuordnung.
laddr event.idm.read_only_udm.principal.ip, event.idm.read_only_udm.principal.asset.ip Direkte Zuordnung, wenn nicht leer oder ?.
level security_result.severity Bei info auf INFORMATIONAL.
log.syslog.facility.name event.idm.read_only_udm.target.application Direkte Zuordnung.
log.syslog.severity.name security_result.severity Bei Emergency auf HIGH.
logName logname Direkte Zuordnung.
log_description security_result.description Direkte Zuordnung.
log_level security_result.severity Bei error auf ERROR.
log_summary security_result.summary Direkte Zuordnung.
logger_name event.idm.read_only_udm.principal.resource.attribute.labels Schlüssel: logger_name, Wert: logger_name
log_type event.idm.read_only_udm.metadata.log_type Hartcodiert auf NIX_SYSTEM.
lport event.idm.read_only_udm.principal.port Direkte Zuordnung, in Ganzzahl konvertiert.
MG event.idm.read_only_udm.principal.resource.attribute.labels Schlüssel: MG, Wert: MG
method event.idm.read_only_udm.network.http.method Direkte Zuordnung, in Großbuchstaben umgewandelt.
msg1 event.idm.read_only_udm.metadata.description, event.idm.read_only_udm.additional.fields, security_result.description Mit Grok-Mustern geparst. Wenn event_type GENERIC_EVENT ist, wird description zugeordnet.
msg2 event.idm.read_only_udm.network.received_bytes, security_result.summary Wenn sie Ziffern enthält, wird sie in eine Ganzzahl ohne Vorzeichen konvertiert und received_bytes zugeordnet. Andernfalls wird sie summary zugeordnet.
NAPPolicy security_result.rule_labels Schlüssel: NAPPolicy, Wert: NAPPolicy
name event.idm.read_only_udm.target.process.file.full_path Direkte Zuordnung nach dem Entfernen von Anführungszeichen.
outcome security_result.action Wenn Succeeded oder success enthält, auf ALLOW festlegen.
p_id event.idm.read_only_udm.target.process.pid Direkte Zuordnung.
pid event.idm.read_only_udm.target.process.pid, event.idm.read_only_udm.principal.process.pid Direkte Zuordnung.
principal_hostname event.idm.read_only_udm.principal.hostname, event.idm.read_only_udm.principal.asset.hostname Direkte Zuordnung.
principal_ip event.idm.read_only_udm.principal.ip, event.idm.read_only_udm.principal.asset.ip Direkte Zuordnung.
principal_present event.idm.read_only_udm.metadata.event_type Wenn true und has_target gleich true ist, setzen Sie event_type auf NETWORK_UNCATEGORIZED. Wenn true oder user_present gleich true ist, setzen Sie event_type auf USER_UNCATEGORIZED.
process event.idm.read_only_udm.target.application, event.idm.read_only_udm.metadata.product_event_type Direkte Zuordnung. Wenn eventType leer ist, wird target.application verwendet.
ProcessID event.idm.read_only_udm.principal.process.pid Direkte Zuordnung, in String konvertiert.
ProcessName event.idm.read_only_udm.principal.resource.attribute.labels Schlüssel: ProcessName, Wert: ProcessName
prod_eve_type event.idm.read_only_udm.metadata.product_event_type Direkte Zuordnung.
product_event_type event.idm.read_only_udm.metadata.product_event_type Direkte Zuordnung.
Protocol event.idm.read_only_udm.network.ip_protocol Wenn der Wert mit icmp, udp oder tcp übereinstimmt (Groß-/Kleinschreibung wird nicht berücksichtigt), wird er dem entsprechenden Großbuchstabenwert zugeordnet.
proto event.idm.read_only_udm.network.application_protocol Bei ssh oder ssh2 auf SSH.
pwd event.idm.read_only_udm.target.file.full_path Direkte Zuordnung.
reason security_result.summary, security_result.description Wird in Kombination mit action und desc verwendet, um security_result.description zu erstellen. Auch security_result.summary zugeordnet.
relayHostname event.idm.read_only_udm.intermediary.hostname Direkte Zuordnung.
relayIp event.idm.read_only_udm.intermediary.ip Direkte Zuordnung.
res security_result.summary Direkte Zuordnung.
resource.labels.instance_id event.idm.read_only_udm.target.resource.product_object_id Direkte Zuordnung.
resource.labels.project_id event.idm.read_only_udm.target.asset.attribute.cloud.project.id Direkte Zuordnung.
resource.labels.zone event.idm.read_only_udm.target.asset.attribute.cloud.availability_zone Direkte Zuordnung.
resource.type event.idm.read_only_udm.target.resource.resource_subtype Direkte Zuordnung.
response_code event.idm.read_only_udm.network.http.response_code Direkte Zuordnung, in Ganzzahl konvertiert.
ResponderBytes event.idm.read_only_udm.network.received_bytes Direkte Zuordnung, in eine vorzeichenlose Ganzzahl konvertiert.
ResponderPackets event.idm.read_only_udm.network.received_packets Direkte Zuordnung, in Ganzzahl konvertiert.
rhost event.idm.read_only_udm.additional.fields Schlüssel: rhost, Wert: rhost
ruser srcUser Direkte Zuordnung.
sec_action security_result.action Zuordnung basierend auf action oder eventType.
sec_summary security_result.summary Direkte Zuordnung.
security_action security_result.action Direkte Zuordnung.
sent_bytes event.idm.read_only_udm.network.sent_bytes Direkte Zuordnung, konvertiert in eine vorzeichenlose Ganzzahl.
ses event.idm.read_only_udm.network.session_id, event.idm.read_only_udm.network.session_duration Wenn numerisch, wird er als UNIX-Zeitstempel geparst und session_duration zugeordnet. Andernfalls wird sie session_id zugeordnet.
SeverityLevel security_result.severity Je nach Wert unterschiedlichen Schweregraden zugeordnet („notice“/„info“ –> INFORMATIONAL, „warn“ –> HIGH, „error“ –> ERROR, „other“ –> UNKNOWN_SEVERITY).
sessionId event.idm.read_only_udm.network.session_id Direkte Zuordnung.
size event.idm.read_only_udm.network.received_bytes Direkte Zuordnung, in eine vorzeichenlose Ganzzahl konvertiert.
source event.idm.read_only_udm.principal.hostname, event.idm.read_only_udm.principal.asset.hostname Direkte Zuordnung nach dem Entfernen von vorangestellten Leerzeichen.
SourceSystem event.idm.read_only_udm.principal.resource.attribute.labels, event.idm.read_only_udm.principal.platform Schlüssel: SourceSystem, Wert: SourceSystem. Wird auch platform zugeordnet (Linux -> LINUX, Windows -> WINDOWS, Mac/iOS -> MAC).
SrcIP event.idm.read_only_udm.principal.ip, event.idm.read_only_udm.principal.asset.ip Direkte Zuordnung.
SrcPort event.idm.read_only_udm.principal.port Direkte Zuordnung, in Ganzzahl konvertiert.
srcIp event.idm.read_only_udm.principal.ip, event.idm.read_only_udm.principal.asset.ip Direkte Zuordnung.
srcPort event.idm.read_only_udm.principal.port Direkte Zuordnung, in Ganzzahl konvertiert.
srcUser event.idm.read_only_udm.principal.user.userid Direkte Zuordnung.
src_user event.idm.read_only_udm.principal.user.userid Direkte Zuordnung.
src_user_display_name event.idm.read_only_udm.principal.user.user_display_name Direkte Zuordnung.
status security_result.action Bei Deferred auf BLOCK. Bei Sent auf ALLOW.
summary security_result.summary Direkte Zuordnung.
SyslogMessage security_result.description Direkte Zuordnung.
targetEmail event.idm.read_only_udm.network.email.to Direkte Zuordnung.
targetEmailfrom event.idm.read_only_udm.network.email.from Direkte Zuordnung.
targetHostname event.idm.read_only_udm.target.hostname, event.idm.read_only_udm.target.asset.hostname Direkte Zuordnung.
target_hostname event.idm.read_only_udm.target.hostname, event.idm.read_only_udm.target.asset.hostname Direkte Zuordnung.
target_ip event.idm.read_only_udm.target.ip, event.idm.read_only_udm.target.asset.ip Direkte Zuordnung.
target_mac event.idm.read_only_udm.target.mac Direkte Zuordnung.
target_uri event.idm.read_only_udm.target.url Direkte Zuordnung.
TenantId event.idm.read_only_udm.principal.user.product_object_id Direkte Zuordnung.
terminal event.idm.read_only_udm.additional.fields Schlüssel: terminal, Wert: terminal, falls nicht leer, oder ?.
TimeGenerated event.idm.read_only_udm.metadata.collected_timestamp Als Zeitstempel geparst.
timestamp @timestamp Als Zeitstempel geparst.
tls_cipher event.idm.read_only_udm.network.tls.cipher Direkte Zuordnung.
Type event.idm.read_only_udm.principal.resource.attribute.labels Schlüssel: Type, Wert: Type
uid event.idm.read_only_udm.principal.user.userid Bei 0 auf root. Andernfalls direkte Zuordnung.
uid_2 event.idm.read_only_udm.target.user.userid Direkte Zuordnung, wenn uid leer ist.
unit event.idm.read_only_udm.target.application Direkte Zuordnung.
url event.idm.read_only_udm.target.url Direkte Zuordnung.
user username Direkte Zuordnung.
username event.idm.read_only_udm.target.user.userid, event.idm.read_only_udm.principal.user.userid Direkte Zuordnung.
user_display_name event.idm.read_only_udm.target.user.user_display_name Direkte Zuordnung.
user_present event.idm.read_only_udm.metadata.event_type Wenn true oder principal_present gleich true ist, setzen Sie event_type auf USER_UNCATEGORIZED.
_Internal_WorkspaceResourceId event.idm.read_only_udm.target.resource.attribute.labels, event.idm.read_only_udm.target.resource.product_object_id Schlüssel: _Internal_WorkspaceResourceId, Wert: _Internal_WorkspaceResourceId. Die Abo-ID wird extrahiert und product_object_id zugeordnet.
_ItemId event.idm.read_only_udm.principal.resource.attribute.labels Schlüssel: _ItemId, Wert: _ItemId
_ResourceId event.idm.read_only_udm.principal.resource.attribute.labels, event.idm.read_only_udm.principal.resource.product_object_id Schlüssel: _ResourceId, Wert: _ResourceId. Die Abo-ID wird extrahiert und product_object_id zugeordnet.
_timestamp @timestamp Als Zeitstempel geparst.
_timestamp_tz @timestamp Als Zeitstempel geparst.
  • event.idm.read_only_udm.metadata.event_type: Wird anfangs auf GENERIC_EVENT festgelegt und dann basierend auf der Parserlogik überschrieben.
  • event.idm.read_only_udm.metadata.product_name: Hartcodiert auf Unix System.
  • event.idm.read_only_udm.extensions.auth.type: Legen Sie für bestimmte Ereignistypen MACHINE fest.
  • event.idm.read_only_udm.target.asset.attribute.cloud.environment: Legen Sie GOOGLE_CLOUD_PLATFORM für Audit-Logs von Google Cloud fest.
  • event.idm.read_only_udm.target.resource.resource_type: Auf VIRTUAL_MACHINE für Google Cloud Audit-Logs festgelegt.
  • event.idm.read_only_udm.extensions.auth.mechanism: Legen Sie für Anmeldeereignisse USERNAME_PASSWORD fest.
  • has_target_resource: Wird auf true gesetzt, wenn resource.labels.instance_id oder _Internal_WorkspaceResourceId vorhanden ist.

Benötigen Sie weitere Hilfe? Antworten von Community-Mitgliedern und Google SecOps-Experten erhalten