Barracuda Email Security Gateway-Logs erfassen

Parserversion:4.0

Unterstützt in:

In diesem Dokument wird beschrieben, wie Sie Barracuda Email Security Gateway-Logs mit Bindplane in Google Security Operations aufnehmen.

Das Barracuda Email Security Gateway ist ein Gerät für E‑Mail-Sicherheit, das eingehende E‑Mails auf Spam, Viren, Spoofing und Phishing-Angriffe filtert. Außerdem bietet es ausgehende Filter für den Schutz vor Datenverlust und die E-Mail-Verschlüsselung. Das Gateway protokolliert alle E‑Mail-Transaktionen, Richtlinienaktionen und Bedrohungserkennungen über Syslog.

Hinweis

Prüfen Sie, ob folgende Voraussetzungen erfüllt sind:

  • Eine Google SecOps-Instanz.
  • Ein Windows 2016- oder höherer oder Linux-Host mit systemd.
  • Wenn der Agent hinter einem Proxy ausgeführt wird, müssen die Firewallports gemäß den Anforderungen des Bindplane-Agents geöffnet sein.
  • Privilegierter Zugriff auf die Verwaltungskonsole des Barracuda Email Security Gateway.

Google SecOps-Anmeldedaten für den Bindplane-Agenten abrufen

Wählen Sie eine der folgenden Methoden aus, um den Bindplane-Agenten bei Google SecOps zu authentifizieren:

  • Neue Bereitstellungen: Verwenden Sie die Chronicle API (Option 1).
  • Alte Bereitstellungen: Verwenden Sie die Datei für die Authentifizierung bei der Aufnahme (Option 2) weiterhin, bis die Ingestion API am 20. Juli 2027 eingestellt wird.
  1. Melden Sie sich in der Google Cloud -Konsole an und wählen Sie das Google Cloud -Projekt aus, das mit Ihrer Google SecOps-Instanz verknüpft ist.
  2. Rufen Sie IAM & Verwaltung > Dienstkonten auf.
  3. Klicken Sie auf Dienstkonto erstellen.
  4. Geben Sie die folgenden Konfigurationsdetails an:
    • Name des Dienstkontos: Geben Sie einen Namen für das Konto ein, z. B. bindplane-ingest.
    • Dienstkontobeschreibung: Geben Sie eine Beschreibung ein, z. B. Bindplane agent log ingestion.
  5. Klicken Sie auf Erstellen und fortfahren.
  6. Klicken Sie im Abschnitt Diesem Dienstkonto Zugriff auf das Projekt erteilen auf Rolle auswählen und wählen Sie Chronicle-Bearbeiter aus.
  7. Klicken Sie auf Weiter und dann auf Fertig.
  8. Klicken Sie auf das erstellte Dienstkonto und rufen Sie dann den Tab Schlüssel auf.
  9. Klicken Sie auf Schlüssel hinzufügen > Neuen Schlüssel erstellen.
  10. Wählen Sie JSON aus und klicken Sie auf Erstellen. Die Schlüsseldatei wird auf Ihren Computer heruntergeladen.
  11. Speichern Sie die Schlüsseldatei als ingestion-auth.json im Bindplane-Collector-Verzeichnis (/opt/observiq-otel-collector/ingestion-auth.json unter Linux oder C:\Program Files\observIQ OpenTelemetry Collector\ingestion-auth.json unter Windows) oder aktualisieren Sie creds_file_path in config.yaml, sodass der Pfad mit dem Pfad übereinstimmt, unter dem Sie die Datei speichern.
  12. Rufen Sie IAM und Verwaltung > Einstellungen auf und kopieren Sie die Projektnummer. Sie benötigen sie für die Exporter-Konfiguration.

Option 2: Authentifizierungsdatei für die Aufnahme herunterladen (Legacy)

  1. Melden Sie sich in der Google SecOps-Konsole an.
  2. Rufen Sie die SIEM-Einstellungen > Erfassungs-Agents auf.
  3. Laden Sie die Authentifizierungsdatei für die Datenaufnahme herunter.
  4. Speichern Sie die Datei sicher auf dem System, auf dem der Bindplane-Agent installiert werden soll.

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 Kundennummer aus dem Bereich Organisationsdetails.

