Logdi flusso in AWS Global Accelerator - AWS Global Accelerator

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Logdi flusso in AWS Global Accelerator

I log di flusso ti consentono di acquisire informazioni sul traffico degli indirizzi IP da e per le interfacce di rete nell'acceleratore in AWS Global Accelerator. I dati dei log di flusso vengono pubblicati su Amazon S3, dove puoi recuperare e visualizzare i dati dopo aver creato un log di flusso.

I log di flusso possono essere utili per diverse attività. Ad esempio, puoi risolvere i problemi relativi a traffico specifico che non raggiunge un endpoint, che a sua volta consente di diagnosticare regole del gruppo di sicurezza eccessivamente restrittive. Puoi anche utilizzare i log di flusso come uno strumento di sicurezza per monitorare il traffico che raggiunge i tuoi endpoint.

Un record di log di flusso rappresenta un flusso di rete nel log di flusso. Ogni record acquisisce l'interfaccia di rete per un 5 tuple specifico, per una finestra di acquisizione specifica. Una 5 tuple è un set di cinque diversi valori che specificano l'origine, la destinazione E il protocollo di un flusso IP. La finestra di acquisizione è un periodo di tempo durante il quale il servizio dei log di flusso aggrega i dati prima di pubblicare i record del log di flusso. La finestra di acquisizione è di circa 10 secondi, ma può richiedere fino a 1 minuto.

I costi di CloudWatch Logs si applicano quando si utilizzano log di flusso, anche quando i log vengono pubblicati direttamente su Amazon S3. Per ulteriori informazioni, consultaConsegna dei registri a S3allePrezzi Amazon CloudWatch: .

Pubblicazione di log di flusso su Amazon S3

I log di flusso per AWS Global Accelerator vengono pubblicati su Amazon S3 in un bucket S3 esistente specificato. I record di log di flusso vengono pubblicati in una serie di oggetti file di log archiviati nel bucket.

Per creare un bucket Amazon S3 da utilizzare con i registri di flusso, consulta Crea un bucket nella Guida introduttiva di Amazon Simple Storage Service.

File dei log di flusso

I log di flusso raccolgono record di log, li consolidano in file di log e pubblicano i file di log nel bucket Amazon S3 a intervalli di cinque minuti. Ogni file di log contiene record di log di flusso per il traffico degli indirizzi IP registrato nei cinque minuti precedenti.

Le dimensioni file massime per un file di log sono di 75 MB. Se il file di log raggiunge il limite delle dimensioni del file entro il periodo di cinque minuti, il log di flusso smette di aggiungervi record di log di flusso, lo pubblica nel bucket Amazon S3 e crea un nuovo file di log.

I file di log vengono salvati nel bucket Amazon S3; utilizzando una struttura di cartelle che è determinata dall'ID del log di flusso, dalla regione e dalla loro data di creazione. La struttura di cartelle del bucket utilizza il seguente formato:

s3-bucket_name/s3-bucket-prefix/AWSLogs/aws_account_id/globalaccelerator/region/yyyy/mm/dd/

Analogamente, il nome del file di log è determinato dall'ID del log di flusso, dalla regione e dalla data e ora di creazione. I nomi file utilizzano il formato seguente:

aws_account_id_globalaccelerator_accelerator_id_flow_log_id_timestamp_hash.log.gz

Tenere presente quanto segue sulla struttura dei nomi delle cartelle e dei file per i file di registro:

  • Il timestamp utilizza il formato YYYYMMDDTHHmmZ.

  • Se si specifica la barra (/) per il prefisso bucket S3, la struttura della cartella bucket del file di registro includerà una doppia barra (//), come la seguente:

    s3-bucket_name//AWSLogs/aws_account_id

L'esempio seguente mostra la struttura di cartelle e il nome file di un file di log per un log di flusso creato dall'account AWS123456789012per un acceleratore con un ID di1234abcd-abcd-1234-abcd-1234abcdefgh, il 23 novembre 2018 alle 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

Un singolo file di log del flusso contiene voci interfogliate con più record a 5 tuple, ovveroclient_ip,client_port,accelerator_ip,accelerator_port,protocol: . Per visualizzare tutti i file di log del flusso per l'acceleratore, cercare le voci aggregate dalaccelerator_idE la tuaaccount_id: .

Ruoli IAM per la pubblicazione di log di flusso in Amazon S3

Un'entità principale IAM, ad esempio un utente IAM, deve disporre di autorizzazioni sufficienti per pubblicare log di flusso nel bucket Amazon S3. La policy IAM deve includere le autorizzazioni seguenti:

{ "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": "*" } ] }

