Réinitialisation des mots de passe et SSH des clés sur EC2 les instances - 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.

Réinitialisation des mots de passe et SSH des clés sur EC2 les instances

Vous pouvez utiliser le AWSSupport-ResetAccess runbook pour réactiver automatiquement la génération de mots de passe d'administrateur locaux sur les instances Amazon Elastic Compute Cloud EC2 (Amazon) Windows Server et pour générer une nouvelle SSH clé sur les EC2 instances pour Linux. Le AWSSupport-ResetAccess runbook est conçu pour exécuter une combinaison d' AWS Systems Manager actions, AWS CloudFormation d'actions et de AWS Lambda fonctions qui automatisent les étapes normalement requises pour réinitialiser le mot de passe de l'administrateur local.

Vous pouvez utiliser Automation, une fonctionnalité de AWS Systems Manager, avec le AWSSupport-ResetAccess runbook pour résoudre les problèmes suivants :

Windows

Vous avez perdu la paire de EC2 clés : pour résoudre ce problème, vous pouvez utiliser le AWSSupport- ResetAccess runbook pour créer une paire de clés activée par mot de passe à AMI partir de votre instance actuelle, lancer une nouvelle instance depuis et sélectionner une paire de clés que vous possédez. AMI

Vous avez perdu le mot de passe administrateur local : pour résoudre ce problème, vous pouvez utiliser le AWSSupport-ResetAccess runbook pour générer un nouveau mot de passe que vous pouvez déchiffrer avec la paire de EC2 clés actuelle.

Linux

Vous avez perdu votre paire de EC2 clés ou vous avez configuré l'SSHaccès à l'instance avec une clé que vous avez perdue : pour résoudre ce problème, vous pouvez utiliser le AWSSupport-ResetAccess runbook pour créer une nouvelle SSH clé pour votre instance actuelle, ce qui vous permettra de vous reconnecter à l'instance.

Note

Si votre EC2 instance pour Windows Server est configurée pour Systems Manager, vous pouvez également réinitialiser votre mot de passe d'administrateur local en utilisant EC2Rescue et AWS Systems Manager Run Command. Pour plus d'informations, consultez la section Utilisation EC2Rescue de Windows Server avec Systems Manager Run Command dans le guide de EC2 l'utilisateur Amazon.

Informations connexes

Connectez-vous à votre instance Linux depuis Windows à l'aide de Pu TTY dans le guide de EC2 l'utilisateur Amazon

Comment ça marche

Le dépannage d'une instance avec Automation et le runbook AWSSupport-ResetAccess fonctionne le la façon suivante :

  • Vous spécifiez l'ID de l'instance et vous exécutez le runbook.

  • Le système crée une fonction temporaireVPC, puis exécute une série de fonctions Lambda pour configurer le. VPC

  • Le système identifie un sous-réseau pour votre instance temporaire VPC dans la même zone de disponibilité que votre instance d'origine.

  • Le système lance une instance d'assistance temporaire SSM activée.

  • Le système arrête l'instance originale et crée une sauvegarde. Ensuite, il rattache le volume racine original à l'instance d'assistant.

  • Le système Run Command s'exécute EC2Rescue sur l'instance d'assistance. Sous Windows, EC2Rescue permet de générer un mot de passe pour l'administrateur local en utilisant EC2Config ou EC2Launch sur le volume racine d'origine connecté. Sous Linux, EC2Rescue génère et injecte une nouvelle SSH clé et enregistre la clé privée, chiffrée, dansParameter Store. Lorsque vous avez terminé, EC2Rescue rattache le volume racine à l'instance d'origine.

  • Le système crée une Amazon Machine Image (AMI) de votre instance, maintenant que la génération de mot de passe est activée. Vous pouvez l'utiliser AMI pour créer une nouvelle EC2 instance et associer une nouvelle paire de clés si nécessaire.

  • Le système redémarre votre instance originale et met fin à l'instance temporaire. Le système met également fin aux fonctions temporaires VPC et Lambda créées au début de l'automatisation.

  • Windows : votre instance génère un nouveau mot de passe que vous pouvez décoder depuis la EC2 console Amazon à l'aide de la paire de clés actuellement attribuée à l'instance.

    Linux : vous pouvez accéder SSH à l'instance en utilisant la SSH clé stockée dans le magasin de paramètres de Systems Manager sous le nom /ec2rl/openssh/instance ID/clé.

