Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
Flow-Protokolle in AWS Global Accelerator
Mit Flow-Protokollen können Sie Informationen zum Datenverkehr über die IP-Adresse zu und von Netzwerkschnittstellen in Ihrem Accelerator in AWS Global Accelerator erfassen. Flow-Protokolldaten werden in Amazon S3 veröffentlicht, wo Sie Ihre Daten abrufen und anzeigen können, nachdem Sie ein Flow-Protokoll erstellt haben.
Flow-Protokolle können Ihnen bei einer Reihe von Aufgaben helfen. Sie können beispielsweise Probleme beheben, wenn bestimmter Datenverkehr keinen Endpunkt erreicht, was es Ihnen wiederum ermöglicht, übermäßig beschränkende Sicherheitsgruppenregeln zu erkennen. Sie können auch Flow-Protokolle als Sicherheitstool verwenden, um den Datenverkehr zu überwachen, der Ihre Endpunkte erreicht.
Ein Flow-Protokolldatensatz repräsentiert einen Netzwerk-Flow in Ihrem Flow-Protokoll. Jeder Datensatz erfasst den Netzwerk-Flow für ein bestimmtes 5-Tupel für einen bestimmten Erfassungszeitraum. Ein 5-Tupel besteht aus fünf verschiedenen Werten, die Quelle, Ziel und Protokoll für einen IP-Flow angeben. Der Erfassungszeitraum ist die Zeitdauer, in der der Flow-Protokoll-Service Daten erfasst, bevor diese in Flow-Protokolldatensätzen veröffentlicht werden. Das Erfassungsfenster beträgt etwa 10 Sekunden, kann jedoch auch bis zu 1 Minute dauern.
Bei der Verwendung von Flow-Protokollen fallen Gebühren für CloudWatch Logs an, selbst wenn Protokolle direkt in Amazon S3 veröffentlicht werden. Weitere Informationen finden Sie unterProtokolle an S3 übermittelnumPreise für Amazon CloudWatch
Themen
Veröffentlichen von Flow-Protokollen auf Amazon S3
Flow-Protokolle für AWS Global Accelerator werden in Amazon S3 in einem von Ihnen angegebenen S3-Bucket veröffentlicht. Flow-Protokolldatensätze werden in einer Reihe von Protokolldateiobjekten veröffentlicht, die im -Bucket gespeichert sind.
Informationen zum Erstellen eines Amazon S3-Buckets für die Verwendung mit Flow-Protokollen finden Sie unter Erstellen eines Buckets im Amazon Simple Storage Service Handbuch "Erste Schritte".
Dateien für Flow-Protokolle
Flow-Protokolle erfassen Flow-Protokolldatensätze, fassen sie in Protokolldateien zusammen und veröffentlichen die Protokolldateien in 5-Minuten-Intervallen in dem Amazon S3-Bucket. Jede Protokolldatei enthält Flow-Protokolldatensätze für den in den letzten fünf Minuten aufgezeichneten IP-Adressverkehr.
Die maximale Dateigröße für eine Protokolldatei beträgt 75 MB. Wenn die Protokolldatei die Dateigrößenbeschränkung innerhalb des 5-Minuten-Zeitraums erreicht, fügt das Flow-Protokoll keine weiteren Flow-Protokollsätze hinzu, veröffentlicht sie im Amazon S3 Bucket und erstellt dann eine neue Protokolldatei.
Protokolldateien werden in dem angegebenen Amazon S3-Bucket gespeichert. Dazu wird eine Ordnerstruktur verwendet, die von der ID des Flow-Protokolls, der Region und dem Erstellungsdatum bestimmt wird. Die Bucket-Ordnerstruktur verwendet das folgende Format:
s3-bucket_name
/s3-bucket-prefix
/AWSLogs/aws_account_id
/globalaccelerator/region
/yyyy/mm/dd
/
Ebenso wird der Name der Protokolldatei anhand der ID des Flow-Protokolls, der Region sowie dem Datum und der Uhrzeit der Erstellung bestimmt. Dateinamen müssen das folgende Format verwenden:
aws_account_id
_globalaccelerator_accelerator_id
_flow_log_id_timestamp_hash
.log.gz
Beachten Sie Folgendes zur Ordner- und Dateinamenstruktur für Protokolldateien:
Der Zeitstempel verwendet das Format
YYYYMMDDTHHmmZ
.Wenn Sie Schrägstrich (/) für das S3-Bucket-Präfix angeben, enthält die Protokolldatei-Bucket-Ordnerstruktur einen doppelten Schrägstrich (//) wie folgt:
s3-bucket_name
//AWSLogs/aws_account_id
Das folgende Beispiel zeigt die Ordnerstruktur und den Dateinamen einer Protokolldatei für ein vom AWS Konto erstelltes Flow-Protokoll123456789012
für einen Beschleuniger mit der ID1234abcd-abcd-1234-abcd-1234abcdefgh
, am 23. November 2018 um 00:05 UTC:
my-s3-bucket/prefix1/AWSLogs/123456789012/globalaccelerator/us-west-2/2018/11/23/123456789012_globalaccelerator_1234abcd-abcd-1234-abcd-1234abcdefgh_20181123T0005Z_1fb1234.log.gz
Eine einzelne Flow-Protokolldatei enthält interleaved Einträge mit mehreren 5-Tupel-Datensätzen, d. h.client_ip
,client_port
,accelerator_ip
,accelerator_port
,protocol
. Um alle Flow-Protokolldateien für den Accelerator anzuzeigen, suchen Sie nach Einträgen, die von deraccelerator_id
und Ihreaccount_id
.
IAM-Rollen zum Veröffentlichen von Flow-Protokollen in Amazon S3
Ein IAM-Prinzipal, wie z. B. ein IAM-Benutzer, muss über ausreichende Berechtigungen zum Veröffentlichen von Flow-Protokollen im Amazon S3 Bucket verfügen. Die IAM-Richtlinie muss die folgende Berechtigungen umfassen:
{ "Version": "2012-10-17", "Statement": [ { "Sid": "DeliverLogs", "Effect": "Allow", "Action": [ "logs:CreateLogDelivery", "logs:DeleteLogDelivery" ], "Resource": "*" }, { "Sid": "AllowGlobalAcceleratorService", "Effect": "Allow", "Action": [ "globalaccelerator:*" ], "Resource": "*" }, { "Sid": "s3Perms", "Effect": "Allow", "Action": [ "s3:GetBucketPolicy", "s3:PutBucketPolicy" ], "Resource": "*" } ] }
Amazon S3-Bucket-Berechtigungen für Flow-Protokolle
Standardmäßig sind Amazon S3 Buckets und die darin enthaltenen Objekte privat. Nur der Bucket-Besitzer kann auf den Bucket und die darin gespeicherten Objekte zugreifen. Der Bucket-Besitzer kann jedoch anderen Ressourcen und Benutzern Zugriffsberechtigungen gewähren, indem er eine Zugriffsrichtlinie schreibt.
Wenn der Benutzer, der das Flow-Protokoll erstellt, den Bucket besitzt, fügt der Dienst automatisch die folgende Richtlinie an den Bucket an, um dem Flow-Protokoll die Berechtigung zum Veröffentlichen von Protokollen darin zu erteilen:
{ "Version": "2012-10-17", "Statement": [ { "Sid": "AWSLogDeliveryWrite", "Effect": "Allow", "Principal": {"Service": "delivery.logs.amazonaws.com"}, "Action": "s3:PutObject", "Resource": "arn:aws:s3:::
bucket_name/optional_folder
/AWSLogs/account_id
/*", "Condition": {"StringEquals": {"s3:x-amz-acl": "bucket-owner-full-control"}} }, { "Sid": "AWSLogDeliveryAclCheck", "Effect": "Allow", "Principal": {"Service": "delivery.logs.amazonaws.com"}, "Action": "s3:GetBucketAcl", "Resource": "arn:aws:s3:::bucket_name
" } ] }
Wenn der Benutzer, der das Flow-Protokoll erstellt, nicht Eigentümer des Buckets ist, hat er keine GetBucketPolicy
- und PutBucketPolicy
-Berechtigungen für den Bucket und das Flow-Protokoll kann nicht erstellt werden. In diesem Fall muss der Bucket-Besitzer dem Bucket die vorherige Richtlinie manuell hinzufügen und die AWS Konto-ID des Erstellers des Flow-Protokolls angeben. Weitere Informationen finden Sie unterWie füge ich eine S3-Bucket-Richtlinie hinzu?imHandbuch „Erste Schritte“ für Amazon Simple Storage Service. Wenn der Bucket Flow-Protokolle von mehreren Konten erhält, fügen Sie der AWSLogDeliveryWrite
-Richtlinienanweisung für jedes Konto einen Resource
-Elementeintrag hinzu.
Die folgende Bucket-Richtlinie beispielsweise gestattet den AWS Konten 123123123123 und 456456456456, Flow-Protokolle in einem Ordner namensflow-logs
In einem -Bucket mit dem Namenlog-bucket
:
{ "Version": "2012-10-17", "Statement": [ { "Sid": "AWSLogDeliveryWrite", "Effect": "Allow", "Principal": {"Service": "delivery.logs.amazonaws.com"}, "Action": "s3:PutObject", "Resource": [ "arn:aws:s3:::log-bucket/flow-logs/AWSLogs/123123123123/*", "arn:aws:s3:::log-bucket/flow-logs/AWSLogs/456456456456/*" ], "Condition": {"StringEquals": {"s3:x-amz-acl": "bucket-owner-full-control"}} }, { "Sid": "AWSLogDeliveryAclCheck", "Effect": "Allow", "Principal": {"Service": "delivery.logs.amazonaws.com"}, "Action": "s3:GetBucketAcl", "Resource": "arn:aws:s3:::log-bucket" } ] }
Anmerkung
Wir empfehlen, dass Sie dieAWSLogDeliveryAclCheck
undAWSLogDeliveryWrite
-Berechtigungen an den Protokollbereitstellungs-Service-Prinzipal statt einzelnen AWS Konten-ARNs.
Erforderliche CMK-Schlüsselrichtlinie zur Verwendung mit SSE-KMS Buckets
Wenn Sie serverseitige Verschlüsselung für Ihren Amazon S3-Bucket unter Verwendung von AWS KMS-verwalteten Schlüsseln (SSE-KMS) mit einem vom Kunden verwalteten Kundenmasterschlüssel (Customer Master Key, CMK) aktiviert haben, müssen Sie der Schlüsselrichtlinie für Ihren CMK Folgendes hinzufügen, damit die Flow-Protokolle Protokolldateien in den Bucket schreiben können:
{ "Sid": "Allow AWS Global Accelerator Flow Logs to use the key", "Effect": "Allow", "Principal": { "Service": [ "delivery.logs.amazonaws.com" ] }, "Action": "kms:GenerateDataKey*", "Resource": "*" }
Amazon S3-Protokolldateiberechtigungen
Zusätzlich zu den erforderlichen Bucket-Richtlinien verwendet Amazon S3 Zugriffskontrolllisten (ACLs), um den Zugriff auf die durch ein Flow-Protokoll erzeugten Protokolldateien zu verwalten. Standardmäßig hat der Bucket-Eigentümer FULL_CONTROL
-Berechtigungen für jede Protokolldatei. Der Protokollbereitstellungseigentümer hat keine Berechtigungen, wenn er nicht gleichzeitig der Bucket-Eigentümer ist. Das Konto für die Protokollbereitstellung hat READ
- und WRITE
-Berechtigungen. Weitere Informationen finden Sie unterZugriffskontrolllisten (ACL) – ÜbersichtimHandbuch „Erste Schritte“ für Amazon Simple Storage Service.
Aktivieren Sie die Veröffentlichung von Flow-Protokollen in Amazon S3
Führen Sie die Schritte in diesem Verfahren aus, um Flussprotokolle in AWS Global Accelerator zu aktivieren.
So aktivieren Sie Flow-Protokolle in AWS Global Accelerator
-
Erstellen Sie einen Amazon S3 Bucket für Ihre Flow-Protokolle in Ihrem AWS Konto.
-
Fügen Sie die erforderliche IAM-Richtlinie für den AWS Benutzer hinzu, der die Flow-Protokolle aktiviert. Weitere Informationen finden Sie unter IAM-Rollen zum Veröffentlichen von Flow-Protokollen in Amazon S3.
-
Führen Sie den folgenden AWS CLI-Befehl mit dem Amazon S3 Bucket-Namen und dem Präfix aus, das Sie für Ihre Protokolldateien verwenden möchten:
aws globalaccelerator update-accelerator-attributes --accelerator-arn arn:aws:globalaccelerator::
012345678901
:accelerator/1234abcd-abcd-1234-abcd-1234abcdefgh
--region us-west-2 --flow-logs-enabled --flow-logs-s3-buckets3-bucket-name
--flow-logs-s3-prefixs3-bucket-prefix
Verarbeiten von Flow-Protokolldatensätzen in Amazon S3
Die Protokolldateien werden komprimiert. Wenn Sie die Protokolldateien unter Verwendung der Amazon S3-Konsole öffnen, werden sie dekomprimiert und die Flow-Protokolldatensätze werden angezeigt. Wenn Sie die Dateien herunterladen, müssen Sie sie dekomprimieren, um die Flow-Protokolldatensätze anzuzeigen.
Zeitplan der Dateizustellung von Protokolldateien
AWS Global Accelerator kann mehrmals pro Stunde Protokolldateien für Ihren konfigurierten Accelerator bereitstellen. Im Allgemeinen enthält eine Protokolldatei Informationen zu den Anfragen, die Ihr Accelerator während eines bestimmten Zeitraums erhalten hat. Normalerweise übermittelt Global Accelerator die Protokolldatei für diesen Zeitraum innerhalb einer Stunde, nachdem Ereignisse im Protokoll erfasst werden, an Ihren Amazon S3 Bucket. Einige oder auch alle Protokolldateieinträge für einen bestimmten Zeitraum können manchmal um bis zu 24 Stunden verzögert werden. Wenn es zu einer Verzögerung kommt, speichert Global Accelerator die Protokolleinträge in einer Protokolldatei, in der die Dateinamen das Datum und die Uhrzeit des Zeitraums enthalten, in dem die Anfragen aufgetreten sind, und nicht die Daten des Zeitraums, in dem die Datei übermittelt wurde.
Beim Erstellen einer Protokolldatei fasst Global Accelerator Informationen für Ihren Accelerator von allen Edge-Standorten zusammen, die während des von der Protokolldatei abgedeckten Zeitraums Anfragen erhalten haben.
Ca. vier Stunden, nachdem die Protokollierung aktiviert wurde, beginnt Global Accelerator damit, regelmäßig Protokolldateien zu übermitteln. Möglicherweisen erhalten Sie ein paar Protokolldateien auch schon vorher.
Anmerkung
Wenn während eines bestimmten Zeitraums keine Benutzer mit Ihrem Accelerator verbunden sind, erhalten Sie keine Protokolldateien für diesen Zeitraum.
Syntax des Flow-Protokolldat
Ein Flow-Protokolldatensatz ist eine durch Leerzeichen getrennte Zeichenfolge im folgenden Format:
<version> <aws_account_id> <accelerator_id> <client_ip> <client_port>
<accelerator_ip> <accelerator_port> <endpoint_ip> <endpoint_port> <protocol>
<ip_address_type> <packets> <bytes> <start_time> <end_time> <action>
<log-status> <globalaccelerator_source_ip> <globalaccelerator_source_port> <endpoint_region>
<globalaccelerator_region> <direction> <vpc_id>
Das Format Version 1.0 enthält nicht den VPC Bezeichner,vpc_id
. Das Format Version 2.0-Format, dasvpc_id
, wird generiert, wenn Global Accelerator Datenverkehr an einen Endpunkt mit der Erhaltung der Client-IP-Adresse sendet.
Die folgende Tabelle beschreibt die Felder eines Flow-Protokolldatensatzes.
Feld | Beschreibung |
---|---|
|
Die Version der Flow Logs. |
|
Die AWS-Kontonummer für das Flow-Protokoll |
|
Die ID des Accelerators, für den der Datenverkehr aufgezeichnet wird. |
|
Die IPv4-Quelladresse. |
|
Der Quellport. |
|
IP-Adresse des Accelerators |
|
Der Hafen des Beschleunigers. |
|
Ziel-IP-Adresse des Datenverkehrs |
|
Der Zielport des Datenverkehrs |
|
Die IANA-Protokollnummer des Datenverkehrs. Weitere Informationen finden Sie unter Zugewiesene IP-Nummern |
|
IPv4 |
|
Die Anzahl der Pakete, die während des Erfassungszeitraums übertragen wurden |
|
Die Anzahl der Byte, die während des Erfassungszeitraums übertragen wurden |
|
Der Anfangszeitpunkt des Erfassungszeitraums in Unix-Sekunden |
|
Der Endzeitpunkt des Erfassungszeitraums in Unix-Sekunden |
|
Die Aktion im Zusammenhang mit dem Datenverkehr
|
|
Der Protokollstatus des Flow-Protokolls:
|
|
Die IP-Adresse, die von der Global Accelerator-Netzwerkschnittstelle verwendet wird. |
|
Der Port, der von der Global Accelerator-Netzwerkschnittstelle verwendet wird. |
|
Die AWS Region, in der sich der Endpunkt befindet. |
|
Der Edge-Standort (Anwesenheitsort), an dem die Anfrage verarbeitet wurde. Jeder Edge-Standort hat einen Code aus drei Buchstaben und eine willkürlich zugewiesene Zahl, z. B. DFW3. Der Code aus drei Buchstaben entspricht dem Code der International Air Transport Association für einen Flughafen in der Nähe des Edge-Standorts. (Diese Abkürzungen ändern sich möglicherweise in der Zukunft.) |
|
Die Richtung des Verkehrs. Bezeichnet den Datenverkehr, der in das Global Accelerator-Netzwerk ( |
|
Der VPC Bezeichner. In der Version 2.0-Flussprotokolle enthalten, wenn Global Accelerator Datenverkehr an einen Endpunkt mit der Erhaltung der Client-IP-Adresse sendet. |
Wenn ein Feld nicht für einen bestimmten Datensatz gilt, wird für diesen Eintrag ein '-' angezeigt.