Gestione automatica delle istanze EC2 con la configurazione di gestione host predefinita
L’impostazione di Configurazione di gestione host predefinita consente a AWS Systems Manager di gestire automaticamente le istanze Amazon EC2 come istanze gestite. Un'istanza gestita è un'istanza EC2 configurata per l'uso con Systems Manager.
I vantaggi della gestione delle istanze con Systems Manager includono:
-
Connettersi in modo sicuro alle istanze EC2 utilizzando Session Manager.
-
Esegui le scansioni automatiche delle patch utilizzando Patch Manager.
-
Visualizzare informazioni dettagliate sulle istanze utilizzando Inventario di Systems Manager Inventory.
-
Tieni traccia delle istanze e gestiscile utilizzando Fleet Manager.
-
Mantenere SSM Agent aggiornato automaticamente.
Fleet Manager, Inventario, Patch Manager e Session Manager sono funzionalità di Systems Manager.
La funzionalità Configurazione di gestione host predefinita consente di gestire le istanze EC2 senza dover creare manualmente un profilo dell'istanza AWS Identity and Access Management (IAM). Al contrario, la funzionalità Configurazione di gestione host predefinita crea e applica un ruolo IAM predefinito per garantire che Systems Manager disponga delle autorizzazioni per gestire tutte le istanze di un Account AWS e della Regione AWS in cui è attivato.
Se le autorizzazioni fornite non sono sufficienti per il tuo caso d'uso, puoi anche aggiungere policy al ruolo IAM predefinito creato dalla configurazione di gestione host predefinita. In alternativa, se non hai bisogno di autorizzazioni per tutte le funzionalità fornite dal ruolo IAM predefinito, puoi creare ruoli e policy personalizzati. Qualsiasi modifica apportata al ruolo IAM scelto per la configurazione di gestione host predefinita si applica a tutte le istanze Amazon EC2 gestite nella Regione e nell'account.
Per ulteriori informazioni sulla policy utilizzata dalla configurazione di gestione host predefinita, consulta la pagina Politica gestita da AWS: AmazonSSMManagedEC2InstanceDefaultPolicy.
Implementazione dell'accesso con privilegio minimo
La procedura in questo argomento deve essere eseguita solo dagli amministratori. Pertanto, si consiglia di implementare l'accesso con privilegi minimi per impedire agli utenti non amministrativi di configurare o modificare la funzionalità Configurazione di gestione host predefinita. Per visualizzare esempi di policy che limitano l'accesso alla funzionalità Configurazione di gestione host predefinita, consulta Esempi di policy con privilegi minimi per la funzionalità Configurazione di gestione host predefinita più avanti in questo argomento.
Importante
Le informazioni di registrazione delle istanze registrate utilizzando la configurazione di gestione host predefinita sono archiviate localmente nelle directory var/lib/amazon/ssm
o C:\ProgramData\Amazon
. La rimozione di tali directory o dei relativi file impedirà all'istanza di acquisire le credenziali necessarie per connettersi a Systems Manager utilizzando la configurazione di gestione host predefinita. In questi casi, è necessario utilizzare un profilo dell'istanza IAM per fornire le autorizzazioni richieste all'istanza o ricreare l'istanza.
Argomenti
Prerequisiti
Per utilizzare la funzionalità Configurazione di gestione host predefinita nella Regione AWS e nell'Account AWS in cui si attiva l’impostazione, è necessario soddisfare i seguenti requisiti.
-
Un'istanza da gestire deve utilizzare Instance Metadata Service Versione 2 (IMDSv2).
La configurazione di gestione host predefinita non supporta Instance Metadata Service versione 1. Per ulteriori informazioni sul passaggio a IMDSv2, consulta la pagina Passaggio all'utilizzo del servizio di metadati dell'istanza versione 2 nella Guida per l'utente di Amazon EC2
-
Per poter essere gestito, SSM Agent versione 3.2.582.0 o successiva deve essere installato sull'istanza.
Per informazioni sulla verifica della versione di SSM Agent installata sull'istanza, consulta Verifica del numero di versione di SSM Agent.
Per informazioni sull'aggiornamento di SSM Agent, consulta Aggiornamento automatico di SSM Agent.
-
In quanto amministratore che esegue le attività descritte in questo argomento, devi disporre delle autorizzazioni per le operazioni dell'API GetServiceSetting, ResetServiceSetting e UpdateServiceSetting. Inoltre, è necessario disporre delle autorizzazioni per l'autorizzazione
iam:PassRole
del ruolo IAMAWSSystemsManagerDefaultEC2InstanceManagementRole
. Quello seguente è un esempio di policy che concede queste autorizzazioni. Sostituisci ciascunsegnaposto delle risorse di esempio
con le tue informazioni.{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "ssm:GetServiceSetting", "ssm:ResetServiceSetting", "ssm:UpdateServiceSetting" ], "Resource": "arn:aws:ssm:
region
:account-id
:servicesetting/ssm/managed-instance/default-ec2-instance-management-role" }, { "Effect": "Allow", "Action": [ "iam:PassRole" ], "Resource": "arn:aws:iam::account-id
:role/service-role/AWSSystemsManagerDefaultEC2InstanceManagementRole
", "Condition": { "StringEquals": { "iam:PassedToService": [ "ssm.amazonaws.com" ] } } } ] } -
Se un profilo dell'istanza IAM è già collegato a un'istanza EC2 da gestire utilizzando Systems Manager, devi rimuoverne tutte le autorizzazioni che consentono l'operazione
ssm:UpdateInstanceInformation
. SSM Agent tenta di utilizzare le autorizzazioni del profilo dell'istanza prima di utilizzare le autorizzazioni della configurazione di gestione host predefinita. Se consenti l'operazionessm:UpdateInstanceInformation
nel profilo dell'istanza IAM, l'istanza non utilizzerà le autorizzazioni della configurazione di gestione host predefinita.
Attivazione dell'impostazione di Configurazione di gestione host predefinita
È possibile attivare la Configurazione di gestione host predefinita dalla console Fleet Manager o utilizzando AWS Command Line Interface o AWS Tools for Windows PowerShell.
È necessario attivare l’impostazione di Configurazione di gestione host predefinita in ciascuna Regione nella quale si desidera che gestisca le istanze Amazon EC2.
Dopo aver attivato la Configurazione di gestione host predefinita, le istanze potrebbero impiegare fino a 30 minuti per utilizzare le credenziali del ruolo scelto nel Passaggio 5 della seguente procedura.
Per attivare la funzionalità Configurazione di gestione host predefinita (console)
Aprire la console AWS Systems Manager all'indirizzo https://console.aws.amazon.com/systems-manager/
. Nel riquadro di navigazione, scegli Fleet Manager.
-
Scegli Gestione account, Configura la Configurazione di gestione host predefinita.
-
Attiva Abilita configurazione di gestione host predefinita.
-
Scegli il ruolo AWS Identity and Access Management (IAM) utilizzato per abilitare le funzionalità di Systems Manager per le tue istanze. Ti consigliamo di utilizzare il ruolo predefinito fornito dalla configurazione di gestione host predefinita. Contiene il set minimo di autorizzazioni necessario per gestire le istanze Amazon EC2 utilizzando Systems Manager. Se preferisci utilizzare un ruolo personalizzato, la policy di attendibilità del ruolo deve riconoscere Systems Manager come un'entità attendibile.
-
Scegli Configura per completare la configurazione.
Per attivare la funzionalità Configurazione di gestione host predefinita (riga di comando)
-
Crea un file JSON sul tuo computer locale contenente la seguente policy di attendibilità.
{ "Version":"2012-10-17", "Statement":[ { "Sid":"", "Effect":"Allow", "Principal":{ "Service":"ssm.amazonaws.com" }, "Action":"sts:AssumeRole" } ] }
-
Apri la AWS CLI o Strumenti per Windows PowerShell ed esegui uno dei comandi seguenti, in base al tipo di sistema operativo del tuo computer locale, per creare un ruolo di servizio nel tuo account. Sostituisci ciascun
segnaposto delle risorse di esempio
con le tue informazioni. -
Esegui il comando seguente per collegare la policy gestita
AmazonSSMManagedEC2InstanceDefaultPolicy
al ruolo appena creato. Sostituisci ciascunsegnaposto delle risorse di esempio
con le tue informazioni. -
Apri l'AWS CLI o Strumenti per Windows PowerShell ed esegui il comando seguente. Sostituisci ciascun
segnaposto delle risorse di esempio
con le tue informazioni.Se il comando va a buon fine, non viene generato output.
-
Esegui il comando seguente per visualizzare le impostazioni del servizio correnti per la configurazione di gestione host predefinita nell'Account AWS e nella Regione AWS correnti.
Il comando restituisce informazioni simili alle seguenti.
{ "ServiceSetting": { "SettingId": "/ssm/managed-instance/default-ec2-instance-management-role", "SettingValue": "service-role/AWSSystemsManagerDefaultEC2InstanceManagementRole", "LastModifiedDate": "2022-11-28T08:21:03.576000-08:00", "LastModifiedUser": "System", "ARN": "arn:aws:ssm:us-east-2:-123456789012:servicesetting/ssm/managed-instance/default-ec2-instance-management-role", "Status": "Custom" } }
Disattivazione dell'impostazione di Configurazione di gestione host predefinita
È possibile disattivare la Configurazione di gestione host predefinita dalla console Fleet Manager o utilizzando AWS Command Line Interface o AWS Tools for Windows PowerShell.
Devi disattivare l’impostazione di Configurazione di gestione host predefinita in ciascuna Regione nella quale si desidera impedire che gestisca le istanze Amazon EC2. La disattivazione in una Regione non comporta la disattivazione in tutte le Regioni.
Se disattivi la funzionalità Configurazione di gestione host predefinita e non hai collegato un profilo dell'istanza alle istanze Amazon EC2 che consenta l'accesso a Systems Manager, queste non saranno più gestite da Systems Manager.
Per disattivare la funzionalità Configurazione di gestione host predefinita (console)
Aprire la console AWS Systems Manager all'indirizzo https://console.aws.amazon.com/systems-manager/
. Nel riquadro di navigazione, scegli Fleet Manager.
-
Scegli Gestione account, Configurazione di gestione host predefinita.
-
Disattiva Abilita configurazione di gestione host predefinita.
-
Scegli Configura per disabilitare la configurazione di gestione host predefinita.
Per disattivare la funzionalità Configurazione di gestione host predefinita (riga di comando)
-
Apri la AWS CLI o Strumenti per Windows PowerShell ed esegui il comando seguente. Sostituisci ciascun
segnaposto delle risorse di esempio
con le tue informazioni.
Esempi di policy con privilegi minimi per la funzionalità Configurazione di gestione host predefinita
Le seguenti policy di esempio mostrano come impedire ai membri dell'organizzazione di apportare modifiche all'impostazione della funzionalità Configurazione di gestione host predefinita nell'account.
Policy di controllo dei servizi per AWS Organizations
La seguente policy mostra come impedire ai membri non amministrativi di AWS Organizations di aggiornare l'impostazione della funzionalità Configurazione di gestione host predefinita. Sostituisci ciascun segnaposto delle risorse di esempio
con le tue informazioni.
{ "Version": "2012-10-17", "Statement": [{ "Effect": "Deny", "Action": [ "ssm:UpdateServiceSetting", "ssm:ResetServiceSetting" ], "Resource": "arn:aws:ssm:*:*:servicesetting/ssm/managed-instance/default-ec2-instance-management-role", "Condition": { "StringNotEqualsIgnoreCase": { "aws:PrincipalTag/job-function": [ "administrator" ] } } }, { "Effect": "Deny", "Action": [ "iam:PassRole" ], "Resource": "arn:aws:iam::*:role/
service-role/AWSSystemsManagerDefaultEC2InstanceManagementRole
", "Condition": { "StringEquals": { "iam:PassedToService": "ssm.amazonaws.com" }, "StringNotEqualsIgnoreCase": { "aws:PrincipalTag/job-function": [ "administrator" ] } } }, { "Effect": "Deny", "Resource": "arn:aws:iam::*:role/service-role/AWSSystemsManagerDefaultEC2InstanceManagementRole
", "Action": [ "iam:AttachRolePolicy", "iam:DeleteRole" ], "Condition": { "StringNotEqualsIgnoreCase": { "aws:PrincipalTag/job-function": [ "administrator" ] } } } ] }
Policy per i principali IAM
La seguente policy mostra come impedire a gruppi, ruoli o utenti IAM di AWS Organizations di aggiornare l'impostazione della funzionalità Configurazione di gestione host predefinita. Sostituisci ciascun segnaposto delle risorse di esempio
con le tue informazioni.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Deny", "Action": [ "ssm:UpdateServiceSetting", "ssm:ResetServiceSetting" ], "Resource": "arn:aws:ssm:
region
:account-id
:servicesetting/ssm/managed-instance/default-ec2-instance-management-role" }, { "Effect": "Deny", "Action": [ "iam:AttachRolePolicy", "iam:DeleteRole", "iam:PassRole" ], "Resource": "arn:aws:iam::account-id
:role/service-role/AWSSystemsManagerDefaultEC2InstanceManagementRole
" } ] }