

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

# `AWSSupport-ContainEC2Instance`
<a name="automation-awssupport-containec2instance"></a>

 **Descrizione** 

Il `AWSSupport-ContainEC2Instance` runbook fornisce una soluzione automatizzata per la procedura descritta nell'articolo [Come posso isolare l'istanza Amazon EC2 di fronte a un'istanza potenzialmente compromessa](https://repost.aws/articles/ARwkDzoO-8RN-SDQnA1aX-XA) o sospetta? I rami di automazione dipendono dai valori specificati.

 **Come funziona?** 

Questo runbook di automazione `AWSSupport-ContainEC2Instance` esegue il contenimento di rete di un'istanza Amazon EC2 attraverso una serie di passaggi coordinati. Quando viene eseguito in `Contain` modalità, convalida innanzitutto i parametri di input e verifica se l'istanza non è terminata. Quindi esegue il backup della configurazione corrente del gruppo di sicurezza in un bucket Amazon S3 per un successivo ripristino. Il runbook crea due gruppi di sicurezza: un gruppo di sicurezza temporaneo «all access» e un gruppo di sicurezza finale «di contenimento». Passa gradualmente le interfacce di rete dell'istanza dai gruppi di sicurezza originali al gruppo di sicurezza con accesso illimitato e infine al gruppo di sicurezza di contenimento. Se specificato, crea backup non crittografati e AMI crittografati dell'istanza. Per le istanze in un gruppo Auto Scaling, gestisce le modifiche necessarie al gruppo Auto Scaling e porta l'istanza in stato di standby. Quando viene eseguito in `Release` modalità, ripristina l'istanza alla configurazione di rete originale utilizzando le impostazioni di backup di Amazon S3. Il runbook supporta un `DryRun` parametro per visualizzare in anteprima le azioni senza apportare modifiche effettive e include meccanismi completi di gestione e segnalazione degli errori in tutti i flussi di lavoro di contenimento e rilascio.

