Amazon VPC Transit Gateway-Flusslogs erfassen
Parserversion:3.0
In diesem Dokument wird beschrieben, wie Sie Amazon VPC Transit Gateway-Flusslogs mit Amazon S3 oder Amazon Kinesis Data Firehose in Google Security Operations aufnehmen. In Transit Gateway-Flusslogs werden detaillierte Metadaten zum Netzwerkverkehr (Quell- und Ziel-IPs, Ports, Protokolle, Byte- und Paketanzahl, Aktionen) für Ihre Transit Gateway-Anhänge erfasst. Diese Daten ermöglichen Sicherheitsmonitoring, Anomalieerkennung und Compliance-Auditing in Google SecOps.
Hinweis
Prüfen Sie, ob folgende Voraussetzungen erfüllt sind:
- Eine Google SecOps-Instanz.
- Privilegierter Zugriff auf AWS mit Berechtigungen für Folgendes:
- Transit Gateway-Flow-Logs erstellen und verwalten
- S3-Buckets erstellen (für die S3-Exportoption)
- IAM-Nutzer, ‑Richtlinien und ‑Rollen erstellen
- Kinesis Data Firehose-Bereitstellungsstreams konfigurieren (für die Firehose-Option)
- Auf CloudWatch Logs zugreifen und Abo-Filter erstellen (für Firehose-Option)
Option – Nach Amazon S3 exportieren
Transit Gateway-Flusslogs (zu S3) aktivieren
- Öffnen Sie die Amazon VPC-Konsole unter https://console.aws.amazon.com/vpc/.
- Wählen Sie im Navigationsbereich Transit Gateways aus.
- Aktivieren Sie die Kästchen für ein oder mehrere Transit-Gateways und wählen Sie Aktionen > Flusslog erstellen aus.
- Wählen Sie als Ziel die Option An einen Amazon S3-Bucket senden aus.
Geben Sie für S3-Bucket-ARN den ARN eines vorhandenen S3-Buckets ein (z. B.
arn:aws:s3:::tgw-flowlogs-bucket).Wählen Sie für Format für Logeinträge das Format für den Flusslogeintrag aus:
- AWS-Standardformat: Enthält alle Felder von Version 2 bis Version 6.
- Benutzerdefiniertes Format: Wählen Sie nur die Felder aus, die Sie benötigen.
Wählen Sie als Log file format (Logdateiformat) Text (Standard) oder Parquet aus.
Wählen Sie für Hive-kompatibles S3-Präfix optional Aktivieren aus, um Hive-kompatible Präfixe für die Partitionierung zu verwenden.
Wählen Sie unter Partition logs by time (Logs nach Zeit partitionieren) die Option Every 1 hour (60 min) (Alle 1 Stunde (60 Minuten)) oder Every 24 hours (1440 min) (Alle 24 Stunden (1.440 Minuten)) aus.
Optional: Wählen Sie Neues Tag hinzufügen aus, um dem Flow-Log Tags hinzuzufügen.
Klicken Sie auf Flow-Log erstellen.
Amazon S3-Bucket erstellen
- Öffnen Sie die Amazon S3-Konsole.
- Klicken Sie auf Bucket erstellen.
- Geben Sie die folgenden Konfigurationsdetails an:
- Bucket-Name: Geben Sie einen eindeutigen Namen ein, z. B.
tgw-flowlogs-bucket. - AWS-Region: Wählen Sie dieselbe Region aus, in der sich Ihr Transit Gateway befindet.
- Bucket-Name: Geben Sie einen eindeutigen Namen ein, z. B.
- Klicken Sie auf Bucket erstellen.
IAM-Nutzer mit Zugriff auf Amazon S3 erstellen
- Öffnen Sie die IAM-Konsole.
- Klicken Sie auf Nutzer > Nutzer hinzufügen.
- Geben Sie einen Nutzernamen ein, z. B.
chronicle-tgw-s3-reader. - Wählen Sie Programmatic access (Programmatischer Zugriff) aus.
- Klicken Sie auf Next: Permissions.
- Wählen Sie Vorhandene Richtlinien direkt anhängen aus.
- Suchen Sie nach der Richtlinie AmazonS3ReadOnlyAccess und wählen Sie sie aus.
- Klicken Sie auf Weiter: Tags > Weiter: Überprüfen > Nutzer erstellen.
- Kopieren Sie die Zugriffsschlüssel-ID und den geheimen Zugriffsschlüssel für die Google SecOps-Feedkonfiguration.
Feed in Google SecOps konfigurieren, um Amazon VPC Transit Gateway-Flusslogs (S3) aufzunehmen
- Rufen Sie die SIEM-Einstellungen > Feeds auf.
- Klicken Sie auf Neuen Feed hinzufügen.
- Geben Sie im Feld Feedname einen Namen für den Feed ein, z. B.
AWS Transit Gateway Flow Logs - S3. - Wählen Sie Amazon S3 als Quelltyp aus.
- Wählen Sie Amazon VPC Transit Gateway Flow Logs als Log type (Logtyp) aus.
- Klicken Sie auf Weiter.
Geben Sie Werte für die folgenden Eingabeparameter an:
- S3-URI: Der Bucket-URI, z. B.
s3://tgw-flowlogs-bucket/flow-logs/
- Option zum Löschen der Quelle: Wählen Sie die gewünschte Option zum Löschen aus:
- Nie: Löscht nach Übertragungen niemals Dateien.
- Übertragene Dateien löschen: Dateien werden nach der erfolgreichen Übertragung gelöscht.
- Übertragene Dateien und leere Verzeichnisse löschen: Dateien und leere Verzeichnisse werden nach der erfolgreichen Übertragung gelöscht.
- Höchstalter für Dateien: Dateien einschließen, die in den letzten Tagen geändert wurden (Standard ist 180 Tage)
- Zugriffsschlüssel-ID: Der IAM-Nutzerzugriffsschlüssel mit Zugriff auf den S3-Bucket.
- Geheimer Zugriffsschlüssel: Der geheime Schlüssel des IAM-Nutzers mit Zugriff auf den S3-Bucket
- Asset-Namespace: Der Asset-Namespace
- Labels für Datenaufnahme: Das Label, das auf die Ereignisse aus diesem Feed angewendet werden soll
- S3-URI: Der Bucket-URI, z. B.
Klicken Sie auf Weiter.
Prüfen Sie die Feedkonfiguration und klicken Sie auf Senden.
Option – Streamen über Amazon Kinesis Data Firehose
Transit Gateway-Flusslogs (für CloudWatch Logs) aktivieren
- Öffnen Sie die Amazon VPC-Konsole unter https://console.aws.amazon.com/vpc/.
- Wählen Sie im Navigationsbereich Transit Gateways aus.
- Aktivieren Sie die Kästchen für ein oder mehrere Transit-Gateways und wählen Sie Aktionen > Flusslog erstellen aus.
- Wählen Sie für Ziel die Option An CloudWatch Logs senden aus.
Wählen Sie unter Ziel-Loggruppe eine vorhandene Loggruppe aus oder geben Sie einen neuen Namen ein, um eine neue Loggruppe zu erstellen (z. B.
/aws/tgw/flowlogs).Geben Sie für IAM-Rolle eine Rolle an, die Berechtigungen zum Veröffentlichen von Logs in CloudWatch Logs hat.
Wählen Sie für Format für Logeinträge das Format für den Flusslogeintrag aus:
- AWS-Standardformat: Enthält alle Felder von Version 2 bis Version 6.
- Benutzerdefiniertes Format: Wählen Sie nur die Felder aus, die Sie benötigen.
Optional: Wählen Sie Neues Tag hinzufügen aus, um dem Flow-Log Tags hinzuzufügen.
Klicken Sie auf Flow-Log erstellen.
Feed in Google SecOps erstellen, um Amazon VPC Transit Gateway-Flusslogs (Firehose) aufzunehmen
- Rufen Sie die SIEM-Einstellungen > Feeds auf.
- Klicken Sie auf Neuen Feed hinzufügen.
- Geben Sie im Feld Feedname einen Namen für den Feed ein, z. B.
AWS Transit Gateway Flow Logs - Firehose. - Wählen Sie Amazon Data Firehose als Quelltyp aus.
- Wählen Sie Amazon VPC Transit Gateway Flow Logs als Log type (Logtyp) aus.
- Klicken Sie auf Weiter.
- Geben Sie Werte für die folgenden Eingabeparameter an:
- Trennzeichen für Aufteilung: Geben Sie
\nein. - Asset-Namespace: Der Asset-Namespace
- Labels für Datenaufnahme: Das Label, das auf die Ereignisse aus diesem Feed angewendet werden soll
- Trennzeichen für Aufteilung: Geben Sie
- Klicken Sie auf Weiter.
- Prüfen Sie die Feedkonfiguration und klicken Sie auf Senden.
- Klicken Sie auf Geheimen Schlüssel generieren, um einen geheimen Schlüssel zur Authentifizierung dieses Feeds zu generieren.
- Kopieren und speichern Sie den geheimen Schlüssel. Sie können dieses Secret nicht noch einmal aufrufen.
- Wechseln Sie zum Tab Details.
- Kopieren Sie die Feed-Endpunkt-URL aus dem Feld Endpoint Information (Endpunktinformationen).
- Klicken Sie auf Fertig.
API-Schlüssel für den Amazon Data Firehose-Feed erstellen
- Rufen Sie in der Google Cloud Console die Seite Anmeldedaten unter https://console.cloud.google.com/apis/credentials auf.
- Klicken Sie auf Anmeldedaten erstellen und wählen Sie anschließend API-Schlüssel aus.
- Klicken Sie auf API-Schlüssel bearbeiten, um den Schlüssel einzuschränken.
- Wählen Sie unter API-Einschränkungen die Option Schlüssel einschränken aus.
- Suchen Sie nach Google SecOps API und wählen Sie die Option aus.
- Klicken Sie auf Speichern.
- Kopieren und speichern Sie den API-Schlüssel.
Endpunkt-URL erstellen
Hängen Sie den API-Schlüssel an die URL des Feed-Endpunkts an. Das Format ist:
<FEED_ENDPOINT_URL>?key=<API_KEY>
Ersetzen Sie Folgendes:
<FEED_ENDPOINT_URL>: Die Feed-Endpunkt-URL<API_KEY>: Der API-SchlüsselBeispiel:
https://malachiteingestion-pa.googleapis.com/v2/unstructuredlogentries:batchCreate?key=AIzaSyD...
Speichern Sie diese vollständige URL für den nächsten Schritt.
IAM-Richtlinie für Firehose erstellen
- Rufen Sie in der AWS Console IAM > Richtlinien > Richtlinie erstellen > JSON-Tab auf.
Fügen Sie den folgenden JSON-Code für die Richtlinie ein:
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "firehose:PutRecord", "firehose:PutRecordBatch" ], "Resource": "arn:aws:firehose:<REGION>:<ACCOUNT_ID>:deliverystream/<DELIVERY_STREAM_NAME>" } ] }Ersetzen Sie Folgendes:
<REGION>: Ihre AWS-Region, z. B.us-east-1<ACCOUNT_ID>: Ihre AWS-Konto-ID (12-stellige Nummer)<DELIVERY_STREAM_NAME>: Der Name Ihres Firehose-Übertragungsstreams (diesen erstellen Sie im nächsten Schritt)
Geben Sie der Richtlinie den Namen
TGWFlowLogsToFirehosePolicyund klicken Sie auf Richtlinie erstellen.
IAM-Rolle für CloudWatch Logs erstellen
- Klicken Sie auf IAM > Rollen > Rolle erstellen.
Wählen Sie Benutzerdefinierte Vertrauensrichtlinie aus und fügen Sie Folgendes ein:
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "logs.<REGION>.amazonaws.com" }, "Action": "sts:AssumeRole" } ] }Ersetzen Sie
<REGION>durch Ihre AWS-Region.Klicken Sie auf Weiter.
Suchen Sie nach der Richtlinie
TGWFlowLogsToFirehosePolicyund wählen Sie sie aus.Klicken Sie auf Weiter.
Geben Sie der Rolle den Namen
TGWFlowLogsToFirehoseRoleund klicken Sie auf Rolle erstellen.
Kinesis Data Firehose-Bereitstellungsstream erstellen
- Rufen Sie in der AWS Console Kinesis > Data Firehose > Create delivery stream auf.
Geben Sie die folgenden Konfigurationsdetails an:
Quelle und Ziel:
- Quelle: Wählen Sie Direkter PUT oder andere Quellen aus.
- Ziel: Wählen Sie HTTP-Endpunkt aus.
Name des Bereitstellungsstreams:
- Name des Bereitstellungsstreams: Geben Sie einen Namen ein, z. B.
tgw-flowlogs-to-secops.
- Name des Bereitstellungsstreams: Geben Sie einen Namen ein, z. B.
HTTP-Endpunktziel:
- HTTP-Endpunkt-URL: Geben Sie die vollständige Endpunkt-URL ein, die Sie erstellt haben (Feed-Endpunkt + API-Schlüssel).
- Inhaltsverschlüsselung: Wählen Sie GZIP aus.
Benutzerdefinierte HTTP-Header:
- Klicken Sie auf Benutzerdefinierten HTTP-Header hinzufügen.
- Headername: Geben Sie
X-Goog-Chronicle-Authein. - Header-Wert: Geben Sie den geheimen Schlüssel ein, den Sie beim Erstellen des Feeds gespeichert haben.
Sicherungseinstellungen:
- Sicherung von Quelldatensätzen in Amazon S3: Wählen Sie Nur fehlgeschlagene Daten aus.
- S3-Bucket: Wählen Sie einen vorhandenen Bucket aus oder erstellen Sie einen neuen für fehlgeschlagene Datensätze.
Pufferhinweise:
- Puffergröße: Geben Sie
1MiB ein. - Pufferintervall: Geben Sie
60Sekunden ein.
- Puffergröße: Geben Sie
Klicken Sie auf Lieferstream erstellen.
Warten Sie, bis sich der Status des Bereitstellungsstreams in Aktiv ändert.
CloudWatch-Loggruppe für Firehose abonnieren
- Rufen Sie in der AWS Console CloudWatch > Logs > Log groups auf.
- Wählen Sie die Transit Gateway-Flussloggruppe aus, z. B.
/aws/tgw/flowlogs. - Klicken Sie auf den Tab Abo-Filter.
- Klicken Sie auf Erstellen > Amazon Kinesis Data Firehose-Abo-Filter erstellen.
- Geben Sie die folgenden Konfigurationsdetails an:
- Ziel: Wählen Sie den Bereitstellungsstream
tgw-flowlogs-to-secopsaus. - Berechtigung erteilen: Wählen Sie die Rolle
TGWFlowLogsToFirehoseRoleaus. - Name des Abo-Filters: Geben Sie einen Namen ein, z. B.
tgw-flowlogs-to-chronicle. - Logformat: Wählen Sie Andere aus.
- Abo-Filtermuster: Lassen Sie das Feld leer, um alle Ereignisse zu senden.
- Ziel: Wählen Sie den Bereitstellungsstream
- Klicken Sie auf Streaming starten.
UDM-Zuordnungstabelle
| Logfeld | UDM-Zuordnung | Logik |
|---|---|---|
packets_lost_blackhole_label |
additional.fields |
Zusammengeführt |
packets_lost_mtu_exceeded_label |
additional.fields |
Zusammengeführt |
packets_lost_no_route_label |
additional.fields |
Zusammengeführt |
packets_lost_ttl_expired_label |
additional.fields |
Zusammengeführt |
start_time_label |
additional.fields |
Zusammengeführt |
tcp_flags_label |
additional.fields |
Zusammengeführt |
tgw_attachment_id_label |
additional.fields |
Zusammengeführt |
tgw_id_label |
additional.fields |
Zusammengeführt |
tgw_pair_attachment_id_label |
additional.fields |
Zusammengeführt |
type_label |
additional.fields |
Zusammengeführt |
end_time |
metadata.event_timestamp |
Geparst als UNIX |
event_type |
metadata.event_type |
Direkt zugeordnet |
account_id |
metadata.product_log_id |
Direkt zugeordnet |
version |
metadata.product_version |
Direkt zugeordnet |
flow_direction |
network.direction |
Zugeordnet: (?i)ingress → INBOUND, (?i)egress → OUTBOUND |
bytes |
network.sent_bytes |
Direkt zugeordnet |
packets |
network.sent_packets |
Direkt zugeordnet |
tgw_src_eni |
principal.asset.asset_id |
Direkt zugeordnet |
srcaddr |
principal.asset.ip |
Zusammengeführt |
srcaddr |
principal.ip |
Zusammengeführt |
region |
principal.location.country_or_region |
Direkt zugeordnet |
tgw_src_az_id |
principal.location.country_or_region |
Direkt zugeordnet |
srcport |
principal.port |
Direkt zugeordnet |
pkt_src_aws_service_label |
principal.resource.attribute.labels |
Zusammengeführt |
tgw_src_az_id_label |
principal.resource.attribute.labels |
Zusammengeführt |
tgw_src_subnet_id |
principal.resource.name |
Direkt zugeordnet |
tgw_src_vpc_id |
principal.resource.product_object_id |
Direkt zugeordnet |
resource_type |
principal.resource.resource_subtype |
Direkt zugeordnet |
tgw_src_vpc_account_id |
principal.user.userid |
Direkt zugeordnet |
security_result_action |
security_result.action |
Zusammengeführt |
protocol_label |
security_result.detection_fields |
Zusammengeführt |
tgw_dst_eni |
target.asset.asset_id |
Direkt zugeordnet |
dstaddr |
target.asset.ip |
Zusammengeführt |
dstaddr |
target.ip |
Zusammengeführt |
tgw_dst_az_id |
target.location.country_or_region |
Direkt zugeordnet |
dstport |
target.port |
Direkt zugeordnet |
pkt_dst_aws_service_label |
target.resource.attribute.labels |
Zusammengeführt |
tgw_dst_subnet_id |
target.resource.name |
Direkt zugeordnet |
tgw_dst_vpc_id |
target.resource.product_object_id |
Direkt zugeordnet |
tgw_dst_vpc_account_id |
target.user.userid |
Direkt zugeordnet |
| – | metadata.product_name |
Konstante: AWS VPC Transit Gateway |
| – | metadata.vendor_name |
Konstante: AWS |
| – | network.direction |
Konstante: INBOUND |
Änderungsprotokoll
Änderungsprotokoll für diesen Parser ansehen
Benötigen Sie weitere Hilfe? Antworten von Community-Mitgliedern und Google SecOps-Experten erhalten