Bonnes pratiques en matière de sécurité réseau pour Amazon ECS - Amazon Elastic Container Service

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.

Bonnes pratiques en matière de sécurité réseau pour Amazon ECS

La sécurité des réseaux est un vaste sujet qui englobe plusieurs sous-thèmes. Il s'agit encryption-in-transit notamment de la segmentation et de l'isolation du réseau, du pare-feu, du routage du trafic et de l'observabilité.

Chiffrement en transit

Le chiffrement du trafic réseau empêche les utilisateurs non autorisés d'intercepter et de lire des données lorsque celles-ci sont transmises sur un réseau. Avec AmazonECS, le chiffrement réseau peut être mis en œuvre de l'une des manières suivantes.

Mise en réseau des tâches

Les recommandations suivantes tiennent compte du mode de ECS fonctionnement d'Amazon. Amazon ECS n'utilise pas de réseau superposé. Au lieu de cela, les tâches sont configurées pour fonctionner dans différents modes réseau. Par exemple, les tâches configurées pour utiliser le mode bridge acquièrent une adresse IP non routable auprès d'un réseau Docker exécuté sur chaque hôte. Les tâches configurées pour utiliser le mode réseau awsvpc acquièrent une adresse IP auprès du sous-réseau de l'hôte. Les tâches configurées avec la mise en réseau host utilisent l'interface réseau de l'hôte. awsvpc est le mode réseau préféré. C'est parce qu'il s'agit du seul mode que vous pouvez utiliser pour attribuer des groupes de sécurité aux tâches. C'est également le seul mode disponible pour les AWS Fargate tâches sur AmazonECS.

Groupes de sécurité pour les tâches

Nous vous recommandons de configurer vos tâches de manière à utiliser le mode réseau awsvpc. Une fois que vous avez configuré votre tâche pour utiliser ce mode, l'ECSagent Amazon approvisionne et attache automatiquement une Elastic Network Interface (ENI) à la tâche. Lorsque le ENI est provisionné, la tâche est inscrite dans un groupe AWS de sécurité. Le groupe de sécurité agit en tant que pare-feu virtuel que vous pouvez utiliser afin de contrôler le trafic entrant et sortant.

AWS PrivateLink est une technologie réseau qui vous permet de créer des points de terminaison privés pour différents AWS services, dont AmazonECS. Les points de terminaison sont nécessaires dans les environnements sandbox où aucune passerelle Internet (IGW) n'est connectée à Amazon VPC ni aucune autre route vers Internet. L'utilisation AWS PrivateLink garantit que les appels adressés au ECS service Amazon restent sur Amazon VPC et ne transitent pas par Internet. Pour savoir comment créer des AWS PrivateLink points de terminaison pour Amazon ECS et d'autres services connexes, consultez ECSl'interface Amazon Amazon VPC endpoints.

Important

AWS Fargate les tâches ne nécessitent pas de point de AWS PrivateLink terminaison pour AmazonECS.

Amazon ECR et Amazon prennent ECS tous deux en charge les politiques relatives aux terminaux. Ces politiques vous permettent d'affiner l'accès à un serviceAPIs. Par exemple, vous pouvez créer une politique de point de terminaison pour Amazon ECR qui autorise uniquement le transfert d'images vers des registres de AWS comptes spécifiques. Une telle politique pourrait être utilisée pour empêcher l'exfiltration de données par le biais d'images de conteneurs tout en permettant aux utilisateurs de les envoyer vers des registres Amazon ECR autorisés. Pour plus d'informations, consultez la section Utiliser les politiques relatives aux VPC points de terminaison.

La politique suivante autorise tous les AWS principaux de votre compte à effectuer toutes les actions uniquement sur vos ECR référentiels Amazon :

{ "Statement": [ { "Sid": "LimitECRAccess", "Principal": "*", "Action": "*", "Effect": "Allow", "Resource": "arn:aws:ecr:region:account_id:repository/*" }, ] }

Vous pouvez encore améliorer cela en définissant une condition qui utilise la nouvelle propriété PrincipalOrgID. Cela empêche un IAM mandant qui ne fait pas partie de vous de pousser et d'extraire des images AWS Organizations. Pour plus d'informations, consultez aws : PrincipalOrg ID.

Nous avons recommandé d'appliquer la même politique aux points de terminaison com.amazonaws.region.ecr.dkr et com.amazonaws.region.ecr.api.

Paramètres de l'agent de conteneur