**Importante**  
Questo runbook esegue diverse operazioni che richiedono privilegi elevati, come la modifica dei gruppi di sicurezza, la creazione di AMI s e l'interazione con i gruppi di Auto Scaling. Queste azioni potrebbero potenzialmente portare a un aumento dei privilegi o influire su altri carichi di lavoro del tuo account. È necessario esaminare le autorizzazioni concesse al ruolo specificato dal `AutomationAssumeRole` parametro e assicurarsi che siano appropriate per il caso d'uso previsto. Puoi fare riferimento alla seguente AWS documentazione per ulteriori informazioni sulle autorizzazioni IAM:. [https://docs.aws.amazon.com//IAM/latest/UserGuide/access_controlling.html](https://docs.aws.amazon.com//IAM/latest/UserGuide/access_controlling.html)
Questo runbook esegue azioni mutative che potrebbero potenzialmente causare indisponibilità o interruzione dei carichi di lavoro. In particolare, modifica i gruppi di sicurezza associati all'istanza Amazon EC2 di destinazione, il che potrebbe influire sulla connettività di rete. Inoltre, se l'istanza fa parte di un gruppo Auto Scaling, il runbook può modificare la configurazione del gruppo, influendo potenzialmente sul suo comportamento di scalabilità.
Durante il processo di contenimento, questo runbook crea risorse aggiuntive, come gruppi di sicurezza e s. AMI Sebbene queste risorse siano contrassegnate per l'identificazione, è necessario essere consapevoli della loro creazione e garantire una corretta pulizia o gestione dopo il completamento del processo di contenimento.
Se il `Action` parametro è impostato su`Release`, questo runbook tenta di ripristinare la configurazione dell'istanza Amazon EC2 allo stato originale. Tuttavia, esiste il rischio che il processo di ripristino non riesca, lasciando l'istanza in uno stato incoerente. Il runbook fornisce istruzioni per il ripristino manuale in caso di tali errori, ma è necessario essere preparati a gestire potenziali problemi durante il processo di ripristino.
Si consiglia di esaminare attentamente il runbook, comprenderne i potenziali impatti e testarlo in un ambiente non di produzione prima di eseguirlo nell'ambiente di produzione.

 [Esegui questa automazione (console)](https://console.aws.amazon.com/systems-manager/automation/execute/AWSSupport-ContainEC2Instance) 

**Tipo di documento**

Automazione

**Proprietario**

Amazon

**Piattaforme**

/

**Autorizzazioni IAM richieste**

Il `AutomationAssumeRole` parametro richiede le seguenti azioni per utilizzare correttamente il runbook.
+ scalabilità automatica: CreateOrUpdateTags
+ scalabilità automatica: DeleteTags
+ scalabilità automatica: DescribeAutoScalingGroups
+ scalabilità automatica: DescribeAutoScalingInstances
+ scalabilità automatica: DescribeTags
+ scalabilità automatica: EnterStandby
+ scalabilità automatica: ExitStandby
+ scalabilità automatica: 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
+ kms:CreateGrant
+ kms:DescribeKey
+ kms:GenerateDataKeyWithoutPlaintext
+ kms:ReEncryptFrom
+ kms: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

Politica di esempio: 

------
#### [ JSON ]

****  

```
	{
		"Version":"2012-10-17",		 	 	 
		"Statement": [
			{
				"Sid": "ReadOperations",
				"Effect": "Allow",
				"Action": [
					"autoscaling:DescribeAutoScalingGroups",
					"autoscaling:DescribeAutoScalingInstances",
					"autoscaling:DescribeTags",
					"ec2:DescribeImages",
					"ec2:DescribeInstances",
					"ec2:DescribeSecurityGroups",
					"ec2:DescribeSnapshots",
					"ec2:DescribeTags",
					"kms:DescribeKey",
					"s3:GetAccountPublicAccessBlock",
					"s3:GetBucketAcl",
					"s3:GetBucketLocation",
					"s3:GetBucketOwnershipControls",
					"s3:GetBucketPolicy",
					"s3:GetBucketPolicyStatus",
					"s3:GetBucketPublicAccessBlock",
					"s3:GetObject",
					"s3:ListBucket"
				],
				"Resource": "*"
			},
			{
				"Sid": "WriteOperations",
				"Effect": "Allow",
				"Action": [
					"autoscaling:CreateOrUpdateTags",
					"autoscaling:DeleteTags",
					"autoscaling:EnterStandby",
					"autoscaling:ExitStandby",
					"autoscaling:UpdateAutoScalingGroup",
					"ec2:AuthorizeSecurityGroupEgress",
					"ec2:AuthorizeSecurityGroupIngress",
					"ec2:CopyImage",
					"ec2:CreateImage",
					"ec2:CreateSecurityGroup",
					"ec2:CreateSnapshot",
					"ec2:CreateTags",
					"ec2:DeleteSecurityGroup",
					"ec2:DeleteTags",
					"ec2:ModifyNetworkInterfaceAttribute",
					"ec2:RevokeSecurityGroupEgress",
					"kms:CreateGrant",
					"kms:GenerateDataKeyWithoutPlaintext",
					"kms:ReEncryptFrom",
					"kms:ReEncryptTo",
					"s3:CreateBucket",
					"s3:DeleteObjectTagging",
					"s3:PutAccountPublicAccessBlock",
					"s3:PutBucketPolicy",
					"s3:PutBucketVersioning",
					"s3:PutObject",
					"s3:PutObjectTagging"
				],
				"Resource": "*"
			}
		]
	}
```

------

 **Istruzioni** 

Segui questi passaggi per configurare l'automazione:

1. Accedere [https://console.aws.amazon.com/systems-manager/documents/AWSSupport-ContainEC2Instance/description](https://console.aws.amazon.com/systems-manager/documents/AWSSupport-ContainEC2Instance/description)a Systems Manager nella sezione Documenti.

1. Seleziona **Execute automation** (Esegui automazione).

1. Per i parametri di input, immettete quanto segue:
   + **AutomationAssumeRole (Facoltativo):**
     + Descrizione: (Facoltativo) L'Amazon Resource Name (ARN) del ruolo AWS AWS Identity and Access Management (IAM) che consente a Systems Manager Automation di eseguire le azioni per tuo conto. Se non viene specificato alcun ruolo, Systems Manager Automation utilizza le autorizzazioni dell'utente che avvia questo runbook.
     + Tipo: `AWS::IAM::Role::Arn`
   + **Azione (richiesta):**
     + Descrizione: (Obbligatorio) Seleziona se `Contain` isolare l'istanza Amazon EC2 `Restore` o provare a ripristinare la configurazione originale della configurazione dell'istanza Amazon EC2 da un backup precedente.
     + Tipo: String
     + Modello consentito: `Contain|Restore`
   + **DryRun (Facoltativo):**
     + Descrizione: (Facoltativo) Se impostata su`true`, l'automazione non eseguirà nessuno dei comandi, ma riporterà invece cosa avrebbe tentato di fare, dettagliando ogni passaggio. Valore predefinito: `true`.
     + Tipo: Booleano
     + Valori consentiti: `true|false`
   + **Crea AMIBackup (opzionale):**
     + Descrizione: (Facoltativo) Se impostato su`true`, verrà creata un'AMIistanza Amazon EC2 prima di eseguire le azioni di contenimento.
     + Tipo: Booleano
     + Valori consentiti: `true|false`
   + **KmsKey (Facoltativo):**
     + Descrizione: (Facoltativo) L'ID della AWS KMS chiave che verrà utilizzata per creare un'istanza Amazon EC2 crittografata AMI di destinazione. L'impostazione predefinita è impostata su. `alias/aws/ebs`
     + Tipo: String
     + Modello consentito: `^(((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,})$`
   + **BackupS3 BucketName (condizionale):**
     + Descrizione: bucket Amazon S3 (condizionale) per caricare la configurazione `Action` quando `Contain` è o per ripristinare la configurazione quando lo è. `Action` `Release` **Nota:** se il bucket fornito non esiste nell'account, l'automazione creerà un bucket Amazon S3 per tuo conto.
     + Tipo: `AWS::S3::Bucket::Name`
   + **TagIdentifier (Facoltativo):**
     + Descrizione: (Facoltativo) Un tag nel formato `Key=BatchId,Value=78925` che verrà aggiunto alle AWS risorse create o modificate da questo runbook durante il flusso di lavoro di contenimento. Questo tag può essere utilizzato per identificare e gestire le risorse associate durante il processo di contenimento. Durante il flusso di lavoro di ripristino, il tag specificato da questo parametro verrà rimosso dalle risorse. **Nota:** le chiavi e i valori dei tag fanno distinzione tra maiuscole e minuscole.
     + Tipo: String
     + Modello consentito: `^$|^[Kk][Ee][Yy]=[\\+\\-\\=\\.\\_\\:\\/@a-zA-Z0-9]{1,128},[Vv][Aa][Ll][Uu][Ee]=[\\+\\-\\=\\.\\_\\:\\/@a-zA-Z0-9]{0,128}$`
   + **BackupS3 BucketAccess (condizionale):**
     + Descrizione: (Condizionale) L'ARN degli utenti o dei ruoli IAM a cui sarà consentito l'accesso al bucket Amazon S3 di backup dopo l'esecuzione delle azioni di contenimento. Questo parametro è obbligatorio quando è. `Action` `Contain` L'utente o`AutomationAssumeRole`, in sua assenza, l'utente nel cui contesto viene eseguita l'automazione viene aggiunto automaticamente all'elenco.
     + Tipo: String
     + Modello consentito: `^$|^arn:(aws|aws-cn|aws-us-gov|aws-iso(-[a-z])?):iam::[0-9]{12}:(role|user)\\/[\\w+\\/=,.@-]+$`
   + **IngressTrafficRules (Facoltativo):**
     + Descrizione: (Facoltativo) Una mappa separata da virgole delle regole di ingresso dei gruppi di sicurezza con Cidr FromPort e ToPort nel formato `[{"Cidr": "1.2.3.4/32", "IpProtocol": "tcp", "FromPort":"22", "ToPort":"22"}]` da applicare all'istanza Amazon EC2. IpProtocol Se non viene fornita alcuna regola, all'istanza Amazon EC2 verrà associato un gruppo di sicurezza senza regole di ingresso, isolandola efficacemente dal traffico in entrata.
     + Tipo: MapList
     + Modello consentito: `^\\{\\}$|^\\{\"Cidr\":\"[\\x00-\\x7F+]{1,128}\",\"IpProtocol\":\"[\\x00-\\x7F+]{1,128}\",\"FromPort\":\"[\\x00-\\x7F+]{1,128}\",\"ToPort\":\"[\\x00-\\x7F+]{0,255}\"\\}`
   + **EgressTrafficRules (Facoltativo):**
     + Descrizione: (Facoltativo) Una mappa separata da virgole delle regole di uscita dei gruppi di sicurezza con Cidr FromPort e ToPort nel formato `[{"Cidr": "1.2.3.4/32", "IpProtocol": "tcp", "FromPort":"22", "ToPort":"22"}]` da applicare all'istanza Amazon Amazon EC2. IpProtocol Se non viene fornita alcuna regola, all'istanza Amazon EC2 verrà collegato un gruppo di sicurezza senza regole di uscita, prevenendo efficacemente tutto il traffico in uscita.
     + Tipo: MapList
     + Modello consentito: `^\\{\\}$|^\\{\"Cidr\":\"[\\x00-\\x7F+]{1,128}\",\"IpProtocol\":\"[\\x00-\\x7F+]{1,128}\",\"FromPort\":\"[\\x00-\\x7F+]{1,128}\",\"ToPort\":\"[\\x00-\\x7F+]{0,255}\"\\}`
   + **Backup S3 KeyName (opzionale):**
     + Descrizione: (Facoltativo) Se `Action` impostato su`Restore`, specifica la chiave Amazon S3 che l'automazione utilizzerà per tentare di ripristinare la configurazione dell'istanza Amazon EC2 di destinazione. La chiave Amazon S3 segue in genere questo formato:. `{year}/{month}/{day}/{hour}/{minute}/{automation_execution_id}.json` La chiave può essere ottenuta dall'output di una precedente esecuzione di automazione del contenimento.
     + Tipo: String
     + Modello consentito: `^[a-zA-Z0-9\\.\\-_\\\\!*'()/]{0,1024}$`

1. Seleziona Esegui.

1. L'automazione viene avviata.

1. Il documento esegue le seguenti operazioni:
   + **ValidateRequiredInputs**

     Verifica che vengano forniti tutti gli input richiesti.
   + **AssertInstanceIsNotTerminated**

     Verifica se l'istanza Amazon EC2 di destinazione non è terminata (eliminata).
   + **GetAutoScalingInstanceInfo**

     Ottiene il ciclo di vita dell'istanza Amazon EC2 e il nome del gruppo se l'istanza Amazon EC2 di destinazione fa parte di un gruppo di Auto Scaling.
   + **CheckBackupS3BucketName**

     Verifica se il bucket Amazon S3 di destinazione concede `read` potenzialmente l'accesso `write` pubblico ai suoi oggetti. Se il bucket non esiste, viene creato un nuovo bucket Amazon S3`BackupS3BucketName`.
   + **BranchOnActionAndMode**

     Suddivide l'automazione in base ai parametri di input e. `Action` `DryRun`
   + **BranchOnAutoScalingGroupMembership**

     Suddivide l'automazione in base al fatto che l'istanza Amazon EC2 di destinazione faccia parte del gruppo Auto Scaling e al relativo stato del ciclo di vita.
   + **DescribeAutoScalingGroups**

     Ottiene e archivia la configurazione del gruppo Amazon EC2 Auto Scaling associata.
   + **ModifyAutoScalingGroup**

     Modifica la configurazione del gruppo Amazon EC2 Auto Scaling associato per le azioni di contenimento, impostando l'istanza Amazon EC2 sullo stato `Standby` e regolando la capacità del gruppo Auto Scaling. `MinSize`
   + **BackupInstanceSecurityGroups**

     Ottiene e archivia la configurazione dei gruppi di sicurezza di istanze Amazon EC2 di destinazione.
   + **CreateAllAccessSecurityGroup**

     Crea un gruppo di sicurezza temporaneo che consente tutto il traffico in ingresso che sostituisce i gruppi di sicurezza dell'istanza Amazon EC2 di destinazione.
   + **CreateContainmentSecurityGroup**

     Crea un gruppo di sicurezza di contenimento restrittivo con le regole di ingresso e uscita specificate e sostituisce il gruppo temporaneo con accesso illimitato.
   + **BranchOnCreateAMIBackup**

     Suddivide l'automazione in base al parametro di input. `CreateAMIBackup`
   + **AssertSourceInstanceRootVolumeIsEbs**

     Verifica se il volume root dell'istanza Amazon EC2 di destinazione è Amazon EBS.
   + **CreateImage**

     Crea un'AMIistanza Amazon EC2 di destinazione.
   + **RestoreInstanceConfiguration**

     Ripristina la configurazione dell'istanza Amazon EC2 di destinazione dal backup.
   + **ReportContain**

     Fornisce i dettagli del dry run per le azioni di contenimento.
   + **ReportRestore**

     Fornisce i dettagli del funzionamento a secco per le azioni di ripristino.
   + **ReportRestoreFailure**

     Fornisce istruzioni per ripristinare la configurazione originale dell'istanza Amazon EC2 di destinazione durante uno scenario di errore del flusso di lavoro di ripristino.
   + **ReportContainmentFailure**

     Fornisce istruzioni per ripristinare la configurazione originale dell'istanza Amazon EC2 di destinazione durante uno scenario di errore del flusso di lavoro di contenimento.
   + **FinalOutput**

     Fornisce i dettagli delle azioni di contenimento.

1. Una volta completata l'esecuzione, consulta la sezione Output per i risultati dettagliati dell'esecuzione:
   + **FinalOutput.Output**

     Restituisce i dettagli delle azioni di contenimento eseguite da questo runbook quando `DryRun` è impostato su False.
   + **RestoreInstanceConfiguration.Output**

     Emette le azioni di ripristino eseguite da questo runbook quando `DryRun` è impostato su False.
   + **ReportContain.Output**

     Restituisce i dettagli delle azioni di contenimento eseguite da questo runbook quando `DryRun` è impostato su True.
   + **ReportRestore.Output**

     Restituisce i dettagli delle azioni di ripristino eseguite da questo runbook quando `DryRun` è impostato su True.
   + **ReportContainmentFailure.Output**

     Fornisce istruzioni per ripristinare la configurazione originale dell'istanza Amazon EC2 di destinazione durante uno scenario di errore del flusso di lavoro di contenimento.
   + **ReportRestoreFailure.Output**

     Fornisce istruzioni per ripristinare la configurazione originale dell'istanza Amazon EC2 di destinazione durante uno scenario di errore del flusso di lavoro di ripristino.

 **Riferimenti** 

Systems Manager Automation
+ [Esegui questa automazione (console)](https://console.aws.amazon.com/systems-manager/automation/execute/AWSSupport-ContainEC2Instance)
+ [Esecuzione di un'automazione semplice](https://docs.aws.amazon.com//systems-manager/latest/userguide/automation-working-executing.html)
+ [Configurazione dell'automazione](https://docs.aws.amazon.com//systems-manager/latest/userguide/automation-setup.html)
+ [Flussi di lavoro di Support Automation](https://aws.amazon.com/premiumsupport/technology/saw/)