Bindplane-Agent installieren

Installieren Sie den Bindplane-Agent auf Ihrem Windows- oder Linux-Betriebssystem gemäß der folgenden Anleitung.

Windows-Installation

  1. Öffnen Sie die Eingabeaufforderung oder PowerShell als Administrator.
  2. Führen Sie dazu diesen Befehl aus:

    msiexec /i "https://github.com/observIQ/bindplane-agent/releases/latest/download/observiq-otel-collector.msi" /quiet
    

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 in dieser Installationsanleitung.

Bindplane-Agent so konfigurieren, dass Syslog-Daten aufgenommen und an Google SecOps gesendet werden

  1. Konfigurationsdatei aufrufen:

    • Suchen Sie die Datei config.yaml. In der Regel befindet sie sich unter Linux im Verzeichnis /observiq-otel-collector/ oder unter Windows im Installationsverzeichnis.
    • Öffnen Sie die Datei mit einem Texteditor (z. B. nano, vi oder Notepad).
  2. Bearbeiten Sie die Datei config.yamlso:

    receivers:
      tcplog:
        # Replace the port and IP address as required
        listen_address: "0.0.0.0:514"
    
    exporters:
      chronicle/chronicle_w_labels:
        protocol: https
        # Region of your instance, for example us, europe, asia-southeast1
        location: <LOCATION>
        # Project number of the Google Cloud project linked to the instance
        project: '<PROJECT_NUMBER>'
        compression: gzip
        # Adjust the path to the credentials file you downloaded in Step 1
        creds_file_path: '/path/to/ingestion-authentication-file.json'
        # Replace with your actual customer ID from Step 2
        customer_id: <your_customer_id>
        endpoint: chronicle.googleapis.com
        # Add optional ingestion labels for better organization
        log_type: 'BARRACUDA_EMAIL'
        raw_log_field: body
        ingestion_labels:
    
    service:
      pipelines:
        logs/source0__chronicle_w_labels-0:
          receivers:
            - tcplog
          exporters:
            - chronicle/chronicle_w_labels
    
  • Ersetzen Sie den Port und die IP-Adresse nach Bedarf in Ihrer Infrastruktur.
  • Ersetzen Sie <LOCATION> durch die Region Ihrer Google SecOps-Instanz (z. B. us, europe oder asia-southeast1). Der Exporter stellt diesem Wert chronicle.googleapis.com voran.
  • Ersetzen Sie <PROJECT_NUMBER> durch die Projektnummer unter IAM & Verwaltung > Einstellungen.
  • Ersetzen Sie <your_customer_id> durch die tatsächliche Kundennummer.
  • Aktualisieren Sie /path/to/ingestion-authentication-file.json mit dem Dateipfad, in dem die Dienstkontoschlüsseldatei (Option 1) in Schritt 1 gespeichert wurde.

Exporter für die Legacy Ingestion API

  • Wenn Sie die Authentifizierungsdatei für die Datenaufnahme aus Option 2 verwenden, ersetzen Sie den Block exporters durch Folgendes. Legen Sie creds_file_path auf den Pfad zur Datei für die Authentifizierung bei der Aufnahme fest. Wenn sich Ihre Instanz außerhalb der USA befindet, ersetzen Sie malachiteingestion-pa.googleapis.com durch Ihren regionalen Endpunkt (z. B. europe-malachiteingestion-pa.googleapis.com).

    exporters:
      chronicle/chronicle_w_labels:
        compression: gzip
        # Adjust the path to the credentials file you downloaded in Step 1
        creds_file_path: '/path/to/ingestion-authentication-file.json'
        # Replace with your actual customer ID from Step 2
        customer_id: <your_customer_id>
        endpoint: malachiteingestion-pa.googleapis.com
        # Add optional ingestion labels for better organization
        log_type: 'BARRACUDA_EMAIL'
        raw_log_field: body
        ingestion_labels:
    