Avant de commencer

Avant d'exécuter l'automatisation suivante, veillez à exécuter les actions suivantes :

  • Copiez l'ID de l'instance sur laquelle vous souhaitez réinitialiser le mot de passe administrateur. Vous spécifierez cet ID au cours de la procédure.

  • Vous pouvez également recueillir l'ID d'un sous-réseau dans la même zone de disponibilité que votre instance inaccessible. L'EC2Rescueinstance sera créée dans ce sous-réseau. Si vous ne spécifiez aucun sous-réseau, Automation crée un nouveau temporaire VPC dans votre Compte AWS. Vérifiez que vous en Compte AWS avez au moins un VPC disponible. Par défaut, vous pouvez en créer cinq VPCs dans une région. Si vous en avez déjà créé cinq VPCs dans la région, l'automatisation échoue sans apporter de modifications à votre instance. Pour plus d'informations sur les VPC quotas Amazon, consultez la section VPCet les sous-réseaux dans le guide de l'VPCutilisateur Amazon.

  • Vous pouvez éventuellement créer et spécifier un rôle AWS Identity and Access Management (IAM) pour Automation. Si vous ne spécifiez pas ce rôle, Automation s'exécute dans le contexte de l'utilisateur qui a exécuté l'automatisation.

Octroi AWSSupport : EC2Rescue autorisations pour effectuer des actions sur vos instances

EC2Rescuea besoin d'une autorisation pour effectuer une série d'actions sur vos instances pendant l'automatisation. Ces actions font appel aux EC2 services AWS Lambda IAM,, et Amazon pour tenter de résoudre en toute sécurité les problèmes liés à vos instances. Si vous disposez d'autorisations de niveau administrateur dans votre Compte AWS et/ouVPC, vous pourrez peut-être exécuter l'automatisation sans configurer les autorisations, comme décrit dans cette section. Si vous ne possédez pas les autorisations niveau administrateur, donc vous, ou un administrateur, devez configurer les autorisations en utilisant l'une des options suivantes.

Attribution des autorisations en utilisant les stratégies IAM

Vous pouvez soit associer la IAM politique suivante à votre utilisateur, groupe ou rôle en tant que stratégie intégrée, soit créer une nouvelle stratégie IAM gérée et l'associer à votre utilisateur, groupe ou rôle. Pour plus d'informations au sujet de l'ajout d'une politique en ligne à votre compte utilisateur, groupe ou rôle, consultez la page Utilisation de politiques en ligne. Pour plus d'informations sur la création d'une nouvelle politique gérée, consultez la page Utilisation de politiques gérées.

Note

Si vous créez une nouvelle politique IAM gérée, vous devez également y associer la politique gérée A mazonSSMAutomation Role afin que vos instances puissent communiquer avec le Systems ManagerAPI.

IAMPolitique pour AWSSupport-ResetAccess

Remplacez account ID avec vos propres informations.

{ "Version": "2012-10-17", "Statement": [ { "Action": [ "lambda:InvokeFunction", "lambda:DeleteFunction", "lambda:GetFunction" ], "Resource": "arn:aws:lambda:*:account ID:function:AWSSupport-EC2Rescue-*", "Effect": "Allow" }, { "Action": [ "s3:GetObject", "s3:GetObjectVersion" ], "Resource": [ "arn:aws:s3:::awssupport-ssm.*/*.template", "arn:aws:s3:::awssupport-ssm.*/*.zip" ], "Effect": "Allow" }, { "Action": [ "iam:CreateRole", "iam:CreateInstanceProfile", "iam:GetRole", "iam:GetInstanceProfile", "iam:PutRolePolicy", "iam:DetachRolePolicy", "iam:AttachRolePolicy", "iam:PassRole", "iam:AddRoleToInstanceProfile", "iam:RemoveRoleFromInstanceProfile", "iam:DeleteRole", "iam:DeleteRolePolicy", "iam:DeleteInstanceProfile" ], "Resource": [ "arn:aws:iam::account ID:role/AWSSupport-EC2Rescue-*", "arn:aws:iam::account ID:instance-profile/AWSSupport-EC2Rescue-*" ], "Effect": "Allow" }, { "Action": [ "lambda:CreateFunction", "ec2:CreateVpc", "ec2:ModifyVpcAttribute", "ec2:DeleteVpc", "ec2:CreateInternetGateway", "ec2:AttachInternetGateway", "ec2:DetachInternetGateway", "ec2:DeleteInternetGateway", "ec2:CreateSubnet", "ec2:DeleteSubnet", "ec2:CreateRoute", "ec2:DeleteRoute", "ec2:CreateRouteTable", "ec2:AssociateRouteTable", "ec2:DisassociateRouteTable", "ec2:DeleteRouteTable", "ec2:CreateVpcEndpoint", "ec2:DeleteVpcEndpoints", "ec2:ModifyVpcEndpoint", "ec2:Describe*" ], "Resource": "*", "Effect": "Allow" } ] }

