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.
AWSSupport-ContainEC2Instance
Description
Le AWSSupport-ContainEC2Instance runbook fournit une solution automatisée pour la procédure décrite dans l'article Comment isoler l'instance Amazon EC2 lorsqu'elle est confrontée à une instance potentiellement compromise ou suspecte ?
Fonctionnement
Ce runbook AWSSupport-ContainEC2Instance d'automatisation permet de confiner le réseau d'une instance Amazon EC2 en suivant une série d'étapes coordonnées. Lorsqu'il est exécuté en Contain mode, il valide d'abord les paramètres d'entrée et vérifie si l'instance n'est pas terminée. Il sauvegarde ensuite la configuration actuelle du groupe de sécurité dans un compartiment Amazon S3 pour une restauration ultérieure. Le runbook crée deux groupes de sécurité : un groupe de sécurité temporaire « tous accès » et un groupe de sécurité « de confinement » final. Il fait progressivement passer les interfaces réseau de l'instance de leurs groupes de sécurité d'origine au groupe de sécurité à accès intégral, puis au groupe de sécurité de confinement. S'il est spécifié, il crée des AMI sauvegardes chiffrées et non chiffrées de l'instance. Pour les instances d'un groupe Auto Scaling, il gère les modifications nécessaires au groupe Auto Scaling et met l'instance en état de veille. Lorsqu'il est exécuté en Release mode, il restaure la configuration réseau d'origine de l'instance à l'aide des paramètres sauvegardés d'Amazon S3. Le runbook prend en charge un DryRun paramètre permettant de prévisualiser les actions sans apporter de modifications réelles, et inclut des mécanismes complets de gestion des erreurs et de reporting tout au long des flux de travail de confinement et de publication.
Important
-
Ce runbook effectue diverses opérations qui nécessitent des privilèges élevés, telles que la modification de groupes de sécurité, la création de AMI s et l'interaction avec les groupes Auto Scaling. Ces actions peuvent entraîner une augmentation des privilèges ou avoir un impact sur d'autres charges de travail de votre compte. Vous devez vérifier les autorisations accordées au rôle spécifié par le
AutomationAssumeRoleparamètre et vous assurer qu'elles sont adaptées au cas d'utilisation prévu. Vous pouvez consulter la AWS documentation suivante pour plus d'informations sur les autorisations IAM :Gestion des identités et des accès AWS (IAM) PermissionsAWS Systems Manager Automation Permissions -
Ce runbook exécute des actions mutatives susceptibles d'entraîner une indisponibilité ou une interruption de vos charges de travail. Plus précisément, il modifie les groupes de sécurité associés à l'instance Amazon EC2 cible, ce qui peut avoir un impact sur la connectivité réseau. En outre, si l'instance fait partie d'un groupe Auto Scaling, le runbook peut modifier la configuration du groupe, ce qui peut affecter son comportement de dimensionnement.
-
Au cours du processus de confinement, ce runbook crée des ressources supplémentaires, telles que des groupes de sécurité et des groupes de sécuritéAMI. Bien que ces ressources soient étiquetées à des fins d'identification, vous devez être au courant de leur création et assurer un nettoyage ou une gestion appropriés une fois le processus de confinement terminé.
-
Si le
Actionparamètre est défini surRelease, ce runbook tente de restaurer la configuration de l'instance Amazon EC2 à son état d'origine. Cependant, le processus de restauration risque d'échouer, laissant l'instance dans un état incohérent. Le runbook fournit des instructions pour la restauration manuelle en cas de telles défaillances, mais vous devez être prêt à gérer les problèmes potentiels pendant le processus de restauration.
Il est recommandé de passer en revue le runbook de manière approfondie, de comprendre ses impacts potentiels et de le tester dans un environnement hors production avant de l'exécuter dans votre environnement de production.
Exécutez cette automatisation (console)
Type de document
Automatisation
Propriétaire
Amazon
Plateformes
/
Autorisations IAM requises
Le AutomationAssumeRole paramètre nécessite les actions suivantes pour utiliser correctement le runbook.
-
mise à l'échelle automatique : CreateOrUpdateTags
-
mise à l'échelle automatique : DeleteTags
-
mise à l'échelle automatique : DescribeAutoScalingGroups
-
mise à l'échelle automatique : DescribeAutoScalingInstances
-
mise à l'échelle automatique : DescribeTags
-
mise à l'échelle automatique : EnterStandby
-
mise à l'échelle automatique : ExitStandby
-
mise à l'échelle automatique : UpdateAutoScalingGroup
-
EC2 : AuthorizeSecurityGroupEgress
-
EC2 : AuthorizeSecurityGroupIngress
-
EC2 : CopyImage
-
EC2 : CreateImage
-
EC2 : CreateSecurityGroup
-
EC2 : CreateSnapshot
-
EC2 : CreateTags
-
EC2 : DeleteSecurityGroup
-
EC2 : DeleteTags
-
EC2 : DescribeImages
-
EC2 : DescribeInstances
-
EC2 : DescribeSecurityGroups
-
EC2 : DescribeSnapshots
-
EC2 : DescribeTags
-
EC2 : ModifyNetworkInterfaceAttribute
-
EC2 : RevokeSecurityGroupEgress
-
km : CreateGrant
-
km : DescribeKey
-
km : GenerateDataKeyWithoutPlaintext
-
km : ReEncryptFrom
-
km : ReEncryptTo
-
s3 : CreateBucket
-
s3 : DeleteObjectTagging
-
s3 : GetAccountPublicAccessBlock
-
s3 : GetBucketAcl
-
s3 : GetBucketLocation
-
s3 : GetBucketOwnershipControls
-
s3 : GetBucketPolicy
-
s3 : GetBucketPolicyStatus
-
s3 : GetBucketPublicAccessBlock
-
s3 : GetObject
-
s3 : ListBucket
-
s3 : PutAccountPublicAccessBlock
-
s3 : PutBucketPolicy
-
s3 : PutBucketVersioning
-
s3 : PutObject
-
s3 : PutObjectTagging
Exemple de politique :
Instructions
Pour configurer l'automatisation, procédez comme suit :
-
Accédez à
AWSSupport-ContainEC2Instancela section Documents dans Systems Manager. -
Sélectionnez Execute automation (Exécuter l'automatisation).
-
Pour les paramètres d'entrée, entrez les informations suivantes :
-
AutomationAssumeRole (Facultatif) :
-
Description : (Facultatif) Le nom de ressource Amazon (ARN) du rôle AWS Gestion des identités et des accès AWS (IAM) qui permet à Systems Manager Automation d'effectuer les actions en votre nom. Si aucun rôle n'est spécifié, Systems Manager Automation utilise les autorisations de l'utilisateur qui démarre ce runbook.
-
Type :
AWS::IAM::Role::Arn
-
-
Action (obligatoire) :
-
Description : (Obligatoire) Sélectionnez cette option
Containpour isoler l'instance Amazon EC2 ouRestorepour essayer de restaurer la configuration d'origine de la configuration d'origine de l'instance Amazon EC2 à partir d'une sauvegarde précédente. -
Type : Chaîne
-
Schéma autorisé :
Contain|Restore
-
-
DryRun (Facultatif) :
-
Description : (Facultatif) Lorsque cette option est définie sur
true, l'automatisme n'exécute aucune des commandes, mais indique ce qu'il aurait tenté de faire, en détaillant chaque étape. Valeur par défaut :true. -
Type : Boolean
-
Valeurs autorisées :
true|false
-
-
Créer une sauvegarde AMI (facultatif) :
-
Description : (Facultatif) Lorsque cette option est définie sur
true, l'une AMI des instances Amazon EC2 sera créée avant d'effectuer les actions de confinement. -
Type : Boolean
-
Valeurs autorisées :
true|false
-
-
KmsKey (Facultatif) :
-
Description : (Facultatif) L'ID de la AWS KMS clé qui sera utilisée pour créer une instance Amazon EC2 chiffrée AMI ou cible. La valeur par défaut est définie sur
alias/aws/ebs. -
Type : Chaîne
-
Schéma autorisé :
^(((arn:(aws|aws-cn|aws-us-gov):kms:([a-z]{2}|[a-z]{2}-gov)-[a-z]+-[0-9]{1}:[0-9]{12}:key/)?([a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}|mrk-[a-f0-9]{32}))|(arn:(aws|aws-cn|aws-us-gov):kms:([a-z]{2}|[a-z]{2}-gov)-[a-z]+-[0-9]{1}:[0-9]{12}:)?alias/.{1,})$
-
-
BackupS3BucketName (Conditionnel) :
-
Description : compartiment Amazon S3 (conditionnel) pour télécharger la configuration lorsqu'elle
ActionestContainou pour restaurer la configuration lorsqu'elleActionestRelease. Remarque : Si le compartiment fourni n'existe pas dans le compte, l'automatisation créera un compartiment Amazon S3 en votre nom. -
Type :
AWS::S3::Bucket::Name
-
-
TagIdentifier (Facultatif) :
-
Description : (Facultatif) Une balise au format
Key=BatchId,Value=78925qui sera ajoutée aux AWS ressources créées ou modifiées par ce runbook pendant le flux de travail de confinement. Cette étiquette peut être utilisée pour identifier et gérer les ressources associées pendant le processus de confinement. Au cours du flux de restauration, la balise spécifiée par ce paramètre sera supprimée des ressources. Remarque : les clés et les valeurs des balises distinguent les majuscules et minuscules. -
Type : Chaîne
-
Schéma autorisé :
^$|^[Kk][Ee][Yy]=[\\+\\-\\=\\.\\_\\:\\/@a-zA-Z0-9]{1,128},[Vv][Aa][Ll][Uu][Ee]=[\\+\\-\\=\\.\\_\\:\\/@a-zA-Z0-9]{0,128}$
-
-
BackupS3BucketAccess(Conditionnel) :
-
Description : (Conditionnel) L'ARN des utilisateurs ou des rôles IAM qui seront autorisés à accéder au compartiment Amazon S3 de sauvegarde après avoir exécuté les actions de confinement. Ce paramètre est obligatoire lorsqu'il
ActionestContain. L'utilisateur ouAutomationAssumeRole, à défaut, l'utilisateur dans le contexte duquel l'automatisation est exécutée est automatiquement ajouté à la liste. -
Type : Chaîne
-
Schéma autorisé :
^$|^arn:(aws|aws-cn|aws-us-gov|aws-iso(-[a-z])?):iam::[0-9]{12}:(role|user)\\/[\\w+\\/=,.@-]+$
-
-
IngressTrafficRules (Facultatif) :
-
Description : (Facultatif) Une carte des règles d'entrée des groupes de sécurité séparées par des virgules avec Cidr, IpProtocol, FromPort et ToPort dans le format
[{"Cidr": "1.2.3.4/32", "IpProtocol": "tcp", "FromPort":"22", "ToPort":"22"}]à appliquer à l'instance Amazon EC2. Si aucune règle n'est fournie, un groupe de sécurité dépourvu de règles d'entrée sera attaché à l'instance Amazon EC2, l'isolant ainsi de tout trafic entrant. -
Type : MapList
-
Schéma autorisé :
^\\{\\}$|^\\{\"Cidr\":\"[\\x00-\\x7F+]{1,128}\",\"IpProtocol\":\"[\\x00-\\x7F+]{1,128}\",\"FromPort\":\"[\\x00-\\x7F+]{1,128}\",\"ToPort\":\"[\\x00-\\x7F+]{0,255}\"\\}
-
-
EgressTrafficRules (Facultatif) :
-
Description : (Facultatif) Une carte des règles de sortie des groupes de sécurité séparées par des virgules avec Cidr, IpProtocol, FromPort et ToPort dans le format
[{"Cidr": "1.2.3.4/32", "IpProtocol": "tcp", "FromPort":"22", "ToPort":"22"}]à appliquer à l'instance Amazon Amazon EC2. Si aucune règle n'est fournie, un groupe de sécurité dépourvu de règles de sortie sera attaché à l'instance Amazon EC2, empêchant ainsi tout le trafic sortant. -
Type : MapList
-
Schéma autorisé :
^\\{\\}$|^\\{\"Cidr\":\"[\\x00-\\x7F+]{1,128}\",\"IpProtocol\":\"[\\x00-\\x7F+]{1,128}\",\"FromPort\":\"[\\x00-\\x7F+]{1,128}\",\"ToPort\":\"[\\x00-\\x7F+]{0,255}\"\\}
-
-
BackupS3KeyName (Facultatif) :
-
Description : (Facultatif) Si cette valeur
Actionest définie surRestore, cela indique la clé Amazon S3 que l'automatisation utilisera pour tenter de restaurer la configuration de l'instance Amazon EC2 cible. La clé Amazon S3 suit généralement le format suivant :{year}/{month}/{day}/{hour}/{minute}/{automation_execution_id}.json. La clé peut être obtenue à partir de la sortie d'une exécution d'automatisation de confinement précédente. -
Type : Chaîne
-
Schéma autorisé :
^[a-zA-Z0-9\\.\\-_\\\\!*'()/]{0,1024}$
-
-
-
Sélectionnez Exécuter.
-
L'automatisation démarre.
-
Le document exécute les étapes suivantes :
-
ValidateRequiredInputs
Valide que toutes les entrées requises sont fournies.
-
AssertInstanceIsNotTerminated
Vérifie si l'instance Amazon EC2 cible n'est pas terminée (supprimée).
-
GetAutoScalingInstanceInfo
Obtient le cycle de vie de l'instance Amazon EC2 et le nom du groupe si l'instance Amazon EC2 cible fait partie d'un groupe Auto Scaling.
-
CheckBackupS3BucketName
Vérifie si le compartiment Amazon S3 cible accorde potentiellement
readun accèswritepublic à ses objets. Un nouveau compartiment Amazon S3 est créé s'BackupS3BucketNameil n'existe pas. -
BranchOnActionAndMode
Branche l'automatisation en fonction des paramètres d'entrée
ActionetDryRun. -
BranchOnAutoScalingGroupMembership
Branche l'automatisation en fonction de l'appartenance de l'instance Amazon EC2 cible au groupe Auto Scaling et de l'état de son cycle de vie.
-
DescribeAutoScalingGroups
Obtient et stocke la configuration du groupe Amazon EC2 Auto Scaling associé.
-
ModifyAutoScalingGroup
Modifie la configuration du groupe Amazon EC2 Auto Scaling associé pour les actions de confinement, en définissant l'
Standbyétat de l'instance Amazon EC2 et en ajustant la capacité du groupe Auto Scaling.MinSize -
BackupInstanceSecurityGroups
Obtient et stocke la configuration des groupes de sécurité des instances Amazon EC2 cibles.
-
CreateAllAccessSecurityGroup
Crée un groupe de sécurité temporaire autorisant tout le trafic entrant qui remplace les groupes de sécurité de l'instance Amazon EC2 cible.
-
CreateContainmentSecurityGroup
Crée un groupe de sécurité de confinement restrictif avec les règles d'entrée et de sortie spécifiées, et remplace le groupe temporaire à accès complet par celui-ci.
-
BranchOnCreateAMIBackup
Branche l'automatisation en fonction du paramètre
CreateAMIBackupd'entrée. -
AssertSourceInstanceRootVolumeIsEbs
Vérifie si le volume racine de l'instance Amazon EC2 cible est Amazon EBS.
-
CreateImage
Crée AMI l'une des instances Amazon EC2 cibles.
-
RestoreInstanceConfiguration
Restaure la configuration de l'instance Amazon EC2 cible à partir de la sauvegarde.
-
ReportContain
Affiche les détails du fonctionnement à sec pour les actions de confinement.
-
ReportRestore
Affiche les détails de fonctionnement à sec pour les actions de restauration.
-
ReportRestoreFailure
Fournit des instructions pour restaurer la configuration d'origine de l'instance Amazon EC2 cible lors d'un scénario d'échec du flux de restauration.
-
ReportContainmentFailure
Fournit des instructions pour restaurer la configuration d'origine de l'instance Amazon EC2 cible lors d'un scénario d'échec du flux de travail de confinement.
-
FinalOutput
Affiche les détails des actions de confinement.
-
-
Une fois l'exécution terminée, consultez la section Sorties pour obtenir les résultats détaillés de l'exécution :
-
FinalOutput.Output
Affiche les détails des actions de confinement effectuées par ce runbook lorsqu'il
DryRunest défini sur False. -
RestoreInstanceConfiguration.Output
Affiche les actions de restauration effectuées par ce runbook lorsqu'il
DryRunest défini sur False. -
ReportContain.Output
Affiche les détails des actions de confinement effectuées par ce runbook lorsqu'il
DryRunest défini sur True. -
ReportRestore.Output
Affiche les détails des actions de restauration effectuées par ce runbook lorsqu'il
DryRunest défini sur True. -
ReportContainmentFailure.Output
Fournit des instructions pour restaurer la configuration d'origine de l'instance Amazon EC2 cible lors d'un scénario d'échec du flux de travail de confinement.
-
ReportRestoreFailure.Output
Fournit des instructions pour restaurer la configuration d'origine de l'instance Amazon EC2 cible lors d'un scénario d'échec du flux de restauration.
-
Références
Systems Manager Automation