Le fichier de configuration de l'agent de ECS conteneur Amazon inclut plusieurs variables d'environnement liées à la sécurité du réseau. ECS_AWSVPC_BLOCK_IMDSet ECS_ENABLE_TASK_IAM_ROLE_NETWORK_HOST sont utilisés pour bloquer l'accès d'une tâche aux EC2 métadonnées Amazon. HTTP_PROXYest utilisé pour configurer l'agent afin qu'il passe par un HTTP proxy pour se connecter à Internet. Pour obtenir des instructions sur la configuration de l'agent et du moteur d'exécution Docker pour le routage via un proxy, consultez la section Configuration du HTTP proxy.

Important

Ces paramètres ne sont pas disponibles lorsque vous utilisez AWS Fargate.

Recommandations relatives à la sécurité du réseau

Nous vous recommandons de procéder comme suit lors de la configuration de votre AmazonVPC, de vos équilibreurs de charge et de votre réseau.

Utilisez le chiffrement réseau, le cas échéant, avec Amazon ECS

Vous devez utiliser le chiffrement réseau, le cas échéant. Certains programmes de conformité, tels que PCIDSS, exigent que vous cryptiez les données en transit si les données contiennent des données relatives au titulaire de la carte. Si votre charge de travail présente des exigences similaires, configurez le chiffrement réseau.

Les navigateurs modernes avertissent les utilisateurs lorsqu'ils se connectent à des sites non sécurisés. Si votre service est dirigé par un équilibreur de charge destiné au public, utilisezTLS/SSLpour chiffrer le trafic entre le navigateur du client et l'équilibreur de charge, puis chiffrez-le à nouveau vers le backend si cela est justifié.

Utilisez le mode awsvpc réseau et les groupes de sécurité pour contrôler le trafic entre les tâches et les autres ressources sur Amazon ECS

Vous devez utiliser le mode réseau awsvpc et les groupes de sécurité lorsque vous devez contrôler le trafic entre les tâches et entre les tâches et les autres ressources du réseau. Si votre service repose sur unALB, utilisez des groupes de sécurité pour autoriser uniquement le trafic entrant provenant d'autres ressources réseau utilisant le même groupe de sécurité que le vôtreALB. Si votre application se trouve derrière unNLB, configurez le groupe de sécurité de la tâche pour autoriser uniquement le trafic entrant provenant de la VPC CIDR plage Amazon et les adresses IP statiques attribuées auNLB.

Les groupes de sécurité doivent également être utilisés pour contrôler le trafic entre les tâches et les autres ressources d'Amazon, VPC telles que les RDS bases de données Amazon.

Créez des ECS clusters Amazon dans un Amazon distinct VPCs lorsque le trafic réseau doit être strictement isolé

Vous devez créer des clusters dans un Amazon distinct VPCs lorsque le trafic réseau doit être strictement isolé. Évitez d'exécuter des charges de travail soumises à des exigences de sécurité strictes sur des clusters dont les charges de travail ne sont pas tenues de respecter ces exigences. Lorsqu'une isolation stricte du réseau est obligatoire, créez des clusters dans un Amazon distinct VPCs et exposez les services de manière sélective à d'autres Amazon à VPCs l'aide de VPC points de terminaison Amazon. Pour plus d'informations, consultez Amazon VPC Endpoints.

Vous devez configurer les AWS PrivateLink points de terminaison lorsque cela est justifié. Si votre politique de sécurité vous empêche de connecter un Internet Gateway (IGW) à votre AmazonVPCs, configurez des AWS PrivateLink points de terminaison pour Amazon ECS et d'autres services tels qu'Amazon ECR et Amazon CloudWatch. AWS Secrets Manager

Utilisez Amazon VPC Flow Logs pour analyser le trafic à destination et en provenance de tâches de longue durée dans Amazon ECS

Vous devez utiliser Amazon VPC Flow Logs pour analyser le trafic en provenance et à destination de tâches de longue durée. Les tâches qui utilisent le mode awsvpc réseau obtiennent leurs propres tâchesENI. Ainsi, vous pouvez surveiller le trafic à destination et en provenance de tâches individuelles à l'aide d'Amazon VPC Flow Logs. Une récente mise à jour d'Amazon VPC Flow Logs (v3) enrichit les journaux avec des métadonnées de trafic, notamment l'ID du vPC, l'ID de sous-réseau et l'ID d'instance. Ces métadonnées peuvent être utilisées pour affiner une enquête. Pour plus d'informations, consultez Amazon VPC Flow Logs.

Note

En raison de la nature temporaire des conteneurs, les journaux de flux ne sont pas toujours un moyen efficace d'analyser les modèles de trafic entre les différents conteneurs ou entre les conteneurs et les autres ressources du réseau.