Bindplane-Agent neu starten, um die Änderungen zu übernehmen

So starten Sie den Bindplane-Agenten unter Linux neu:

  1. Führen Sie dazu diesen Befehl aus:

    sudo systemctl restart observiq-otel-collector
    
  2. Prüfen Sie, ob der Dienst ausgeführt wird:

    sudo systemctl status observiq-otel-collector
    
  3. Logs auf Fehler prüfen:

    sudo journalctl -u observiq-otel-collector -f
    

So starten Sie den Bindplane-Agenten unter Windows neu:

  1. Wählen Sie eine der folgenden Optionen aus:

    • Eingabeaufforderung oder PowerShell als Administrator:
    net stop observiq-otel-collector && net start observiq-otel-collector
    
    • Services Console:
      1. Drücken Sie Win+R, geben Sie services.msc ein und drücken Sie die Eingabetaste.
      2. Suchen Sie nach observIQ OpenTelemetry Collector.
      3. Rechtsklicken Sie und wählen Sie Neu starten aus.
  2. Prüfen Sie, ob der Dienst ausgeführt wird:

    sc query observiq-otel-collector
    
  3. Logs auf Fehler prüfen:

    type "C:\Program Files\observIQ OpenTelemetry Collector\log\collector.log"
    

Syslog-Weiterleitung auf Barracuda Email Security Gateway konfigurieren

  1. Melden Sie sich in der Weboberfläche von Barracuda Email Security Gateway an.
  2. Gehe zu ERWEITERT > Erweiterte Netzwerkeinstellungen.
  3. Konfigurieren Sie im Abschnitt Syslog die folgenden Felder:
    • Syslog-Server: Geben Sie die IP-Adresse oder den Hostnamen des Bindplane-Agent-Hosts ein (z. B. 192.168.1.100).
    • Syslog-Port: Geben Sie 514 (oder den konfigurierten Bindplane-Agent-Port) ein.
    • Syslog-Protokoll: Wählen Sie TCP aus.
  4. Klicken Sie auf Änderungen speichern.

Syslog-Zustellung bestätigen

  1. Senden Sie nach der Konfiguration der Syslog-Weiterleitung eine Test-E‑Mail über das Gateway.
  2. Wenn Sie prüfen möchten, ob das Gateway Syslog-Daten sendet, rufen Sie ERWEITERT > Fehlerbehebung auf und sehen Sie sich den Abschnitt Syslog an, um die Syslog-Ausgabe für E‑Mails in Echtzeit zu überwachen.
  3. Prüfen Sie auf dem Bindplane-Agent-Host, ob Logs empfangen werden:

    sudo journalctl -u observiq-otel-collector -f
    

Weitere Informationen finden Sie in der Syslog-Dokumentation für Barracuda Email Security Gateway.

UDM-Zuordnungstabelle

