Gestion automatique EC2 des instances avec la configuration de gestion d'hôte par défaut - AWS Systems Manager

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.

Gestion automatique EC2 des instances avec la configuration de gestion d'hôte par défaut

Le paramètre de configuration de gestion d'hôte par défaut AWS Systems Manager permet de gérer automatiquement vos EC2 instances Amazon en tant qu'instances gérées. Une instance gérée est une EC2 instance configurée pour être utilisée avec Systems Manager.

Les avantages de la gestion de vos instances avec Systems Manager sont les suivants :

  • Connectez-vous à vos EC2 instances en toute sécurité à l'aide de Session Manager.

  • Effectuez des analyses de correctifs automatisées à l'aide Patch Manager.

  • Consultez les informations détaillées sur vos instances à l'aide de Systems Manager Inventory.

  • Suivez et gérez les instances à l'aide de Fleet Manager.

  • Keep SSM Agent mis à jour automatiquement.

Fleet Manager, Inventaire, Patch Manager, et Session Manager sont des fonctionnalités de Systems Manager.

La configuration de gestion d'hôte par défaut permet de gérer les EC2 instances sans avoir à créer manuellement un profil d'instance AWS Identity and Access Management (IAM). Au lieu de cela, la configuration de gestion d'hôte par défaut crée et applique un IAM rôle par défaut pour garantir que Systems Manager dispose des autorisations nécessaires pour gérer toutes les instances dans le Compte AWS et à l' Région AWS endroit où il est activé.

Si les autorisations fournies ne sont pas suffisantes pour votre cas d'utilisation, vous pouvez également ajouter des politiques au IAM rôle par défaut créé par la configuration de gestion d'hôte par défaut. Sinon, si vous n'avez pas besoin d'autorisations pour toutes les fonctionnalités fournies par le IAM rôle par défaut, vous pouvez créer votre propre rôle et vos propres politiques personnalisés. Toute modification apportée au IAM rôle que vous choisissez pour la configuration de gestion d'hôte par défaut s'applique à toutes les EC2 instances Amazon gérées dans la région et le compte.

Pour plus d'informations sur la politique utilisée par la Configuration de gestion des hôtes par défaut, consultez AWS politique gérée : A mazonSSMManaged EC2InstanceDefaultPolicy.

Implémentation d'un accès sur la base du moindre privilège

Les procédures de la présente rubrique sont destinées à être exécutées uniquement par les administrateurs. Par conséquent, nous recommandons d'implémenter l'accès avec le moindre privilège afin d'empêcher les utilisateurs non administrateurs de configurer ou de modifier la configuration de gestion des hôtes par défaut. Pour consulter des exemples de politiques qui limitent l'accès à la configuration de gestion des hôtes par défaut, voir Exemples de politique du moindre privilège pour la configuration de gestion des hôtes par défaut plus loin dans cette rubrique.

Important

Les informations d'enregistrement des instances enregistrées à l'aide de la configuration de gestion d'hôte par défaut sont stockées localement dans les C:\ProgramData\Amazon répertoires var/lib/amazon/ssm or. La suppression de ces répertoires ou de leurs fichiers empêchera l'instance d'acquérir les informations d'identification nécessaires pour se connecter à Systems Manager à l'aide de la configuration de gestion des hôtes par défaut. Dans ces cas, vous devez utiliser un profil d'IAMinstance pour fournir les autorisations requises à votre instance, ou recréer l'instance.

Prérequis

Pour utiliser la configuration de gestion d'hôte par défaut dans le paramètre Région AWS et à l' Compte AWS endroit où vous activez le paramètre, les conditions suivantes doivent être remplies.

  • Une instance à gérer doit utiliser le service de métadonnées d'instance version 2 (IMDSv2).

    La configuration de gestion des hôtes par défaut ne prend pas en charge du Service des métadonnées d'instance Version 1. Pour plus d'informations sur la transition versIMDSv2, consultez la section Transition vers l'utilisation du service de métadonnées d'instance version 2 dans le guide de l'EC2utilisateur Amazon

  • SSM Agent la version 3.2.582.0 ou ultérieure doit être installée sur l'instance à gérer.

    Pour plus d'informations sur la vérification de la version de SSM Agent installé sur votre instance, voirVérification du numéro de version de l'SSM Agent.

    Pour plus d'informations sur les mises à jour SSM Agent, voir Mise à jour automatique de l'SSM Agent.

  • En tant qu'administrateur chargé des tâches décrites dans cette rubrique, vous devez disposer d'autorisations pour les UpdateServiceSettingAPIopérations GetServiceSettingResetServiceSetting, et. En outre, vous devez disposer d'autorisations pour l'iam:PassRoleautorisation associée au AWSSystemsManagerDefaultEC2InstanceManagementRole IAM rôle. Voici un exemple de politique fournissant ces autorisations. Remplacez chacun example resource placeholder avec vos propres informations.

    { "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" ] } } } ] }
  • Si un profil d'IAMinstance est déjà attaché à une EC2 instance devant être gérée à l'aide de Systems Manager, vous devez supprimer toutes les autorisations autorisant l'ssm:UpdateInstanceInformationopération. SSM Agent tente d'utiliser les autorisations du profil d'instance avant d'utiliser les autorisations de configuration de gestion de l'hôte par défaut. Si vous autorisez l'ssm:UpdateInstanceInformationopération dans votre propre profil d'IAMinstance, l'instance n'utilisera pas les autorisations de configuration de gestion d'hôte par défaut.

