Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
Journaux de flux dans AWS Global Accelerator
Les journaux de flux vous permettent de capturer des informations sur le trafic d'adresses IP entrant et sortant dans les interfaces réseau dans votre accélérateur dans AWS Global Accelerator. Les données du journal de flux sont publiées dans Amazon S3, où vous pouvez récupérer et afficher vos données après que vous avez créé un journal de flux.
Les journaux de flux peuvent vous aider pour de nombreuses tâches. Par exemple, vous pouvez déterminer pourquoi un trafic spécifique n'atteint pas un point de terminaison, ce qui vous aide à diagnostiquer des règles de groupe de sécurité trop restrictives. Vous pouvez également utiliser les journaux de flux comme outil de sécurité pour surveiller le trafic qui atteint vos points de terminaison.
Un enregistrement de journal de flux représente un flux de réseau dans votre journal de flux. Chaque enregistrement capture le flux de réseau pour un 5-uplet spécifique, pour une fenêtre de capture spécifique. Un 5-uplet est un ensemble de cinq valeurs différentes qui spécifient la source, la destination et un protocole pour un flux IP. La fenêtre de capture correspond à la durée pendant laquelle le service de journaux de flux regroupe les données avant de publier les enregistrements de journaux de flux. La fenêtre de capture dure environ 10 secondes, mais elle peut aller jusqu'à 1 minute.
Des frais de CloudWatch Logs s'appliquent lors de l'utilisation de journaux de flux, même lorsque les journaux sont publiés directement dans Amazon S3. Pour de plus amples informations, veuillez consulterLivrer les journaux à S3àTarification Amazon CloudWatch
Rubriques
Publication des journaux de flux sur Amazon S3
Les journaux de flux pour AWS Global Accelerator sont publiés dans Amazon S3 dans un compartiment S3 existant que vous spécifiez. Les enregistrements de journaux de flux sont publiés dans une série d'objets de fichier journal qui sont stockés dans le compartiment.
Pour créer un compartiment Amazon S3 à utiliser avec les journaux de flux, reportez-vous à Créer un compartiment dans leGuide de démarrage Amazon Simple Storage Service.
Fichiers journaux de flux
Les journaux de flux collectent les enregistrements de journal de flux, les consolident dans des fichiers journaux, puis publient ceux-ci dans le compartiment Amazon S3 à intervalles de 5 minutes. Chaque fichier journal contient des enregistrements de journaux de flux pour le trafic de l'adresse IP enregistré au cours des cinq dernières minutes.
La taille maximale d'un fichier journal est de 75 Mo. Si le fichier journal atteint la limite maximale de taille au cours de la période de 5 minutes, le journal de flux cesse de lui ajouter des enregistrements de journaux de flux, le publie dans le compartiment Amazon S3, puis crée un nouveau fichier journal.
Les fichiers journaux sont enregistrés dans le compartiment Amazon S3 indiqué à l'aide d'une structure de dossiers qui est déterminée par l'ID du journal de flux, sa région et sa date de création. La structure de dossiers du compartiment utilise le format suivant :
s3-bucket_name
/s3-bucket-prefix
/AWSLogs/aws_account_id
/globalaccelerator/region
/yyyy/mm/dd
/
De même, le nom du fichier journal est déterminé par son ID, sa région, ainsi que la date et l'heure de sa création. Les noms de fichier utilisent le format suivant :
aws_account_id
_globalaccelerator_accelerator_id
_flow_log_id_timestamp_hash
.log.gz
Notez ce qui suit à propos de la structure des dossiers et des noms de fichiers pour les fichiers journaux :
L'horodatage utilise le format
YYYYMMDDTHHmmZ
.Si vous spécifiez une barre oblique (/) pour le préfixe du compartiment S3, la structure du dossier du compartiment du fichier journal inclut une double barre oblique (//), comme suit :
s3-bucket_name
//AWSLogs/aws_account_id
L'exemple suivant montre la structure de dossiers et le nom d'un fichier journal pour un flux créé par le compte AWS123456789012
pour un accélérateur avec un ID de1234abcd-abcd-1234-abcd-1234abcdefgh
, le 23 novembre 2018 à 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 fichier journal de flux unique contient des entrées entrelacées avec plusieurs enregistrements de 5 tuples, c'est-à-direclient_ip
,client_port
,accelerator_ip
,accelerator_port
,protocol
. Pour afficher tous les fichiers journaux de flux de votre accélérateur, recherchez les entrées agrégées par leaccelerator_id
et vos recettesaccount_id
.
Rôles IAM pour la publication des journaux de flux sur Amazon S3
Un mandataire IAM tel qu'un utilisateur IAM doit disposer d'autorisations suffisantes pour publier des journaux de flux dans le compartiment Amazon S3. La stratégie IAM doit inclure les autorisations suivantes :
{ "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": "*" } ] }
Autorisations du compartiment Amazon S3 pour les journaux de flux
Les compartiments Amazon S3 et les objets qu'ils contiennent sont confidentiels par défaut. Seul le propriétaire du compartiment peut accéder au compartiment et aux objets qui sont stockés dedans. Le propriétaire du compartiment peut toutefois accorder des autorisations d'accès à d'autres ressources et à d'autres utilisateurs en créant une stratégie d'accès.
Si l'utilisateur qui crée le journal de flux est le propriétaire du compartiment, le service attache automatiquement la stratégie suivante au compartiment pour donner au journal de flux l'autorisation de publier des journaux dans ce compartiment :
{ "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
" } ] }
Si l'utilisateur qui crée le journal de flux n'est pas le propriétaire du compartiment ou ne dispose pas des autorisations GetBucketPolicy
et PutBucketPolicy
pour le compartiment, la création du journal de flux échoue. Dans ce cas, le propriétaire du compartiment doit ajouter manuellement la stratégie précédente au compartiment et indiquer l'ID de compte AWS du créateur du journal de flux. Pour de plus amples informations, veuillez consulterComment ajouter une stratégie de compartiment S3 ?dans leGuide de mise en route Amazon Simple Storage Service. Si le compartiment reçoit des journaux de flux de plusieurs comptes, ajoutez une entrée d'élément Resource
à la déclaration de stratégie AWSLogDeliveryWrite
pour chaque compte.
Par exemple, la stratégie de compartiment suivante permet aux comptes AWS 123123123 et 456456456456456456456 de publier des journaux de flux dans un dossier nomméflow-logs
dans un compartiment nommélog-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" } ] }
Note
Nous vous recommandons d'accorder leAWSLogDeliveryAclCheck
andAWSLogDeliveryWrite
au principal du service de remise des journaux plutôt qu'à des ARN de compte AWS individuels.
Stratégie de clé CMK obligatoire à utiliser avec les compartiments SSE-KMS
Si vous avez activé le chiffrement côté serveur (SSE) pour votre compartiment Amazon S3 à l'aide de clés gérées par AWS KMS (SSE-KMS) avec une clé principale client gérée par le client (CMK), vous devez ajouter ce qui suit à la stratégie de clé pour votre CMK de sorte que les journaux de flux puissent écrire des fichiers journaux dans le compartiment :
{ "Sid": "Allow AWS Global Accelerator Flow Logs to use the key", "Effect": "Allow", "Principal": { "Service": [ "delivery.logs.amazonaws.com" ] }, "Action": "kms:GenerateDataKey*", "Resource": "*" }
Autorisations pour les fichiers journaux Amazon S3
Outre les stratégies de compartiment obligatoires, Amazon S3 utilise des listes de contrôle d'accès (ACL) afin de gérer l'accès aux fichiers journaux créés par un journal de flux. Par défaut, le propriétaire du compartiment dispose d'autorisations FULL_CONTROL
sur chaque fichier journal. Si le propriétaire de la livraison des journaux n'est pas le propriétaire du compartiment, il ne dispose d'aucune autorisation. Le compte de livraison des journaux possède les autorisations READ
et WRITE
. Pour de plus amples informations, veuillez consulterPrésentation de la liste de contrôle d'accès (ACL)dans leGuide de mise en route Amazon Simple Storage Service.
Activer la publication des journaux de flux sur Amazon S3
Pour activer les journaux de flux dans AWS Global Accelerator, suivez les étapes de cette procédure.
Pour activer les journaux de flux dans AWS Global Accelerator
-
Créez un compartiment Amazon S3 pour vos journaux de flux dans votre compte AWS.
-
Ajoutez la stratégie IAM requise pour l'utilisateur AWS qui active les journaux de flux. Pour plus d'informations, consultez Rôles IAM pour la publication des journaux de flux sur Amazon S3.
-
Exécutez la commande AWS CLI suivante, avec le nom du compartiment Amazon S3 et le préfixe que vous souhaitez utiliser pour vos fichiers journaux :
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
Traitement des enregistrements de journal de flux dans Amazon S3
Les fichiers journaux sont compressés. Si vous ouvrez les fichiers journaux à l'aide de la console Amazon S3, ils sont décompressés et les enregistrements de journal de flux s'affichent. Si vous téléchargez les fichiers, vous devez les décompresser pour afficher les enregistrements de journaux de flux.
Délai de distribution des fichiers journaux
AWS Global Accelerator distribue les fichiers journaux de votre accélérateur configuré jusqu'à plusieurs fois par heure. En général, un fichier journal contient des informations sur les demandes que votre accélérateur a reçues pendant une période donnée. Global Accelerator livre généralement le fichier journal correspondant à cette période à votre compartiment Amazon S3 dans l'heure qui suit les événements figurant dans le journal. Une partie ou la totalité des entrées d'un fichier journal d'une période peut parfois être retardé de 24 heures au plus. Lorsque les entrées des journaux sont retardées, Global Accelerator les enregistre dans un fichier journal dont le nom inclut la date et l'heure de la période auxquelles les demandes se sont produites, et non la date et l'heure auxquelles le fichier a été livré.
Lors de la création d'un fichier journal, Global Accelerator consolide les informations de votre accélérateur à partir de tous les emplacements périphériques ayant reçu les demandes pendant la période couverte par le fichier journal.
Global Accelerator commence à livrer les fichiers journaux de façon fiable quatre heures environ après que vous avez activé la journalisation. Vous pourriez obtenir quelques fichiers journaux avant ce moment-là.
Note
Si aucun utilisateur ne se connecte à votre accélérateur pendant la période, vous ne recevez aucun fichier journal pour cette dernière.
Syntaxe des enregistrements de journaux de flux
Un enregistrement de journal de flux est une chaîne d'éléments séparés par un espace, dont le format est le suivant :
<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>
Le format Version 1.0 n'inclut pas l'identifiant VPC,vpc_id
. Le format de la version 2.0, qui inclutvpc_id
, est généré lorsque Global Accelerator envoie du trafic vers un point de terminaison avec la préservation de l'adresse IP du client.
Le tableau suivant décrit les champs d'un enregistrement de journal de flux.
Champ | Description |
---|---|
|
Version des journaux de flux. |
|
ID de compte AWS pour le journal de flux |
|
ID de l'accélérateur pour lequel le trafic est enregistré. |
|
Adresse IPv4 source. |
|
Port source. |
|
Adresse IP de l'accélérateur. |
|
Le port de l'accélérateur. |
|
Adresse IP de destination du trafic |
|
Port de destination du trafic |
|
Numéro de protocole IANA du trafic (pour plus d'informations, consultez la page Assigned Internet Protocol Numbers |
|
IPv4. |
|
Nombre de paquets transférés au cours de la fenêtre de capture |
|
Nombre d'octets transférés au cours de la fenêtre de capture |
|
Heure de début de la fenêtre de capture, en secondes Unix |
|
Heure de fin de la fenêtre de capture, en secondes Unix |
|
Action associée au trafic :
|
|
Statut de journalisation du journal de flux :
|
|
Adresse IP utilisée par l'interface réseau Global Accelerator. |
|
Port utilisé par l'interface réseau Global Accelerator. |
|
Région AWS dans laquelle se trouve le point de terminaison. |
|
Emplacement périphérique (point de présence) ayant servi la demande. Chaque emplacement périphérique dispose d'un code à trois lettres et d'un numéro attribué arbitrairement (par exemple, DFW3). Le code sur trois lettres correspond généralement au code IATA (International Air Transport Association) d'un aéroport proche de l'emplacement périphérique. (Ces abréviations peuvent changer à l'avenir.) |
|
La direction de la circulation. Indique le trafic entrant dans le réseau Global Accelerator ( |
|
Identificateur du VPC. Inclus dans les journaux de flux de la version 2.0 lorsque Global Accelerator envoie du trafic vers un point de terminaison avec la préservation de l'adresse IP du client |
Si un champ ne s'applique pas à un enregistrement spécifique, ce dernier affiche le symbole « - » pour cette entrée.