Comment résoudre les problèmes de connexion à mon instance EC2 à l'aide d'Instance EC2 Connect?

Date de la dernière mise à jour : 19/10/2020

Je reçois l'erreur suivante lorsque j'essaie de me connecter à mon instance Amazon Elastic Compute Cloud (Amazon EC2) à l'aide d'Amazon Instance EC2 Connect:

« Un problème est survenu lors de la configuration de la connexion de l'instance

Échec de la connexion. Si cette instance vient de démarrer, réessayez dans une minute ou deux. »

Comment résoudre ce problème ?

Brève description

Voici les raisons courantes pour lesquelles Instance EC2 Connect peut ne pas fonctionner comme prévu:

  • Instance EC2 Connect ne prend pas en charge la distribution du système d'exploitation.
  • Le package Instance EC2 Connect n'est pas installé sur l'instance.
  • Il existe des stratégies ou des autorisations AWS Identity and Access Management (IAM) manquantes ou incorrectes.
  • Les groupes de sécurité associés à l'instance n'ont pas d'adresses IP de service Instance EC2 Connect répertoriées.

Remarque: pour vous connecter à l'aide du client basé sur le navigateur, votre instance doit avoir une adresse IPv4 publique. Si votre instance n'a pas d'adresse IP publique, connectez-vous à l'aide de l' interface de ligne de commande (CLI) Instance EC2 Connect à partir d'une machine située dans le même VPC. Pour plus d'informations, consultez la section Limitations dans Se connecter à l'aide de Instance EC2 Connect.

Résolution

1.    Vérifiez que Instance EC2 Connect prend en charge la distribution Linux de votre instance.

2.    Vérifiez que le instance prise en charge dispose du package Instance EC2 Connect installé.

3.    Vérifiez que l' utilisateur IAM qui tente d'utiliser Instance EC2 Connect est autorisé à transférer la clé publique vers l'instance.

4.    Vérifiez que les règles du groupe de sécurité de l'instance répertorient les adresses IP Instance EC2 Connect:

Connexions SSH basées sur un navigateur

Les connexions SSH basées sur un navigateur nécessitent que les règles entrantes du groupe de sécurité de votre instance autorisent l'accès Instance EC2 Connect à SSH sur le port TCP 22.

Instance EC2 Connect utilise des plages d'adresses IP spécifiques pour les connexions SSH basées sur un navigateur à votre instance. Ces plages d’adresses IP diffèrent d'une région AWS à l'autre. Pour trouver la plage d'adresses IP AWS pour Instance EC2 Connect dans une région spécifique, utilisez les commandes suivantes:

Remarque: dans les commandes suivantes, remplacez us-east-1 par la région AWS de votre instance.

Windows (nécessite Windows PowerShell pour AWS)

PS C:\> Get-AWSPublicIpAddressRange -Region us-east-1 -ServiceKey EC2_INSTANCE_CONNECT | select IpPrefix

Linux (nécessite curl et jq)

$ curl -s https://ip-ranges.amazonaws.com/ip-ranges.json| jq -r '.prefixes[] | select(.region=="us-east-1") | select(.service=="EC2_INSTANCE_CONNECT") | .ip_prefix'

Mettez à jour les règles entrantes de votre groupe de sécurité pour autoriser l'accès au port TCP 22 à partir de la plage d'adresses IP renvoyée par les commandes précédentes.

Connexions CLI Instance EC2 Connect

Mettez à jour les règles entrantes de votre groupe de sécuritépour autoriser l'accès au port TCP 22 depuis votre IP.