Activation du paramètre de configuration de gestion d'hôte par défaut

Vous pouvez activer la configuration de gestion d'hôte par défaut à partir du Fleet Manager console, ou en utilisant le AWS Command Line Interface ou AWS Tools for Windows PowerShell.

Vous devez activer la configuration de gestion d'hôte par défaut une par une dans chaque région où vous souhaitez que vos EC2 instances Amazon soient gérées selon ce paramètre.

Après avoir activé la configuration de gestion d'hôte par défaut, vos instances peuvent prendre jusqu'à 30 minutes pour utiliser les informations d'identification du rôle que vous avez choisi à l'étape 5 de la procédure suivante.

Pour activer la configuration de gestion des hôtes par défaut (console)
  1. Ouvrez la AWS Systems Manager console à l'adresse https://console.aws.amazon.com/systems-manager/.

  2. Dans le volet de navigation, choisissez Fleet Manager.

  3. Choisissez Gestion de compte, Configuration de la gestion des hôtes par défaut.

  4. Activez l'option Activer la configuration de gestion des hôtes par défaut.

  5. Choisissez le rôle AWS Identity and Access Management (IAM) utilisé pour activer les fonctionnalités de Systems Manager pour vos instances. Nous vous recommandons d'utiliser le rôle par défaut dans Configuration de gestion des hôtes par défaut. Il contient l'ensemble minimal d'autorisations nécessaires pour gérer vos EC2 instances Amazon à l'aide de Systems Manager. Si vous préférez utiliser un rôle personnalisé, la politique de confiance du rôle doit autoriser Systems Manager en tant qu'entité de confiance.

  6. Choisissez Configurer pour terminer la configuration.

Pour activer la configuration de gestion des hôtes par défaut (ligne de commande)
  1. Créez un JSON fichier sur votre machine locale contenant la politique de relation de confiance suivante.

    { "Version":"2012-10-17", "Statement":[ { "Sid":"", "Effect":"Allow", "Principal":{ "Service":"ssm.amazonaws.com" }, "Action":"sts:AssumeRole" } ] }
  2. Ouvrez le AWS CLI ou les outils pour Windows PowerShell et exécutez l'une des commandes suivantes, en fonction du type de système d'exploitation de votre ordinateur local, pour créer un rôle de service dans votre compte. Remplacez chacun example resource placeholder avec vos propres informations.

    Linux & macOS
    aws iam create-role \ --role-name AWSSystemsManagerDefaultEC2InstanceManagementRole \ --path /service-role/ \ --assume-role-policy-document file://trust-policy.json
    Windows
    aws iam create-role ^ --role-name AWSSystemsManagerDefaultEC2InstanceManagementRole ^ --path /service-role/ ^ --assume-role-policy-document file://trust-policy.json
    PowerShell
    New-IAMRole ` -RoleName "AWSSystemsManagerDefaultEC2InstanceManagementRole" ` -Path "/service-role/" ` -AssumeRolePolicyDocument "file://trust-policy.json"
  3. Exécutez la commande suivante pour attacher la politique gérée AmazonSSMManagedEC2InstanceDefaultPolicy au rôle que vous venez de créer. Remplacez chacun example resource placeholder avec vos propres informations.

    Linux & macOS
    aws iam attach-role-policy \ --policy-arn arn:aws:iam::aws:policy/AmazonSSMManagedEC2InstanceDefaultPolicy \ --role-name AWSSystemsManagerDefaultEC2InstanceManagementRole
    Windows
    aws iam attach-role-policy ^ --policy-arn arn:aws:iam::aws:policy/AmazonSSMManagedEC2InstanceDefaultPolicy ^ --role-name AWSSystemsManagerDefaultEC2InstanceManagementRole
    PowerShell
    Register-IAMRolePolicy ` -PolicyArn "arn:aws:iam::aws:policy/AmazonSSMManagedEC2InstanceDefaultPolicy" ` -RoleName "AWSSystemsManagerDefaultEC2InstanceManagementRole"
  4. Ouvrez le AWS CLI ou les outils pour Windows PowerShell et exécutez la commande suivante. Remplacez chacun example resource placeholder avec vos propres informations.

    Linux & macOS
    aws ssm update-service-setting \ --setting-id arn:aws:ssm:region:account-id:servicesetting/ssm/managed-instance/default-ec2-instance-management-role \ --setting-value service-role/AWSSystemsManagerDefaultEC2InstanceManagementRole
    Windows
    aws ssm update-service-setting ^ --setting-id arn:aws:ssm:region:account-id:servicesetting/ssm/managed-instance/default-ec2-instance-management-role ^ --setting-value service-role/AWSSystemsManagerDefaultEC2InstanceManagementRole
    PowerShell
    Update-SSMServiceSetting ` -SettingId "arn:aws:ssm:region:account-id:servicesetting/ssm/managed-instance/default-ec2-instance-management-role" ` -SettingValue "service-role/AWSSystemsManagerDefaultEC2InstanceManagementRole"

    Il n'y a pas de sortie si la commande réussit.

  5. Exécutez la commande suivante pour afficher les paramètres de service actuels pour la configuration de gestion d'hôte par défaut dans les versions actuelles Compte AWS et Région AWS.

    Linux & macOS
    aws ssm get-service-setting \ --setting-id arn:aws:ssm:region:account-id:servicesetting/ssm/managed-instance/default-ec2-instance-management-role
    Windows
    aws ssm get-service-setting ^ --setting-id arn:aws:ssm:region:account-id:servicesetting/ssm/managed-instance/default-ec2-instance-management-role
    PowerShell
    Get-SSMServiceSetting ` -SettingId "arn:aws:ssm:region:account-id:servicesetting/ssm/managed-instance/default-ec2-instance-management-role"

    La commande renvoie des informations telles que les suivantes.

    {
        "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"
        }
    }