Autorizzazioni dei bucket Amazon S3 per log di flusso

Per impostazione predefinita, i bucket Amazon S3 e gli oggetti che contengono sono privati. Solo il proprietario del bucket può accedere al bucket e agli oggetti in esso archiviati. Il proprietario del bucket, tuttavia, può concedere l'accesso ad altre risorse e ad altri utenti mediante una policy di accesso.

Se l'utente che crea il log di flusso è il proprietario del bucket, il servizio collega automaticamente la seguente policy al bucket per concedere al log di flusso l'autorizzazione per pubblicare log in esso:

{ "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" } ] }

Se l'utente che crea il log di flusso non è il proprietario del bucket, o non dispone delle autorizzazioni GetBucketPolicy e PutBucketPolicy per il bucket, la creazione del log di flusso non va a buon fine. In questo caso, il proprietario del bucket deve aggiungere manualmente la policy precedente al bucket e specificare l'ID account AWS dell'autore del log di flusso. Per ulteriori informazioni, consultaIn che modo aggiungere una policy del bucket S3?nellaGuida alle operazioni di base di Amazon Simple Storage Service: . Se il bucket riceve log di flusso da più account, aggiungi una voce elemento Resource alla dichiarazione di policy AWSLogDeliveryWrite per ogni account.

Ad esempio, i criteri bucket seguenti consentono agli account AWS 123123123123 e 456456456456456456 di pubblicare log di flusso in una cartella denominataflow-logsIn un bucket denominatolog-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" } ] }
Nota

Ti consigliamo di concedere laAWSLogDeliveryAclCheckeAWSLogDeliveryWriteLe autorizzazioni per l'entità principale del servizio di recapito log anziché singoli ARN di account AWS.

Policy chiave CMK necessarie per l'utilizzo con i bucket SSE/KMS

Se si abilita la crittografia lato server per il bucket Amazon S3 utilizzando chiavi gestite da AWS KMS (SSE-KMS) con una Customer Master Key (CMK) gestita dal cliente, è necessario aggiungere la seguente policy chiave per la CMK in modo che i log di flusso possano scrivere file di log nel bucket:

{ "Sid": "Allow AWS Global Accelerator Flow Logs to use the key", "Effect": "Allow", "Principal": { "Service": [ "delivery.logs.amazonaws.com" ] }, "Action": "kms:GenerateDataKey*", "Resource": "*" }

Autorizzazioni del file di log Amazon S3

In aggiunta alle policy dei bucket obbligatorie, Amazon S3 utilizza liste di controllo accessi per gestire l'accesso ai file di log creati da un log di flusso. Per impostazione predefinita, il proprietario del bucket dispone di autorizzazioni FULL_CONTROL su ogni file di log. Il proprietario della distribuzione dei log, se diverso dal proprietario del bucket, non dispone di autorizzazioni. L'account di distribuzione dei log dispone delle autorizzazioni READ e WRITE. Per ulteriori informazioni, consultaPanoramica delle liste di controllo accessi (ACL)nellaGuida alle operazioni di base di Amazon Simple Storage Service: .

Abilita i log di flusso di pubblicazione su Amazon S3

Per abilitare i log di flusso in AWS Global Accelerator, attenersi alla procedura descritta in questa procedura.

Per abilitare i log di flusso in AWS Global Accelerator

  1. Crea un bucket Amazon S3 per i log di flusso nel tuo account AWS.

  2. Aggiungere il criterio IAM richiesto per l'utente AWS che sta abilitando i registri di flusso. Per ulteriori informazioni, consulta Ruoli IAM per la pubblicazione di log di flusso in Amazon S3.

  3. Eseguire il seguente comando AWS CLI, con il nome del bucket Amazon S3 e il prefisso che si desidera utilizzare per i file di registro:

    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-bucket s3-bucket-name --flow-logs-s3-prefix s3-bucket-prefix

Elaborazione di record del log di flusso in Amazon S3

I file di log sono compressi. Se si aprono i file di log utilizzando la console Amazon S3, vengono decompressi e i record del log di flusso visualizzati. Se i file vengono scaricati, devono essere decompressi per visualizzare i record del log di flusso.

Tempi di recapito file di log