Logfeld UDM-Zuordnung Logik
dst_domain target.hostname Wert des Felds dst_domain.
dst_domain target.asset.hostname Wert des Felds dst_domain.
geoip target.location.country_or_region Wert des Felds geoip.
hdr_from network.email.from Wert des Felds hdr_from, wenn es sich um eine E-Mail-Adresse handelt.
hdr_to network.email.to Wert des Felds hdr_to, wenn es sich um eine E-Mail-Adresse handelt. Andernfalls wird es aus dem JSON-Array im Feld hdr_to geparst.
host principal.hostname Wert des Felds host.
host principal.asset.hostname Wert des Felds host.
message_id network.email.mail_id Wert des Felds message_id.
product_log_id metadata.product_log_id Wert des Felds product_log_id.
queue_id security_result.detection_fields Wert des Felds queue_id.
recipient_email network.email.to Wert des Felds recipient_email, wenn es nicht leer ist, oder -.
recipients.action security_result.action Wird auf ALLOW zugeordnet, wenn der Wert „allowed“ ist, andernfalls auf BLOCK.
recipients.action security_result.action_details Wert des Felds recipients.action.
recipients.delivery_detail security_result.detection_fields Wert des Felds recipients.delivery_detail.
recipients.delivered security_result.detection_fields Wert des Felds recipients.delivered.
recipients.email network.email.to Wert des Felds recipients.email, wenn es sich um eine E-Mail-Adresse handelt.
recipients.reason security_result.detection_fields Wert des Felds recipients.reason.
recipients.reason_extra security_result.detection_fields Wert des Felds recipients.reason_extra.
recipients.taxonomy security_result.detection_fields Wert des Felds recipients.taxonomy.
service security_result.summary Wert des Felds service.
size network.received_bytes Der Wert des Felds size wurde in eine vorzeichenlose Ganzzahl konvertiert.
src_ip principal.ip Wert des Felds src_ip, wenn es nicht leer oder 0.0.0.0 ist.
src_ip principal.asset.ip Wert des Felds src_ip, wenn es nicht leer ist, oder 0.0.0.0.
src_ip security_result.about.ip Wert des Felds src_ip, wenn es nicht leer ist, oder 0.0.0.0.
subject network.email.subject Wert des Felds subject.
target_ip target.ip Wert des Felds target_ip.
target_ip target.asset.ip Wert des Felds target_ip.
timestamp metadata.event_timestamp Geparster Zeitstempel aus dem Logeintrag.
metadata.event_type In EMAIL_TRANSACTION hartcodiert.
metadata.log_type In BARRACUDA_EMAIL hartcodiert.
metadata.vendor_name Hartcodiert auf „Barracuda“.
network.application_protocol Wird auf SMTP gesetzt, wenn das Feld process „smtp“ enthält.
network.direction Wird auf INBOUND gesetzt, wenn das Feld process „inbound“ enthält, und auf OUTBOUND, wenn das Feld process „outbound“ enthält.
security_result.action Wird anhand einer Kombination der Felder action, action_code, service und delivered festgelegt.
security_result.category Wird anhand einer Kombination aus action, reason und anderen Feldern festgelegt.
auth_serv event.idm.read_only_udm.intermediary.hostname Aus Änderungsprotokoll zugeordnet
spf_sender_ip event.idm.read_only_udm.principal.ip und event.idm.read_only_udm.principal.asset.ip Aus Änderungsprotokoll zugeordnet
dkim_result event.idm.read_only_udm.additional.fields Aus Änderungsprotokoll zugeordnet
dmarc_result event.idm.read_only_udm.additional.fields Aus Änderungsprotokoll zugeordnet
dkim_domain event.idm.read_only_udm.additional.fields Aus Änderungsprotokoll zugeordnet
header_from event.idm.read_only_udm.additional.fields Aus Änderungsprotokoll zugeordnet
spf_result event.idm.read_only_udm.additional.fields Aus Änderungsprotokoll zugeordnet
smtp_mailfrom event.idm.read_only_udm.additional.fields Aus Änderungsprotokoll zugeordnet
gateway event.idm.read_only_udm.observer.hostname Aus Änderungsprotokoll zugeordnet
timestamp event.idm.read_only_udm.metadata.collected_timestamp Aus Änderungsprotokoll zugeordnet
attachment.name event.idm.read_only_udm.target.file.names Aus Änderungsprotokoll zugeordnet
attachment.md5 event.idm.read_only_udm.about Aus Änderungsprotokoll zugeordnet
intermediary event.idm.read_only_udm.intermediary Aus Änderungsprotokoll zugeordnet
account_id event.idm.read_only_udm.principal.user.userid Aus Änderungsprotokoll zugeordnet
domain_id event.idm.read_only_udm.target.user.userid Aus Änderungsprotokoll zugeordnet
tls event.idm.read_only_udm.additional.fields Aus Änderungsprotokoll zugeordnet
env_from event.idm.read_only_udm.additional.fields Aus Änderungsprotokoll zugeordnet
hdr_auth_results event.idm.read_only_udm.additional.fields Aus Änderungsprotokoll zugeordnet
recipient_count event.idm.read_only_udm.additional.fields Aus Änderungsprotokoll zugeordnet
ptr_record event.idm.read_only_udm.principal.hostname und event.idm.read_only_udm.principal.asset.hostname Aus Änderungsprotokoll zugeordnet
time event.idm.read_only_udm.metadata.event_timestamp Aus Änderungsprotokoll zugeordnet
log_header_end event.idm.read_only_udm.additional.fields Aus Änderungsprotokoll zugeordnet
payload.affected_mailboxes event.idm.read_only_udm.additional.fields Aus Änderungsprotokoll zugeordnet
payload.attachment event.idm.read_only_udm.additional.fields Aus Änderungsprotokoll zugeordnet
payload.body_text event.idm.read_only_udm.additional.fields Aus Änderungsprotokoll zugeordnet
accountId event.idm.read_only_udm.security_result.detection_fields Aus Änderungsprotokoll zugeordnet
accessTokenId event.idm.read_only_udm.security_result.detection_fields Aus Änderungsprotokoll zugeordnet
payload.type event.idm.read_only_udm.security_result.detection_fields Aus Änderungsprotokoll zugeordnet
payload.incident_id event.idm.read_only_udm.security_result.detection_fields Aus Änderungsprotokoll zugeordnet
payload.messages_received event.idm.read_only_udm.security_result.detection_fields Aus Änderungsprotokoll zugeordnet
payload.matched_email_count event.idm.read_only_udm.security_result.detection_fields Aus Änderungsprotokoll zugeordnet
product event.idm.read_only_udm.metadata.product_name Aus Änderungsprotokoll zugeordnet
payload.sender event.idm.read_only_udm.principal.user.email_addresses Aus Änderungsprotokoll zugeordnet
payload.recipient event.idm.read_only_udm.target.user.email_addresses Aus Änderungsprotokoll zugeordnet
payload.subject event.idm.read_only_udm.network.email.subject Aus Änderungsprotokoll zugeordnet
payload.date event.idm.read_only_udm.metadata.collected_timestamp Aus Änderungsprotokoll zugeordnet
payload.category event.idm.read_only_udm.security_result.category_details Aus Änderungsprotokoll zugeordnet
payload.created_by event.idm.read_only_udm.principal.user.email_addresses Aus Änderungsprotokoll zugeordnet
payload.sender_display_name event.idm.read_only_udm.principal.user.user_display_name Aus Änderungsprotokoll zugeordnet
payload.sender_email event.idm.read_only_udm.principal.user.email_addresses Aus Änderungsprotokoll zugeordnet
payload.login_country event.idm.read_only_udm.principal.location.country_or_region Aus Änderungsprotokoll zugeordnet
payload.login_ip event.idm.read_only_udm.principal.ip und event.idm.read_only_udm.principal.asset.ip Aus Änderungsprotokoll zugeordnet
payload.login_user_agent event.idm.read_only_udm.network.http.user_agent Aus Änderungsprotokoll zugeordnet
payload.user_display_name event.idm.read_only_udm.principal.user.user_display_name Aus Änderungsprotokoll zugeordnet
payload.user_email event.idm.read_only_udm.principal.user.email_addresses Aus Änderungsprotokoll zugeordnet
payload.body_links event.idm.read_only_udm.security_result.about.url Aus Änderungsprotokoll zugeordnet
payload.sender_name event.idm.read_only_udm.principal.user.user_display_name Aus Änderungsprotokoll zugeordnet
attachments additional.fields Aus Änderungsprotokoll zugeordnet
recipients.delivery_detail", "recipients.reason", "recipients.taxonomy", "recipients.reason_extra" and "recipient.delivered security_result.detection_fields Aus Änderungsprotokoll zugeordnet
sender_email network.email.from Aus Änderungsprotokoll zugeordnet
security_result.action QUARANTINE Aus Änderungsprotokoll zugeordnet

Änderungsprotokoll

Änderungsprotokoll für diesen Parser ansehen

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