Octroi d'autorisations à l'aide d'un AWS CloudFormation modèle

AWS CloudFormation automatise le processus de création de IAM rôles et de politiques à l'aide d'un modèle préconfiguré. Utilisez la procédure suivante pour créer les IAM rôles et les politiques requis pour l'EC2Rescueautomatisation à l'aide de AWS CloudFormation.

Pour créer les IAM rôles et les politiques requis pour EC2Rescue
  1. Téléchargez AWSSupport-EC2RescueRole.zip et extrayez le fichier AWSSupport-EC2RescueRole.json pour l'enregistrer dans un répertoire de votre machine locale.

  2. Si vous Compte AWS vous trouvez dans une partition spéciale, modifiez le modèle pour remplacer les ARN valeurs par celles de votre partition.

    Par exemple, pour les régions de Chine, remplacez toutes les occurrences de arn:aws par arn:aws-cn.

  3. Connectez-vous à la AWS CloudFormation console AWS Management Console et ouvrez-la à l'adresse https://console.aws.amazon.com/cloudformation.

  4. Sélectionnez Créer une pile, Avec de nouvelles ressources (standard).

  5. Sur la page Créer une pile, pour Prérequis - Préparer le modèle, sélectionnez Le modèle est prêt.

  6. Dans Spécifier le modèle, sélectionnez Charger un modèle de fichier.

  7. Sélectionnez Choisir le fichier, puis recherchez et sélectionnez le fichier AWSSupport-EC2RescueRole.json dans le répertoire où vous l'avez extrait.

  8. Sélectionnez Suivant.

  9. Dans la page Spécifier les détails de la pile, pour le champ Nom de la pile, entrez un nom pour identifier cette pile, puis sélectionnez Suivant.

  10. (Facultatif) Dans la zone Balises, appliquez une ou plusieurs paires nom/valeur de clé de balise à la pile.

    Les balises sont des métadonnées facultatives que vous affectez à une ressource. Les balises vous permettent de classer une ressource de différentes façons, par exemple, par objectif, par propriétaire ou par environnement. Par exemple, vous pouvez baliser une pile pour identifier le type de tâches qu'elle exécute, les types de cibles ou d'autres ressources concernées, et l'environnement dans lequel elle est exécutée.

  11. Choisissez Next (Suivant)

  12. Sur la page Révision, passez en revue les détails de la pile, puis faites défiler la page vers le bas et choisissez l'option Je reconnais que cela AWS CloudFormation pourrait créer IAM des ressources.

  13. AWS CloudFormation affiche le PROGRESS statut CREATE_IN_ pendant quelques minutes. Le statut passe à CREATE_ une COMPLETE fois la pile créée. Vous pouvez également choisir l'icône d'actualisation pour vérifier le statut du processus de création.

  14. Dans la liste des piles, sélectionnez l'option en regard de la pile que vous venez de créer, puis sélectionnez l'onglet Sorties.

  15. Copiez la Valeur. C'est ARN le AssumeRole. Vous le spécifierez ARN lorsque vous exécuterez l'automatisation.

Exécution d'Automation