AWS Global Accelerator fornisce i file di log dell'acceleratore configurato più volte ogni ora. In generale, un file di log contiene informazioni sulle richieste che l'acceleratore ha ricevuto durante un determinato periodo di tempo. Global Accelerator fornisce generalmente al tuo bucket Amazon S3 il file di log corrispondente a quel periodo nell'ora che segue gli eventi che appaiono nel log. Alcune o tutte le voci di file di log relative a un periodo di tempo possono talvolta essere ritardate fino a 24 ore. Quando le voci di log sono ritardate, Global Accelerator le salva in un file di log il cui nome di file include la data e l'ora del periodo in cui si sono verificate le richieste e non la data e l'ora in cui il file è stato recapitato.

Quando crei un file di log, Global Accelerator consolida le informazioni per l'acceleratore da tutte le edge location che hanno ricevuto richieste durante il periodo di tempo coperto dal file di log.

Global Accelerator inizia a consegnare file di log in modo affidabile all'incirca quattro ore dopo l'attivazione della registrazione. È possibile che tu ottenga alcuni file di log prima di quel momento.

Nota

Se nessun utente si connette al tuo acceleratore durante il periodo di tempo, non riceverai alcun file di log per quel periodo.

Sintassi dei record di log

Un record di log di flusso è una stringa separata da spazi avente il seguente formato:

<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>

Il formato versione 1.0 non include l'identificatore VPC,vpc_id: . Il formato della versione 2.0, che includevpc_id, viene generato quando Global Accelerator invia il traffico a un endpoint con conservazione dell'indirizzo IP del client.

La tabella di seguito descrive i campi di un record di log di flusso.

Campo Descrizione

version

La versione dei registri di flusso.

aws_account_id

ID account di AWS per il log di flusso.

accelerator_id

L'ID dell'acceleratore per cui viene registrato il traffico.

client_ip

L'indirizzo IPv4 di origine.

client_port

La porta di origine.

accelerator_ip

L'indirizzo IP dell'acceleratore.

accelerator_port

Il porto dell'acceleratore.

endpoint_ip

L'indirizzo IP di destinazione del traffico.

endpoint_port

La porta di destinazione del traffico.

protocol

Il numero di protocollo IANA del traffico. Per ulteriori informazioni, consulta la sezione relativa ai numeri di protocollo Internet assegnati.

ip_address_type

IPv4.

packets

Il numero di pacchetti trasferiti durante la finestra di acquisizione.

bytes

Il numero di byte trasferiti durante la finestra di acquisizione.

start_time

L'ora, in secondi Unix, dell'inizio della finestra di acquisizione.

end_time

L'ora, in secondi Unix, della fine della finestra di acquisizione.

action

L'operazione associata al traffico:

  • ACCEPT: il traffico registrato è stato consentito dai gruppi di sicurezza o dalle liste di controllo accessi di rete. Il valore è attualmente sempre ACCEPT.

log-status

Lo stato di registrazione del log di flusso:

  • OK: dati registrati normalmente nelle destinazioni scelte.

  • NODATA: nessun traffico di rete da o per l'interfaccia di rete durante la finestra di acquisizione.

  • SKIPDATA: alcuni record del log di flusso sono stati ignorati durante la finestra di acquisizione. Ciò può essere causato da un vincolo di capacità interna o da un errore interno.

globalaccelerator_source_ip

Indirizzo IP utilizzato dall'interfaccia di rete Global Accelerator.

globalaccelerator_source_port

La porta utilizzata dall'interfaccia di rete Global Accelerator.

endpoint_region

La regione AWS in cui si trova l'endpoint.

globalaccelerator_region

La edge location (punto di presenza) che ha servito la richiesta. Ogni edge location ha un codice di tre lettere e un numero assegnato arbitrariamente, ad esempio DFW3. Il codice di tre lettere di solito corrisponde al codice aeroportuale della International Air Transport Association per l'aeroporto vicino alla edge location. (Queste abbreviazioni potrebbero cambiare in futuro).

direction

La direzione del traffico. Indica il traffico che entra nella rete Global Accelerator (INGRESS) o tornare al client (EGRESS).

vpc_id

L'identificatore VPC. Incluso nei log di flusso versione 2.0 quando Global Accelerator invia il traffico a un endpoint con conservazione dell'indirizzo IP del client.

Se un campo non è applicabile per un record specifico, il record visualizza un simbolo «-» per tale voce.