Désactivation du paramètre de configuration de gestion d'hôte par défaut

Vous pouvez désactiver la configuration de gestion d'hôte par défaut à partir du Fleet Manager console, ou en utilisant le AWS Command Line Interface ou AWS Tools for Windows PowerShell.

Vous devez désactiver le paramètre de configuration de gestion d'hôte par défaut un par un dans chaque région où vous ne souhaitez plus que vos EC2 instances Amazon soient gérées selon cette configuration. Le désactiver dans une région ne le désactive pas dans toutes les régions.

Si vous désactivez la configuration de gestion d'hôte par défaut et que vous n'avez pas associé de profil d'instance à vos EC2 instances Amazon autorisant l'accès à Systems Manager, celles-ci ne seront plus gérées par Systems Manager.

Pour désactiver la configuration de gestion des hôtes par défaut (console)
  1. Ouvrez la AWS Systems Manager console à l'adresse https://console.aws.amazon.com/systems-manager/.

  2. Dans le volet de navigation, choisissez Fleet Manager.

  3. Choisissez Gestion de compte, Configuration de la gestion des hôtes par défaut.

  4. Désactivez l'option Activer la Configuration de gestion des hôtes par défaut.

  5. Choisissez Configurer pour désactiver la Configuration de gestion des hôtes par défaut.

Pour désactiver la configuration de gestion des hôtes par défaut (ligne de commande)
  • Ouvrez le AWS CLI ou les outils pour Windows PowerShell et exécutez la commande suivante. Remplacez chacun example resource placeholder avec vos propres informations.

    Linux & macOS
    aws ssm reset-service-setting \ --setting-id arn:aws:ssm:region:account-id:servicesetting/ssm/managed-instance/default-ec2-instance-management-role
    Windows
    aws ssm reset-service-setting ^ --setting-id arn:aws:ssm:region:account-id:servicesetting/ssm/managed-instance/default-ec2-instance-management-role
    PowerShell
    Reset-SSMServiceSetting ` -SettingId "arn:aws:ssm:region:account-id:servicesetting/ssm/managed-instance/default-ec2-instance-management-role"

Exemples de politique du moindre privilège pour la configuration de gestion des hôtes par défaut

Les exemples de politiques suivants montrent comment empêcher les membres de votre organisation d'apporter des modifications au paramètre de configuration de gestion des hôtes par défaut dans votre compte.

Politique de contrôle des services pour AWS Organizations

La politique suivante explique comment empêcher les membres non administrateurs de mettre à jour votre paramètre AWS Organizations de configuration de gestion d'hôte par défaut. Remplacez chacun example resource placeholder avec vos propres informations.

{ "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" ] } } } ] }

Politique pour les IAM directeurs

La politique suivante explique comment empêcher les IAM groupes, les rôles ou les utilisateurs de votre entreprise AWS Organizations de mettre à jour votre paramètre de configuration de gestion d'hôte par défaut. Remplacez chacun example resource placeholder avec vos propres informations.

{ "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" } ] }