La procédure suivante explique comment exécuter le runbook AWSSupport-ResetAccess à l'aide de la console AWS Systems Manager .

Important

L'automatisation suivante arrête l'instance. L'arrêt de l'instance peut entraîner la perte de données sur des volumes de stockage d'instance attachés (le cas échéant). L'arrêt de l'instance peut aussi causer le changement de l'adresse IP publique, si aucune adresse IP Elastic n'est associée. Pour éviter ces changements de configuration, utilisez Run Command pour réinitialiser l'accès. Pour plus d'informations, consultez la section Utilisation EC2Rescue de Windows Server avec Systems Manager Run Command dans le guide de EC2 l'utilisateur Amazon.

Pour exécuter le AWSSupport - ResetAccess Automation
  1. Ouvrez la AWS Systems Manager console à l'adresse https://console.aws.amazon.com/systems-manager/.

  2. Dans le panneau de navigation de gauche, sélectionnez Automation (Automatisation).

  3. Sélectionnez Execute automation (Exécuter l'automatisation).

  4. Dans la section Document d'automatisation, sélectionnez M'appartenant ou appartenant à Amazon dans la liste.

  5. Dans la liste des runbooks, cliquez sur le bouton sur la carte correspondant à AWSSupport- ResetAccess, puis sur Next.

  6. Sur la page Exécuter le document d'automatisation, sélectionnez Exécution simple.

  7. Dans la section Détails du document, vérifiez que l'option Version du document est définie sur la version par défaut la plus importante. Par exemple, $ DEFAULT ou 3 (par défaut).

  8. Dans la section Paramètres d'entrée, spécifiez les paramètres suivants :

    1. Pour InstanceId, spécifiez l'ID de l'instance inaccessible.

    2. Pour SubnetId, spécifiez un sous-réseau dans un sous-réseau existant VPC dans la même zone de disponibilité que l'instance que vous avez spécifiée. Par défaut, Systems Manager en crée un nouveauVPC, mais vous pouvez spécifier un sous-réseau dans un sous-réseau existant VPC si vous le souhaitez.

      Note

      Si vous ne voyez pas l'option permettant de spécifier un ID de sous-réseau, vérifiez que vous utilisez la version Par défaut la plus récente du runbook.

    3. Pour EC2RescueInstanceType, spécifiez un type d'instance pour l'EC2Rescueinstance. Le type d'instance par défaut est t2.medium.

    4. En AssumeRoleeffet, si vous avez créé des rôles pour cette automatisation en utilisant la AWS CloudFormation procédure décrite plus haut dans cette rubrique, spécifiez ceux AssumeRole ARN que vous avez notés dans la AWS CloudFormation console.

  9. (Facultatif) Dans la section Tags (Balises), appliquez une ou plusieurs paires nom/valeur de clé de balise pour aider à identifier l'automatisation, par exemple, Key=Purpose,Value=ResetAccess.

  10. Sélectionnez Execute (Exécuter).

  11. Pour contrôler les progrès de l'automatisation, sélectionnez l'automatisation en cours d'exécution, puis sélectionnez l'onglet Steps (Étapes). Lorsque l'automatisation est terminée, sélectionnez l'onglet Descriptions, puis sélectionnez View Output (Afficher la sortie) pour consulter les résultats. Pour consulter la sortie des étapes individuelles, sélectionnez l'onglet Étapes, puis sélectionnez Afficher les sorties en regard d'une étape.

Le runbook crée une AMI de sauvegarde et une AMI activée par mot de passe dans le cadre de l'automatisation. Toutes les autres ressources créées par le flux de travail d'automatisation sont automatiquement supprimées, mais ces AMIs restent dans votre compte. Les AMIs sont nommées selon les conventions suivantes :

  • Backup AMI : AWSSupport-EC2Rescue:InstanceID

  • Activé par mot de passe AMI : AWSSupport - EC2Rescue : Activé par mot de passe depuis AMI Instance ID

Vous pouvez localiser ces AMIs en recherchant l'ID d'exécution d'Automation.

Pour Linux, la nouvelle clé SSH privée de votre instance est enregistrée, cryptée, dansParameter Store. Le nom du paramètre est /ec2rl/openssh/instance ID/clé.