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.
Installer EC2 Instance Connect sur vos instances EC2
Pour se connecter à une instance Linux à l’aide d’EC2 Instance Connect, l’instance doit avoir installé EC2 Instance Connect. L’installation d’EC2 Instance Connect configure le démon SSH sur l’instance.
Pour plus d'informations sur le package EC2 Instance Connect, consultez aws/aws-ec2 - sur le site Web. instance-connect-config GitHub
Si vous avez configuré les paramètres AuthorizedKeysCommand et AuthorizedKeysCommandUser pour l’authentification SSH, l’installation d’EC2 Instance Connect ne les mettra pas à jour. Par conséquent, vous ne pouvez pas utiliser EC2 Instance Connect.
Installer les prérequis
Avant d’installer EC2 Instance Connect, assurez-vous que vous remplissez les conditions préalables suivantes.
-
Vérifiez que l’instance utilise l’un des éléments suivants :
-
Amazon Linux 2 avant la version 2.0.20190618 *
-
AL2023 AMI minimale ou AMI optimisée pour Amazon ECS
-
CentOS Stream 8 et 9
-
macOS Sonoma, version antérieure à 14.2.1, Ventura, version antérieure à 13.6.3, et Monterey, version antérieure à 12.7.2 *
-
Red Hat Enterprise Linux (RHEL) 8 et 9
-
Ubuntu 16.04 et 18.04 *
* Pour Amazon Linux 2, macOS et Ubuntu : si vous avez lancé votre instance à l’aide d’une version ultérieure à celles répertoriées ci-dessus, EC2 Instance Connect est préinstallé et aucune installation manuelle n’est requise.
-
Vérifiez les conditions préalables générales pour EC2 Instance Connect.
Pour de plus amples informations, veuillez consulter Conditions préalables pour EC2 Instance Connect.
-
Vérifiez les conditions préalables requises pour la connexion à votre instance à l’aide d’un client SSH sur votre machine locale.
Pour de plus amples informations, veuillez consulter Se connecter à votre instance Linux à l’aide de SSH.
-
Obtenez l’ID de l’instance.
Vous pouvez obtenir l’ID de votre instance à l’aide de la console Amazon EC2 (depuis la colonne Instance ID (ID d’instance). Si vous préférez, vous pouvez utiliser la commande describe-instances (AWS CLI) ou Get-EC2Instance(AWS Tools for Windows PowerShell).
Installer manuellement EC2 Instance Connect
Si vous avez lancé votre instance en utilisant l’une des AMI suivantes, EC2 Instance Connect est préinstallé et vous pouvez ignorer cette procédure :
-
AL2023 AMI standard
-
Amazon Linux 2 2.0.20190618 ou version ultérieure
-
macOS Sonoma 14.2.1 ou version ultérieure
-
macOS Ventura 13.6.3 ou version ultérieure
-
macOS Monterey 12.7.2 ou version ultérieure
-
Ubuntu 20.04 ou version ultérieure
Utilisez l’une des procédures suivantes pour installer EC2 Instance Connect, en fonction du système d’exploitation de votre instance.
- Amazon Linux 2
-
Pour installer EC2 Instance Connect sur une instance lancée avec Amazon Linux 2
-
Connectez-vous à votre instance à l’aide de SSH.
Remplacez les valeurs de l’exemple dans la commande suivante par vos propres valeurs. Utilisez la paire de clés SSH attribuée à votre instance lorsque vous l’avez lancée et le nom d’utilisateur par défaut de l’AMI que vous avez utilisée pour lancer votre instance. Pour Amazon Linux 2, le nom d’utilisateur par défaut est ec2-user.
$ ssh -i my_ec2_private_key.pem ec2-user@ec2-a-b-c-d.us-west-2.compute.amazonaws.com
Pour plus d’informations sur la connexion à votre instance, consultez Connexion à votre instance Linux à l’aide d’un client SSH.
-
Installez le package EC2 Instance Connect sur votre instance.
[ec2-user ~]$ sudo yum install ec2-instance-connect
Trois nouveaux scripts doivent apparaître dans le dossier /opt/aws/bin/ :
eic_curl_authorized_keys
eic_parse_authorized_keys
eic_run_authorized_keys
-
(Facultatif) Vérifiez qu’EC2 Instance Connect a été installé avec succès sur votre instance.
[ec2-user ~]$ sudo less /etc/ssh/sshd_config
EC2 Instance Connect a été correctement installé si les lignes AuthorizedKeysCommand et AuthorizedKeysCommandUser contiennent les valeurs suivantes :
AuthorizedKeysCommand /opt/aws/bin/eic_run_authorized_keys %u %f
AuthorizedKeysCommandUser ec2-instance-connect
-
AuthorizedKeysCommand définit le script eic_run_authorized_keys pour rechercher les clés à partir des métadonnées de l’instance.
-
AuthorizedKeysCommandUser définit l’utilisateur système comme ec2-instance-connect.
Si vous avez déjà configuré AuthorizedKeysCommand et AuthorizedKeysCommandUser, l’installation d’EC2 Instance Connect ne modifie pas les valeurs et vous ne pouvez pas utiliser EC2 Instance Connect.
- CentOS
-
Installation d’EC2 Instance Connect sur une instance lancée avec CentOS
-
Connectez-vous à votre instance à l’aide de SSH.
Remplacez les valeurs de l’exemple dans la commande suivante par vos propres valeurs. Utilisez la paire de clés SSH attribuée à votre instance lorsque vous l’avez lancée et le nom d’utilisateur par défaut de l’AMI que vous avez utilisée pour lancer votre instance. Pour CentOS, le nom d’utilisateur par défaut est centos ou ec2-user.
$ ssh -i my_ec2_private_key.pem centos@ec2-a-b-c-d.us-west-2.compute.amazonaws.com
Pour plus d’informations sur la connexion à votre instance, consultez Connexion à votre instance Linux à l’aide d’un client SSH.
-
Si vous utilisez un proxy HTTP ou HTTPS, vous devez définir les variables d’environnement http_proxy ou https_proxy dans la session shell en cours.
Si vous n’utilisez pas de proxy, vous pouvez ignorer cette étape.
-
Pour un serveur proxy HTTP, exécutez les commandes suivantes :
$ export http_proxy=http://hostname:port
$ export https_proxy=http://hostname:port
-
Pour un serveur proxy HTTPS, exécutez les commandes suivantes :
$ export http_proxy=https://hostname:port
$ export https_proxy=https://hostname:port
-
Installez le package EC2 Instance Connect sur votre instance en exécutant les commandes suivantes.
Les fichiers de configuration EC2 Instance Connect pour CentOS sont fournis dans un package Red Hat Package Manager (RPM), avec différents packages RPM pour CentOS 8 et CentOS 9 et pour les types d'instances qui s' Intel/AMD exécutent sur (x86_64) ou ARM (). AArch64
Utilisez le bloc de commande correspondant à votre système d’exploitation et à l’architecture de votre processeur.
-
CentOS 8
Intel/AMD (x86_64)
[ec2-user ~]$ mkdir /tmp/ec2-instance-connect
[ec2-user ~]$ curl https://amazon-ec2-instance-connect-us-west-2.s3.us-west-2.amazonaws.com/latest/linux_amd64/ec2-instance-connect-2.0.0-5.rhel8.x86_64.rpm -o /tmp/ec2-instance-connect/ec2-instance-connect.rpm
[ec2-user ~]$ curl https://amazon-ec2-instance-connect-us-west-2.s3.us-west-2.amazonaws.com/latest/linux_amd64/ec2-instance-connect-selinux-2.0.0-5.noarch.rpm -o /tmp/ec2-instance-connect/ec2-instance-connect-selinux.rpm
[ec2-user ~]$ sudo yum install -y /tmp/ec2-instance-connect/ec2-instance-connect.rpm /tmp/ec2-instance-connect/ec2-instance-connect-selinux.rpm
BRAS (AArch64)
[ec2-user ~]$ mkdir /tmp/ec2-instance-connect
[ec2-user ~]$ curl https://amazon-ec2-instance-connect-us-west-2.s3.us-west-2.amazonaws.com/latest/linux_arm64/ec2-instance-connect-2.0.0-5.rhel8.aarch64.rpm -o /tmp/ec2-instance-connect/ec2-instance-connect.rpm
[ec2-user ~]$ curl https://amazon-ec2-instance-connect-us-west-2.s3.us-west-2.amazonaws.com/latest/linux_arm64/ec2-instance-connect-selinux-2.0.0-5.noarch.rpm -o /tmp/ec2-instance-connect/ec2-instance-connect-selinux.rpm
[ec2-user ~]$ sudo yum install -y /tmp/ec2-instance-connect/ec2-instance-connect.rpm /tmp/ec2-instance-connect/ec2-instance-connect-selinux.rpm
-
CentOS 9
Intel/AMD (x86_64)
[ec2-user ~]$ mkdir /tmp/ec2-instance-connect
[ec2-user ~]$ curl https://amazon-ec2-instance-connect-us-west-2.s3.us-west-2.amazonaws.com/latest/linux_amd64/ec2-instance-connect-2.0.0-5.rhel9.x86_64.rpm -o /tmp/ec2-instance-connect/ec2-instance-connect.rpm
[ec2-user ~]$ curl https://amazon-ec2-instance-connect-us-west-2.s3.us-west-2.amazonaws.com/latest/linux_amd64/ec2-instance-connect-selinux-2.0.0-5.noarch.rpm -o /tmp/ec2-instance-connect/ec2-instance-connect-selinux.rpm
[ec2-user ~]$ sudo yum install -y /tmp/ec2-instance-connect/ec2-instance-connect.rpm /tmp/ec2-instance-connect/ec2-instance-connect-selinux.rpm
BRAS (AArch64)
[ec2-user ~]$ mkdir /tmp/ec2-instance-connect
[ec2-user ~]$ curl https://amazon-ec2-instance-connect-us-west-2.s3.us-west-2.amazonaws.com/latest/linux_arm64/ec2-instance-connect-2.0.0-5.rhel9.aarch64.rpm -o /tmp/ec2-instance-connect/ec2-instance-connect.rpm
[ec2-user ~]$ curl https://amazon-ec2-instance-connect-us-west-2.s3.us-west-2.amazonaws.com/latest/linux_arm64/ec2-instance-connect-selinux-2.0.0-5.noarch.rpm -o /tmp/ec2-instance-connect/ec2-instance-connect-selinux.rpm
[ec2-user ~]$ sudo yum install -y /tmp/ec2-instance-connect/ec2-instance-connect.rpm /tmp/ec2-instance-connect/ec2-instance-connect-selinux.rpm
Vous devriez voir ce nouveau script dans le dossier /opt/aws/bin/ :
eic_run_authorized_keys
-
(Facultatif) Vérifiez qu’EC2 Instance Connect a été installé avec succès sur votre instance.
EC2 Instance Connect a été correctement installé si les lignes AuthorizedKeysCommand et AuthorizedKeysCommandUser contiennent les valeurs suivantes :
AuthorizedKeysCommand /opt/aws/bin/eic_run_authorized_keys %u %f
AuthorizedKeysCommandUser ec2-instance-connect
-
AuthorizedKeysCommand définit le script eic_run_authorized_keys pour rechercher les clés à partir des métadonnées de l’instance.
-
AuthorizedKeysCommandUser définit l’utilisateur système comme ec2-instance-connect.
Si vous avez déjà configuré AuthorizedKeysCommand et AuthorizedKeysCommandUser, l’installation d’EC2 Instance Connect ne modifie pas les valeurs et vous ne pouvez pas utiliser EC2 Instance Connect.
- macOS
-
Installation d’EC2 Instance Connect sur une instance lancée avec macOS
-
Connectez-vous à votre instance à l’aide de SSH.
Remplacez les valeurs de l’exemple dans la commande suivante par vos propres valeurs. Utilisez la paire de clés SSH attribuée à votre instance lorsque vous l’avez lancée et le nom d’utilisateur par défaut de l’AMI que vous avez utilisée pour lancer votre instance. Pour les instances macOS, le nom d’utilisateur par défaut est ec2-user.
$ ssh -i my_ec2_private_key.pem ec2-user@ec2-a-b-c-d.us-west-2.compute.amazonaws.com
Pour plus d’informations sur la connexion à votre instance, consultez Connexion à votre instance Linux à l’aide d’un client SSH.
-
Mettez à jour Homebrew en utilisant la commande suivante. La mise à jour listera les logiciels que Homebrew connaît. Le package EC2 Instance Connect est fourni par le biais de Homebrew sur les instances macOS. Pour plus d'informations, consultez Mettre à jour le système d’exploitation et les logiciels sur les instances Mac Amazon EC2.
[ec2-user ~]$ brew update
-
Installez le package EC2 Instance Connect sur votre instance. Cela installera le logiciel et configurera sshd pour l’utiliser.
[ec2-user ~]$ brew install ec2-instance-connect
Vous devriez voir ce nouveau script dans le dossier /opt/aws/bin/ :
eic_run_authorized_keys
-
(Facultatif) Vérifiez qu’EC2 Instance Connect a été installé avec succès sur votre instance.
[ec2-user ~]$ sudo less /etc/ssh/sshd_config.d/60-ec2-instance-connect.conf
EC2 Instance Connect a été correctement installé si les lignes AuthorizedKeysCommand et AuthorizedKeysCommandUser contiennent les valeurs suivantes :
AuthorizedKeysCommand /opt/aws/bin/eic_run_authorized_keys %u %f
AuthorizedKeysCommandUser ec2-instance-connect
-
AuthorizedKeysCommand définit le script eic_run_authorized_keys pour rechercher les clés à partir des métadonnées de l’instance.
-
AuthorizedKeysCommandUser définit l’utilisateur système comme ec2-instance-connect.
Si vous avez déjà configuré AuthorizedKeysCommand et AuthorizedKeysCommandUser, l’installation d’EC2 Instance Connect ne modifie pas les valeurs et vous ne pouvez pas utiliser EC2 Instance Connect.
- RHEL
-
Installation d’EC2 Instance Connect sur une instance lancée avec Red Hat Enterprise Linux (RHEL)
-
Connectez-vous à votre instance à l’aide de SSH.
Remplacez les valeurs de l’exemple dans la commande suivante par vos propres valeurs. Utilisez la paire de clés SSH attribuée à votre instance lorsque vous l’avez lancée et le nom d’utilisateur par défaut de l’AMI que vous avez utilisée pour lancer votre instance. Pour RHEL, le nom d’utilisateur par défaut est ec2-user ou root.
$ ssh -i my_ec2_private_key.pem ec2-user@ec2-a-b-c-d.us-west-2.compute.amazonaws.com
Pour plus d’informations sur la connexion à votre instance, consultez Connexion à votre instance Linux à l’aide d’un client SSH.
-
Si vous utilisez un proxy HTTP ou HTTPS, vous devez définir les variables d’environnement http_proxy ou https_proxy dans la session shell en cours.
Si vous n’utilisez pas de proxy, vous pouvez ignorer cette étape.
-
Pour un serveur proxy HTTP, exécutez les commandes suivantes :
$ export http_proxy=http://hostname:port
$ export https_proxy=http://hostname:port
-
Pour un serveur proxy HTTPS, exécutez les commandes suivantes :
$ export http_proxy=https://hostname:port
$ export https_proxy=https://hostname:port
-
Installez le package EC2 Instance Connect sur votre instance en exécutant les commandes suivantes.
Les fichiers de configuration EC2 Instance Connect pour RHEL sont fournis dans un package Red Hat Package Manager (RPM), avec différents packages RPM pour RHEL 8 et RHEL 9 et pour les types d'instances qui s'exécutent sur Intel/AMD (x86_64) ou ARM (). AArch64
Utilisez le bloc de commande correspondant à votre système d’exploitation et à l’architecture de votre processeur.
-
RHEL 8
Intel/AMD (x86_64)
[ec2-user ~]$ mkdir /tmp/ec2-instance-connect
[ec2-user ~]$ curl https://amazon-ec2-instance-connect-us-west-2.s3.us-west-2.amazonaws.com/latest/linux_amd64/ec2-instance-connect-2.0.0-5.rhel8.x86_64.rpm -o /tmp/ec2-instance-connect/ec2-instance-connect.rpm
[ec2-user ~]$ curl https://amazon-ec2-instance-connect-us-west-2.s3.us-west-2.amazonaws.com/latest/linux_amd64/ec2-instance-connect-selinux-2.0.0-5.noarch.rpm -o /tmp/ec2-instance-connect/ec2-instance-connect-selinux.rpm
[ec2-user ~]$ sudo yum install -y /tmp/ec2-instance-connect/ec2-instance-connect.rpm /tmp/ec2-instance-connect/ec2-instance-connect-selinux.rpm
BRAS (AArch64)
[ec2-user ~]$ mkdir /tmp/ec2-instance-connect
[ec2-user ~]$ curl https://amazon-ec2-instance-connect-us-west-2.s3.us-west-2.amazonaws.com/latest/linux_arm64/ec2-instance-connect-2.0.0-5.rhel8.aarch64.rpm -o /tmp/ec2-instance-connect/ec2-instance-connect.rpm
[ec2-user ~]$ curl https://amazon-ec2-instance-connect-us-west-2.s3.us-west-2.amazonaws.com/latest/linux_arm64/ec2-instance-connect-selinux-2.0.0-5.noarch.rpm -o /tmp/ec2-instance-connect/ec2-instance-connect-selinux.rpm
[ec2-user ~]$ sudo yum install -y /tmp/ec2-instance-connect/ec2-instance-connect.rpm /tmp/ec2-instance-connect/ec2-instance-connect-selinux.rpm
-
RHEL 9
Intel/AMD (x86_64)
[ec2-user ~]$ mkdir /tmp/ec2-instance-connect
[ec2-user ~]$ curl https://amazon-ec2-instance-connect-us-west-2.s3.us-west-2.amazonaws.com/latest/linux_amd64/ec2-instance-connect-2.0.0-5.rhel9.x86_64.rpm -o /tmp/ec2-instance-connect/ec2-instance-connect.rpm
[ec2-user ~]$ curl https://amazon-ec2-instance-connect-us-west-2.s3.us-west-2.amazonaws.com/latest/linux_amd64/ec2-instance-connect-selinux-2.0.0-5.noarch.rpm -o /tmp/ec2-instance-connect/ec2-instance-connect-selinux.rpm
[ec2-user ~]$ sudo yum install -y /tmp/ec2-instance-connect/ec2-instance-connect.rpm /tmp/ec2-instance-connect/ec2-instance-connect-selinux.rpm
BRAS (AArch64)
[ec2-user ~]$ mkdir /tmp/ec2-instance-connect
[ec2-user ~]$ curl https://amazon-ec2-instance-connect-us-west-2.s3.us-west-2.amazonaws.com/latest/linux_arm64/ec2-instance-connect-2.0.0-5.rhel9.aarch64.rpm -o /tmp/ec2-instance-connect/ec2-instance-connect.rpm
[ec2-user ~]$ curl https://amazon-ec2-instance-connect-us-west-2.s3.us-west-2.amazonaws.com/latest/linux_arm64/ec2-instance-connect-selinux-2.0.0-5.noarch.rpm -o /tmp/ec2-instance-connect/ec2-instance-connect-selinux.rpm
[ec2-user ~]$ sudo yum install -y /tmp/ec2-instance-connect/ec2-instance-connect.rpm /tmp/ec2-instance-connect/ec2-instance-connect-selinux.rpm
Vous devriez voir ce nouveau script dans le dossier /opt/aws/bin/ :
eic_run_authorized_keys
-
(Facultatif) Vérifiez qu’EC2 Instance Connect a été installé avec succès sur votre instance.
EC2 Instance Connect a été correctement installé si les lignes AuthorizedKeysCommand et AuthorizedKeysCommandUser contiennent les valeurs suivantes :
AuthorizedKeysCommand /opt/aws/bin/eic_run_authorized_keys %u %f
AuthorizedKeysCommandUser ec2-instance-connect
-
AuthorizedKeysCommand définit le script eic_run_authorized_keys pour rechercher les clés à partir des métadonnées de l’instance.
-
AuthorizedKeysCommandUser définit l’utilisateur système comme ec2-instance-connect.
Si vous avez déjà configuré AuthorizedKeysCommand et AuthorizedKeysCommandUser, l’installation d’EC2 Instance Connect ne modifie pas les valeurs et vous ne pouvez pas utiliser EC2 Instance Connect.
- Ubuntu
-
Pour installer EC2 Instance Connect sur une instance lancée avec Ubuntu 16.04 ou version ultérieure
-
Connectez-vous à votre instance à l’aide de SSH.
Remplacez les valeurs de l’exemple dans la commande suivante par vos propres valeurs. Utilisez la paire de clés SSH qui a été attribuée à votre instance lorsque vous l’avez lancée et utilisez le nom d’utilisateur par défaut de l’AMI que vous avez utilisé pour lancer votre instance. Pour une AMI Ubuntu, le nom d’utilisateur est ubuntu.
$ ssh -i my_ec2_private_key.pem ubuntu@ec2-a-b-c-d.us-west-2.compute.amazonaws.com
Pour plus d’informations sur la connexion à votre instance, consultez Connexion à votre instance Linux à l’aide d’un client SSH.
-
(Facultatif) Assurez-vous que votre instance possède l’AMI Ubuntu la plus récente.
Exécutez les commandes suivantes pour mettre à jour tous les paquets sur votre instance.
ubuntu:~$ sudo apt-get update
ubuntu:~$ sudo apt-get upgrade
-
Installez le package EC2 Instance Connect sur votre instance.
ubuntu:~$ sudo apt-get install ec2-instance-connect
Trois nouveaux scripts doivent apparaître dans le dossier /usr/share/ec2-instance-connect/ :
eic_curl_authorized_keys
eic_parse_authorized_keys
eic_run_authorized_keys
-
(Facultatif) Vérifiez qu’EC2 Instance Connect a été installé avec succès sur votre instance.
ubuntu:~$ sudo less /lib/systemd/system/ssh.service.d/ec2-instance-connect.conf
EC2 Instance Connect a été correctement installé si les lignes AuthorizedKeysCommand et AuthorizedKeysCommandUser contiennent les valeurs suivantes :
AuthorizedKeysCommand /usr/share/ec2-instance-connect/eic_run_authorized_keys %%u %%f
AuthorizedKeysCommandUser ec2-instance-connect
-
AuthorizedKeysCommand définit le script eic_run_authorized_keys pour rechercher les clés à partir des métadonnées de l’instance.
-
AuthorizedKeysCommandUser définit l’utilisateur système comme ec2-instance-connect.
Si vous avez déjà configuré AuthorizedKeysCommand et AuthorizedKeysCommandUser, l’installation d’EC2 Instance Connect ne modifie pas les valeurs et vous ne pouvez pas utiliser EC2 Instance Connect.