WatchGuard Firebox-Logs erfassen
In diesem Dokument wird beschrieben, wie Sie WatchGuard Firebox-Logs mit Bindplane in Google Security Operations aufnehmen. WatchGuard Firebox ist eine UTM-Firewall-Appliance (Unified Threat Management), die Netzwerksicherheitsfunktionen wie Stateful Packet Inspection, Einbruchsprävention, Anwendungssteuerung, URL-Filterung, Gateway-Antivirus und VPN-Konnektivität bietet. Firebox-Logs erfassen Traffic-Ereignisse, Sicherheitswarnungen, Authentifizierungsaktivitäten und Informationen zum Systemstatus.
Hinweis
Prüfen Sie, ob folgende Voraussetzungen erfüllt sind:
- Eine Google SecOps-Instanz.
- Ein Windows 2016- oder höher- oder Linux-Host mit systemd.
- Wenn Sie den Agent hinter einem Proxy ausführen, müssen die Firewallports gemäß den Anforderungen des Bindplane-Agents geöffnet sein.
- Privilegierter Zugriff auf die WatchGuard Firebox-Web-UI (Fireware Web UI) oder den WatchGuard System Manager.
Authentifizierungsdatei für die Google SecOps-Aufnahme abrufen
- Melden Sie sich in der Google SecOps-Konsole an.
- Rufen Sie die SIEM-Einstellungen > Collection Agent auf.
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
- Melden Sie sich in der Google SecOps-Konsole an.
- Rufen Sie die SIEM-Einstellungen > Profile auf.
- Kopieren und speichern Sie die Kunden-ID aus dem Bereich Organisationsdetails.
BindPlane-Agent installieren
Installieren Sie den Bindplane-Agent auf Ihrem Windows- oder Linux-Betriebssystem gemäß der folgenden Anleitung.
Windows-Installation
- Öffnen Sie die Eingabeaufforderung oder PowerShell als Administrator.
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
- Öffnen Sie ein Terminal mit Root- oder Sudo-Berechtigungen.
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 diesem Installationsleitfaden.
Bindplane-Agent zum Erfassen von Syslog-Daten und Senden an Google SecOps konfigurieren
Rufen Sie die Konfigurationsdatei auf:
- Suchen Sie die Datei
config.yaml. Normalerweise befindet sie sich unter Linux im Verzeichnis/etc/bindplane-agent/oder unter Windows im Installationsverzeichnis. - Öffnen Sie die Datei mit einem Texteditor (z. B.
nano,vioder Notepad).
- Suchen Sie die Datei
Bearbeiten Sie die Datei
config.yamlso:receivers: udplog: # Replace the port and IP address as required listen_address: "0.0.0.0:514" 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: 'WATCHGUARD' raw_log_field: body ingestion_labels: service: pipelines: logs/source0__chronicle_w_labels-0: receivers: - udplog exporters: - chronicle/chronicle_w_labels
- Ersetzen Sie den Port und die IP-Adresse nach Bedarf in Ihrer Infrastruktur.
- Ersetzen Sie
YOUR_CUSTOMER_IDdurch die tatsächliche Kundennummer. - Aktualisieren Sie
/path/to/ingestion-authentication-file.jsonauf den Dateipfad, in dem die Authentifizierungsdatei in Schritt 1 gespeichert wurde.
Bindplane-Agent neu starten, um die Änderungen zu übernehmen
Führen Sie den folgenden Befehl aus, um den Bindplane-Agent unter Linux neu zu starten:
sudo systemctl restart observiq-otel-collectorWenn Sie den Bindplane-Agent unter Windows neu starten möchten, können Sie entweder die Konsole Dienste verwenden oder den folgenden Befehl eingeben:
net stop observiq-otel-collector && net start observiq-otel-collector
Syslog-Weiterleitung für WatchGuard Firebox konfigurieren
So konfigurieren Sie die WatchGuard Firebox, um Syslog-Nachrichten an den Bindplane-Agenten weiterzuleiten:
- Melden Sie sich in der Fireware-Web-UI (
https://<firebox-ip>:8080) an. - Gehen Sie zu System > Logging.
- Klicken Sie im Bereich Syslog-Server auf Hinzufügen.
Geben Sie die folgenden Konfigurationsdetails an:
- IP-Adresse: Geben Sie die IP-Adresse des Bindplane-Agent-Hosts ein (z. B.
192.168.1.100). - Port: Geben Sie
514ein (oder den im Bindplane-Agent konfigurierten Port). - Log Format (Logformat): Wählen Sie Syslog (Standard-BSD-Syslog-Format) aus.
- IP-Adresse: Geben Sie die IP-Adresse des Bindplane-Agent-Hosts ein (z. B.
Konfigurieren Sie im Abschnitt Syslog-Einstellungen die Protokollebene:
- Legen Sie die Logebene auf Information oder höher fest, um Traffic-, Sicherheits- und Systemereignisse zu erfassen.
Klicken Sie auf Speichern.
Weiterzuleitende Logtypen konfigurieren
- Rufen Sie in der Fireware-Web-UI System > Logging > Syslog auf.
Achten Sie darauf, dass die folgenden Logtypen für die Syslog-Weiterleitung aktiviert sind:
- Traffic: Firewall-Traffic-Ereignisse (zulassen, ablehnen).
- Alarm: IPS- und Sicherheitsalarmereignisse.
- Ereignis: Systemereignisse und Statusänderungen.
- Debug: optional, nur zur Fehlerbehebung.
Klicken Sie auf Speichern.
(Alternative) Über WatchGuard System Manager konfigurieren
- Öffnen Sie WatchGuard System Manager und stellen Sie eine Verbindung zur Firebox her.
- Gehen Sie zu Einrichtung > Protokollierung > Protokollmeldungen an diesen Syslog-Server senden.
- Klicken Sie auf Hinzufügen.
Geben Sie die folgenden Konfigurationsdetails an:
- IP-Adresse: Geben Sie die IP-Adresse des Bindplane-Agent-Hosts ein.
- Port: Geben Sie
514ein. - Log Format (Logformat): Wählen Sie Syslog aus.
Klicken Sie auf OK und speichern Sie die Konfiguration auf der Firebox.
Weitere Informationen finden Sie in der Dokumentation zu WatchGuard Fireware-Logging.
UDM-Zuordnungstabelle
| Logfeld | UDM-Zuordnung | Logik |
|---|---|---|
action |
security_result.action_details |
Der Wert von action aus dem Rohlog wird security_result.action_details zugewiesen. |
action |
target.labels.value |
Der Wert von action aus dem Rohlog wird target.labels.value zugewiesen. target.labels.key ist „Vorgang für Ressource“. |
arg |
target.file.full_path |
Der Wert von arg aus dem Rohlog wird target.file.full_path zugewiesen. |
app_cat_id |
about.labels.value |
Der Wert von app_cat_id aus dem Rohlog wird about.labels.value zugewiesen, wobei about.labels.key „app_cat_id“ ist. |
app_cat_name |
target.application |
Wird in Kombination mit app_name verwendet, um den Wert von target.application zu bilden (z.B. „Google – Webdienste“). |
app_id |
about.labels.value |
Der Wert von app_id aus dem Rohlog wird about.labels.value zugewiesen, wobei about.labels.key „app_id“ ist. |
app_name |
target.application |
Wird in Kombination mit app_cat_name verwendet, um den Wert von target.application zu bilden (z.B. „Google – Webdienste“). |
cats |
security_result.category_details |
Der Wert von cats aus dem Rohlog wird security_result.category_details zugewiesen. |
cert_issuer |
network.tls.server.certificate.issuer |
Der Wert von cert_issuer aus dem Rohlog wird network.tls.server.certificate.issuer zugewiesen. |
cert_subject |
network.tls.server.certificate.subject |
Der Wert von cert_subject aus dem Rohlog wird network.tls.server.certificate.subject zugewiesen. |
cn |
network.tls.server.certificate.subject |
Der Wert von cn aus dem Rohlog wird network.tls.server.certificate.subject zugewiesen. |
conn_action |
security_result.action_details |
Der Wert von conn_action aus dem Rohlog wird security_result.action_details zugewiesen. |
content_type |
Nicht zugeordnet | Nicht dem IDM-Objekt in den bereitgestellten UDM-Beispielen zugeordnet. |
description |
metadata.description |
Der aus dem Rohlog abgeleitete Wert von description wird metadata.description zugewiesen. |
dhcp_type |
network.dhcp.type |
Der Wert von dhcp_type aus dem Rohlog wird dem entsprechenden DHCP-Typ in network.dhcp.type zugeordnet (z.B. „REQUEST“, „ACK“). |
dst_host |
target.hostname |
Der Wert von dst_host aus dem Rohlog wird target.hostname zugewiesen. |
dst_ip |
target.ip |
Der Wert von dst_ip aus dem Rohlog wird target.ip zugewiesen. |
dst_mac |
target.mac |
Der Wert von dst_mac aus dem Rohlog wird target.mac zugewiesen. |
dst_port |
target.port |
Der Wert von dst_port aus dem Rohlog wird target.port zugewiesen. |
dst_user |
target.user.user_display_name |
Der Wert von dst_user aus dem Rohlog wird target.user.user_display_name zugewiesen. |
dstname |
target.administrative_domain |
Der Wert von dstname aus dem Rohlog wird target.administrative_domain zugewiesen. |
duration |
Nicht zugeordnet | Nicht dem IDM-Objekt in den bereitgestellten UDM-Beispielen zugeordnet. |
elapsed_time |
Nicht zugeordnet | Nicht dem IDM-Objekt in den bereitgestellten UDM-Beispielen zugeordnet. |
endpoint |
intermediary.labels.value |
Der Wert von endpoint aus dem Rohlog wird intermediary.labels.value zugewiesen, wobei intermediary.labels.key „Gateway-Endpoint“ ist. |
event_name |
principal.application |
Der Wert von event_name aus dem Rohlog wird principal.application zugewiesen. |
firewall_id |
intermediary.asset_id |
Der Wert von firewall_id aus dem Rohlog wird mit „Firewall ID : “ vorangestellt und intermediary.asset_id zugewiesen. |
firewall_name |
principal.asset_id |
Der Wert von firewall_name aus dem Rohlog wird mit „Firewall: “ vorangestellt und principal.asset_id zugewiesen. |
firewallname |
intermediary.hostname |
Der Wert von firewallname aus dem Rohlog wird intermediary.hostname zugewiesen. |
firewallname |
principal.hostname |
Der Wert von firewallname aus dem Rohlog wird principal.hostname zugewiesen. |
fqdn_dst_match |
Nicht zugeordnet | Nicht dem IDM-Objekt in den bereitgestellten UDM-Beispielen zugeordnet. |
geo |
Nicht zugeordnet | Nicht dem IDM-Objekt in den bereitgestellten UDM-Beispielen zugeordnet. |
geo_dst |
target.location.country_or_region |
Der Wert von geo_dst aus dem Rohlog wird target.location.country_or_region zugewiesen. |
geo_src |
principal.location.country_or_region |
Der Wert von geo_src aus dem Rohlog wird principal.location.country_or_region zugewiesen. |
host |
Nicht zugeordnet | Nicht dem IDM-Objekt in den bereitgestellten UDM-Beispielen zugeordnet. |
ike_policy |
security_result.rule_id |
Der Wert von ike_policy aus dem Rohlog wird security_result.rule_id zugewiesen. |
ike_policy_version |
security_result.rule_version |
Der Wert von ike_policy_version aus dem Rohlog wird security_result.rule_version zugewiesen. |
intermediary_host |
intermediary.hostname |
Der Wert von intermediary_host aus dem Rohlog wird intermediary.hostname zugewiesen. |
ipaddress |
Nicht zugeordnet | Nicht dem IDM-Objekt in den bereitgestellten UDM-Beispielen zugeordnet. |
ipsec_policy |
Nicht zugeordnet | Nicht dem IDM-Objekt in den bereitgestellten UDM-Beispielen zugeordnet. |
ipsec_policy_version |
Nicht zugeordnet | Nicht dem IDM-Objekt in den bereitgestellten UDM-Beispielen zugeordnet. |
keyword |
Nicht zugeordnet | Nicht dem IDM-Objekt in den bereitgestellten UDM-Beispielen zugeordnet. |
line |
Nicht zugeordnet | Nicht dem IDM-Objekt in den bereitgestellten UDM-Beispielen zugeordnet. |
log_message |
metadata.description |
Der Wert von log_message aus dem Rohlog wird metadata.description zugewiesen, wenn keine anderen spezifischeren Beschreibungen verfügbar sind. |
log_reason |
security_result.summary |
Der Wert von log_reason aus dem Rohlog wird security_result.summary zugewiesen. |
log_type |
metadata.log_type |
Der Wert von log_type aus dem Rohlog wird metadata.log_type zugewiesen. Immer auf „WATCHGUARD“ festgelegt. |
msg |
security_result.summary |
Der Wert von msg aus dem Rohlog wird security_result.summary zugewiesen. |
msg_id |
metadata.product_event_type |
Der Wert von msg_id aus dem Rohlog wird metadata.product_event_type zugewiesen. |
new_action |
security_result.action_details |
Wird mit conn_action verwendet, um den Wert von security_result.action_details zu bilden (z.B. „ProxyReplace: IP protocol - HTTPS-Client.DPI-Off“). |
op |
network.http.method |
Der Wert von op aus dem Rohlog wird network.http.method zugewiesen. |
path |
target.url |
Der Wert von path aus dem Rohlog wird target.url zugewiesen. |
pid |
Nicht zugeordnet | Nicht dem IDM-Objekt in den bereitgestellten UDM-Beispielen zugeordnet. |
policy_name |
intermediary.resource.name |
Der Wert von policy_name aus dem Rohlog wird intermediary.resource.name zugewiesen. |
policy_name |
security_result.rule_name |
Der Wert von policy_name aus dem Rohlog wird security_result.rule_name zugewiesen. |
policyname_label.value |
security_result.rule_labels.value |
Der Wert von policy_name aus dem Rohlog wird security_result.rule_labels.value zugewiesen, wobei security_result.rule_labels.key „PolicyName“ ist. |
prin_host |
principal.hostname |
Der Wert von prin_host aus dem Rohlog wird principal.hostname zugewiesen. |
proc_id |
Nicht zugeordnet | Nicht dem IDM-Objekt in den bereitgestellten UDM-Beispielen zugeordnet. |
protocol |
network.ip_protocol |
Der Wert von protocol aus dem Rohlog, in Großbuchstaben umgewandelt, wird network.ip_protocol zugewiesen. Sonderbehandlung für „EXTERNAL ICMP“, das „ICMP“ zugeordnet ist. |
proxy_act |
security_result.rule_id |
Der Wert von proxy_act aus dem Rohlog wird security_result.rule_id zugewiesen. |
proxy_act |
security_result.rule_name |
Der Wert von proxy_act aus dem Rohlog wird security_result.rule_name zugewiesen. |
query_name |
network.dns.questions.name |
Der Wert von query_name aus dem Rohlog wird network.dns.questions.name zugewiesen. |
query_type |
network.dns.questions.type |
Der Wert von query_type aus dem Rohlog wird network.dns.questions.type zugewiesen. Sonderbehandlung für numerische Abfragetypen und Zuordnung zu Standard-DNS-Abfragetypen. |
rc |
Nicht zugeordnet | Nicht dem IDM-Objekt in den bereitgestellten UDM-Beispielen zugeordnet. |
reason |
security_result.summary |
Der Wert von reason aus dem Rohlog wird security_result.summary zugewiesen. |
record_type |
network.dns.answers.type |
Der Wert von record_type aus dem Rohlog wird dem entsprechenden DNS-Eintragstyp in network.dns.answers.type zugeordnet. |
redirect_action |
Nicht zugeordnet | Nicht dem IDM-Objekt in den bereitgestellten UDM-Beispielen zugeordnet. |
reputation |
additional.fields.value.string_value |
Der Wert von reputation aus dem Rohlog wird additional.fields.value.string_value zugewiesen, wobei additional.fields.key „Reputation“ ist. |
response |
Nicht zugeordnet | Nicht dem IDM-Objekt in den bereitgestellten UDM-Beispielen zugeordnet. |
response_code |
network.dns.response_code |
Der Wert von response_code aus dem Rohlog wird dem entsprechenden DNS-Antwortcode in network.dns.response_code zugeordnet. |
route_type |
Nicht zugeordnet | Nicht dem IDM-Objekt in den bereitgestellten UDM-Beispielen zugeordnet. |
rule_name |
security_result.rule_name |
Der Wert von rule_name aus dem Rohlog wird security_result.rule_name zugewiesen. |
rcvd_bytes |
network.received_bytes |
Der Wert von rcvd_bytes aus dem Rohlog wird network.received_bytes zugewiesen. |
sent_bytes |
network.sent_bytes |
Der Wert von sent_bytes aus dem Rohlog wird network.sent_bytes zugewiesen. |
server_ssl |
Nicht zugeordnet | Nicht dem IDM-Objekt in den bereitgestellten UDM-Beispielen zugeordnet. |
severity |
Nicht zugeordnet | Nicht dem IDM-Objekt in den bereitgestellten UDM-Beispielen zugeordnet. |
sig_vers |
network.tls.server.certificate.version |
Der Wert von sig_vers aus dem Rohlog wird network.tls.server.certificate.version zugewiesen. |
signature_cat |
additional.fields.value.string_value |
Der Wert von signature_cat aus dem Rohlog wird additional.fields.value.string_value zugewiesen, wobei additional.fields.key „signature_cat“ ist. |
signature_id |
additional.fields.value.string_value |
Der Wert von signature_id aus dem Rohlog wird additional.fields.value.string_value zugewiesen, wobei additional.fields.key „signature_id“ ist. |
signature_name |
additional.fields.value.string_value |
Der Wert von signature_name aus dem Rohlog wird additional.fields.value.string_value zugewiesen, wobei additional.fields.key „signature_name“ ist. |
sni |
network.tls.client.server_name |
Der Wert von sni aus dem Rohlog wird network.tls.client.server_name zugewiesen. |
src_ctid |
Nicht zugeordnet | Nicht dem IDM-Objekt in den bereitgestellten UDM-Beispielen zugeordnet. |
src_host |
principal.hostname |
Der Wert von src_host aus dem Rohlog wird principal.hostname zugewiesen. |
src_ip |
principal.ip |
Der Wert von src_ip aus dem Rohlog wird principal.ip zugewiesen. |
src_ip_nat |
Nicht zugeordnet | Nicht dem IDM-Objekt in den bereitgestellten UDM-Beispielen zugeordnet. |
src_mac |
principal.mac |
Der Wert von src_mac aus dem Rohlog wird principal.mac zugewiesen. |
src_port |
principal.port |
Der Wert von src_port aus dem Rohlog wird principal.port zugewiesen. |
src_user |
principal.user.user_display_name |
Der Wert von src_user aus dem Rohlog wird principal.user.user_display_name zugewiesen. |
src_user_name |
principal.user.user_display_name |
Der Wert von src_user_name aus dem Rohlog wird principal.user.user_display_name zugewiesen. |
src_vpn_ip |
principal.ip |
Der Wert von src_vpn_ip aus dem Rohlog wird principal.ip zugewiesen. |
srv_ip |
Nicht zugeordnet | Nicht dem IDM-Objekt in den bereitgestellten UDM-Beispielen zugeordnet. |
srv_port |
Nicht zugeordnet | Nicht dem IDM-Objekt in den bereitgestellten UDM-Beispielen zugeordnet. |
ssl_offload |
Nicht zugeordnet | Nicht dem IDM-Objekt in den bereitgestellten UDM-Beispielen zugeordnet. |
tcp_info |
Nicht zugeordnet | Nicht dem IDM-Objekt in den bereitgestellten UDM-Beispielen zugeordnet. |
time |
metadata.event_timestamp.seconds, timestamp.seconds |
Der Wert von time aus dem Rohlog wird geparst und zum Ausfüllen von metadata.event_timestamp.seconds und timestamp.seconds verwendet. |
time1 |
metadata.event_timestamp.seconds, timestamp.seconds |
Der Wert von time1 aus dem Rohlog wird geparst und zum Ausfüllen von metadata.event_timestamp.seconds und timestamp.seconds verwendet. |
tls_profile |
about.labels.value |
Der Wert von tls_profile aus dem Rohlog wird about.labels.value zugewiesen. about.labels.key ist „tls_profile“. |
tls_version |
Nicht zugeordnet | Nicht dem IDM-Objekt in den bereitgestellten UDM-Beispielen zugeordnet. |
user_name |
principal.user.userid, principal.user.user_display_name |
Der Wert von user_name aus dem Rohlog wird je nach Kontext principal.user.userid oder principal.user.user_display_name zugewiesen. |
user_type |
Nicht zugeordnet | Nicht dem IDM-Objekt in den bereitgestellten UDM-Beispielen zugeordnet. |
| (–) | intermediary.resource.type |
Immer auf „ACCESS_POLICY“ festgelegt. |
| (–) | metadata.event_type |
Wird durch die Parserlogik basierend auf msg_id, log_type, event_name und anderen Feldern bestimmt. Kann NETWORK_CONNECTION, SERVICE_MODIFICATION, NETWORK_SMTP, NETWORK_DNS, NETWORK_HTTP, USER_LOGIN, USER_LOGOUT, USER_RESOURCE_UPDATE_CONTENT, RESOURCE_PERMISSIONS_CHANGE, RESOURCE_CREATION, GENERIC_EVENT, STATUS_UPDATE oder USER_UNCATEGORIZED sein. |
| (–) | metadata.product_name |
Immer auf „Fireware“ eingestellt. |
| (–) | metadata.vendor_name |
Immer auf „Watchguard“ eingestellt. |
| (–) | security_result.action |
Wird durch die Parserlogik basierend auf disposition bestimmt. Kann „ALLOW“ oder „BLOCK“ sein. |
| (–) | extensions.auth.type |
Für Nutzeranmelde- und ‑abmeldeereignisse auf „AUTHTYPE_UNSPECIFIED“ und für Netzwerkereignisse im Zusammenhang mit VPNs auf „VPN“ festgelegt. |
| (–) | network.application_protocol |
Wird durch die Parserlogik basierend auf msg_id und event_name bestimmt. Kann „DNS“, „DHCP“, „HTTP“ oder „HTTPS“ sein. |
| (–) | network.dns.questions.type |
Auf 1 für Abfragen von A-Einträgen festgelegt. |
| (–) | target.labels.key |
Auf „Aktion über Ressource“ festgelegt, wenn action target.labels.value zugeordnet ist. |
| (–) | intermediary.labels.key |
Auf „Firewall Member Name“ festgelegt, wenn prin_host intermediary.labels.value zugeordnet ist. |
| (–) | intermediary.labels.key |
Auf „Gateway-Endpunkt“ festgelegt, wenn endpoint intermediary.labels.value zugeordnet ist. |
| (–) | principal.labels.key |
Legen Sie diesen Wert auf „Gateway“ fest, wenn gateway principal.labels.value zugeordnet ist. |
| (–) | target.labels.key |
Legen Sie diesen Wert auf „Gateway“ fest, wenn gateway target.labels.value zugeordnet ist. |
| (–) | principal.labels.key |
Legen Sie „state“ fest, wenn status principal.labels.value zugeordnet ist. |
| (–) | target.labels.key |
Auf „Gateway-Status“ festgelegt, wenn status target.labels.value zugeordnet ist. |
| (–) | additional.fields.key |
Legen Sie „signature_name“, „signature_cat“, „signature_id“ oder „reputation“ fest, wenn die entsprechenden Werte aus dem Rohlog zugeordnet werden. |
Änderungsprotokoll
Änderungsprotokoll für diesen Parser ansehen
Benötigen Sie weitere Hilfe? Antworten von Community-Mitgliedern und Google SecOps-Experten erhalten