Établir une connexion SSH avec une instance Amazon EC2 via Connect

Lorsque vous exécutez des instances Amazon EC2, vous devez les gérer. La méthode traditionnelle pour gérer des machines Linux à distance consiste à se connecter à Linux via SSH et à exécuter les commandes nécessaires, à modifier les fichiers de configuration, etc. Les utilisateurs peuvent se connecter à Linux via SSH à l’aide d’un nom d’utilisateur et d’un mot de passe ou d’un nom d’utilisateur et d’une clé de sécurité. Cependant, pour se connecter à des instances EC2 via SSH, les utilisateurs ne peuvent utiliser qu’un nom d’utilisateur et une clé de sécurité. Cette politique est définie dans AWS EC2 pour renforcer la sécurité. Cet article de blog explique comment se connecter via SSH à des instances AWS fonctionnant sous Linux à partir de machines fonctionnant sous Windows et Linux.

NAKIVO pour la sauvegarde AWS EC2

NAKIVO pour la sauvegarde AWS EC2

Sauvegarde des instances Amazon EC2 vers EC2, AWS S3 et sur site. Options anti-ransomware. Récupération rapide des instances et des objets d'application.

Téléchargement d’une clé depuis AWS

Lorsque vous créez une nouvelle instance EC2 par l’intermédiaire de l’assistant de la console de gestion AWS, une paire de clés est générée à la fin du processus de création de l’instance EC2. Une paire de clés se compose d’une clé privée et d’une clé publique. Secure Shell (SSH) est le protocole de chiffrement utilisé, et la paire de clés sert à chiffrer la connexion de manière asymétrique. Une clé publique peut être générée par la clé privée. Lorsqu’une paire de clés est générée pour une instance Amazon EC2, la clé publique est enregistrée dans la configuration du système Linux installé sur l’instance EC2, tandis que la clé privée est téléchargée par l’utilisateur.

Vous devez télécharger la clé privée lors de la dernière étape du processus de création de l’instance Amazon EC2 et la conserver en lieu sûr. L’instance EC2 ne sera pas créée tant que vous n’aurez pas téléchargé la clé privée. La clé privée est fournie dans un fichier PEM. N’oubliez pas qu’il s’agit de votre seule chance de télécharger la clé pour l’instance AWS EC2 actuelle.

Saving the key required to connect to an AWS EC2 instance to finish creating the instance

Je télécharge la clé privée et l’enregistre sous le nom de fichier blog01-key.pem .

C Se connecter à l’instance EC2 via SSH À l’aide de PuTTY

PuTTY est un client SSH gratuit que vous pouvez installer sous Windows. Vous devez convertir le fichier PEM téléchargé au format PPK, qui bénéficie de la prise en charge de PuTTY, avant de pouvoir vous connecter à AWS via SSH. Pour cela, vous devez utiliser l’utilitaire PuTTY Key Generator (PuTTYgen), qui s’installe avec PuTTY à partir d’un seul fichier d’installation. Vous pouvez également télécharger manuellement puttygen.exe . PuTTYgen sert à générer des clés RSA et DSA.

Je dispose donc de trois fichiers sur la machine Windows à partir de laquelle je vais me connecter aux instances EC2 :

blog01-key.pem

putty.exe

puttygen.exe

Dans cet exemple, ces fichiers se trouvent dans « C:AWS SSH ».

How to connect to AWS instances via SSH – preparing the needed files

Ouvrez PuTTY Key Generator (PuTTYgen) par clic sur le fichier puttygen.exe ou sur un raccourci vers ce fichier.

Cliquez sur Load dans la fenêtre PuTTYgen.

SSH Amazon EC2 key conversion in PuTTYgen

Cliquez sur « Sélectionner tout » (*.*) et parcourissez le fichier PEM. Nous sélectionnons « C:AWS SSHblog01-key.pem ». Cliquez ensuite sur Open.

Loading a key for AWS SSH conversion and configuration

Lisez l’avertissement affiché et cliquez sur OK.

SSH Amazon EC2 key import

Vous pouvez désormais voir la chaîne de caractères de votre clé publique dans la fenêtre de PuTTYgen. Utilisez la configuration telle qu’elle apparaît sur la capture d’écran ci-dessous.

Type de clé à générer : RSA

Nombre de bits dans une clé générée : 2048 bits

Cliquez sur Save private key. How to connect to an AWS instance via SSH – saving a converted key

Êtes-vous sûr de vouloir enregistrer cette clé sans phrase de passe pour la protéger ?

Cliquez sur Yes si vous acceptez. Si vous n’acceptez pas, revenez en arrière et protégez la clé à l’aide d’une phrase de passe.

Saving a key needed for AWS SSH configuration

Enregistrez la clé privée dans un emplacement sûr. J’enregistre la clé sous le nom « C:AWS SSHAWS EC2 SSH.ppk ». Cliquez sur Save.

Saving the AWS EC2 SSH key file in the ppk format

H Comment se connecter via SSH à une instance EC2 depuis Windows

Vérifiez l’adresse IP publique de votre instance AWS EC2. L’instance doit être en état « en cours d’exécution » pour disposer d’une adresse IP publique. Dans mon cas, l’adresse IP publique est 52.55.222.44 . J’utiliserai cette adresse IP pour me connecter à AWS via SSH.

Checking the public IP address of the EC2 instance

Ouvrez PuTTY sous Windows. Exécutez putty.exe ou le raccourci approprié.

Rendez-vous sur SSH > Auth.

Cliquez sur Browse et sélectionnez le fichier PPK (la clé privée). Je sélectionne le fichier « C:AWS SSHAWS EC2 SSH.ppk » généré précédemment dans PuTTYgen.

Connect to EC2 instance SSH PuTTY

Revenez à l’écran Session dans PuTTY et saisissez l’adresse IP publique de votre instance EC2 dans le champ Nom de l’hôte (ou adresse IP) . Assurez-vous que le type de connexion est SSH . Je saisis 52.55.222.44 , qui est l’adresse IP de mon instance EC2 copiée depuis la console de gestion EC2. Le port TCP 22 est sélectionné. Cliquez sur Open.

Connecting to an AWS EC2 instance via SSH in PuTTY

L’alerte de sécurité s’affiche. Lisez le message et cliquez sur Accept pour continuer et vous connecter à l’instance EC2. Cette boîte de dialogue s’affiche lorsque vous vous connectez pour la première fois à une machine distante donnée. L’empreinte digitale affichée dans le message doit correspondre à celle de l’instance EC2.

Establishing the SSH connection with a Linux instance (SSH Amazon EC2)

Saisissez le nom d’utilisateur dans la fenêtre de la console. Comme j’utilise Ubuntu Linux sur mon instance EC2, j’utilise ubuntu, , qui est le nom d’utilisateur par défaut configuré pour cette instance lors de son déploiement à partir de l’image Amazon Machine Image (AMI) appropriée.

Noms d’utilisateur par défaut pour différents types d’AMI Linux sur AWS :

  • Amazon Linux 2 ou l’AMI Amazon Linux : ec2-user
  • CentOS : centos ou ec2-user
  • Debian : ADMIN
  • Fedora : fedora ou ec2-user
  • Red Hat Enterprise Linux (RHEL) : ec2-user ou root
  • SUSE : ec2-user ou root
  • Ubuntu : ubuntu
  • Oracle : ec2-user
  • Bitnami : bitnami

Dès que l’invite de commande d’un shell Linux (bash dans ce cas) s’affiche, vous pouvez exécuter des commandes sur la machine Linux distante hébergée sur AWS. Cela signifie que vous avez correctement configuré le protocole SSH pour AWS EC2 dans PuTTY.

Connect to EC2 instance SSH ubuntu

Transfert de fichiers via SSH vers des instances Amazon EC2

J’ai configuré l’accès SSH à distance à l’instance Amazon EC2 sur AWS, et je peux désormais me connecter aux instances AWS via SSH, exécuter des commandes, modifier la configuration, etc. Cependant, vous pouvez également avoir besoin de transférer des fichiers via SSH vers des instances AWS depuis votre machine Windows, ou dans l’autre sens. Il existe des protocoles de transfert de fichiers fonctionnant via SSH pour transférer des fichiers en toute sécurité d’un ordinateur à un autre, par exemple le protocole SFTP (Secure File Transfer Protocol) et le protocole SCP (Secure Copy Protocol).

Pour transférer des fichiers via SSH vers des instances AWS depuis Windows, vous pouvez utiliser WinSCP, un outil gratuit pour Windows. Notez que scp doit être installé sur la machine Linux distante fonctionnant sur AWS.

Une fois WinSCP installé sur la machine Windows, lancez l’application.

Sélectionnez SFTP comme protocole de transfert de fichiers et, dans le champ Nom de l’hôte , saisissez l’adresse IP publique de votre instance EC2 à laquelle vous souhaitez vous connecter via SSH pour transférer des fichiers. Saisissez un nom d’utilisateur pour votre instance EC2. Dans mon exemple, j’utilise 52.55.222.44 comme adresse IP et ubuntu comme nom d’utilisateur.

Cliquez sur Advanced dans la fenêtre principale de WinSCP.

How to enable transferring files via SSH to AWS EC2 instances

Rendez-vous dans SSH > Authentication dans la fenêtre Paramètres avancés du site . Cliquez sur dans la section Paramètres d’authentification et sélectionnez la clé privée que vous avez précédemment générée dans PuTTYgen. Dans mon cas, je sélectionne « C:AWS SSHAWS EC2 SSH.ppk ». Cliquez sur OK pour enregistrer les paramètres et revenir à la fenêtre principale de WinSCP.

Selecting the AWS EC2 SSH key for connecting to AWS instances in WinSCP

Cliquez sur « Login » dans la fenêtre principale de WinSCP.

How to transfer files via SSH to an AWS instance in WinSCP

Un message d’avertissement s’affiche, comme lors de la première connexion à l’instance EC2 depuis PuTTY. Cliquez sur « Yes » pour continuer.

Connecting to AWS via SSH – displaying connection details

Si la configuration SSH AWS EC2 est correcte et que vous avez défini avec succès les paramètres de connexion SSH dans WinSCP, vous verrez s’afficher une fenêtre à deux volets de type « Commander ». Le dossier utilisateur de la machine Windows locale s’affiche dans le volet de gauche, tandis que le répertoire personnel de l’utilisateur du système Linux exécuté sur AWS s’affiche dans le volet de droite. Vous pouvez glisser-déposer des fichiers d’un volet à l’autre et copier, renommer ou supprimer des fichiers sur les machines locale et distante. Transferring files via SSH to an AWS instance is working now

Connexion à AWS via SSH depuis Linux

Contrairement à Windows, Linux dispose d’un client SSH natif. Dans la console de votre machine Linux locale, utilisez une commande similaire à celle-ci pour vous connecter via SSH à des instances EC2 fonctionnant sous Linux :

ssh -i file_name.pem ubuntu@ip_address

Accédez au répertoire dans lequel se trouve votre fichier de clé privée .pem sur votre machine Linux. Dans cet exemple, j’utilise Ubuntu, et j’ai téléchargé le fichier blog01-key.pem vers ~/Downloads/.

cd ~/Downloads/

ssh -i blog01-key.pem ubuntu@52.55.222.44

ubuntu est le nom d’utilisateur sur la machine Linux distante, et 52.55.222.44 est l’adresse IP de la machine Linux distante.

Si vous exécutez cette commande maintenant, vous obtiendrez l’erreur suivante :

Avertissement : fichier de clé privée non protégé.

Les droits d’accès pour « blog01-key.pem » sont trop larges.

Il est impératif que votre clé privée ne soit pas accessible à d’autres personnes.

Cette clé privée sera ignorée. Chargement de la clé : autorisation pad.

Autorisation refusée (clé publique).

SSH Amazon EC2 – connecting from Linux to a remote EC2 instance

Vous devez définir des droits d’accès plus restrictifs (plus stricts) pour des raisons de sécurité.

chmod 400 ./blog-key.pem

Utilisez 400 si les clés ne doivent être lisibles que par vous.

Utilisez 600 si vous souhaitez que les clés soient lisibles et modifiables par vous.

Vous pouvez désormais vous connecter aux instances AWS EC2 via SSH depuis votre machine Linux à l’aide de la commande :

ssh -i blog01-key.pem ubuntu@52.55.222.44

Je suis désormais connecté via SSH à une instance Amazon EC2.

How to connect to EC2 instance via SSH (Linux)

Transfert de fichiers via SSH vers Amazon EC2 sous Linux

Vous pouvez également transférer des fichiers via SSH vers des instances AWS par l’intermédiaire de SCP sous Linux. Assurez-vous d’avoir déjà établi une connexion SSH AWS vers l’instance Linux distante depuis votre machine Linux locale. Ensuite, ouvrez une nouvelle console sur votre machine Linux locale et connectez-vous à l’instance EC2 par la commande suivante :

scp -i /path/key_name.pem /path/file_name.txt user_name@ec2_instance_IP_address:/path_to_file

Dans mon exemple, j’utilise la commande :

scp -i ~/Downloads/blog01-key.pem ~/Downloads/file.txt ubuntu@52.55.222.44:/home/ubuntu

Transferring files via SSH to the AWS instance in the Linux console

Le transfert de fichiers via SSH vers l’instance AWS s’est déroulé avec succès.

Transferring files via SSH to the AWS instance in the Linux console has finished

Pour copier un fichier dans le sens inverse (depuis Linux sur AWS EC2 vers votre machine Linux locale), utilisez une commande du type :

scp -i /path/key_name.pem user_name@ec2_instance_IP_address:/path_to_file/my-file.txt path/my-file2.txt

Dans mon cas, j’utilise la commande :

scp -i ~/Downloads/blog01-key.pem ubuntu@52.55.222.44:/home/ubuntu/file1.txt ~/Downloads/file1-copy.txt

How to copy files from an EC2 instance via SSH in Linux

Comme vous pouvez le voir sur la capture d’écran, le fichier a été copié avec succès. Vous pouvez copier des fichiers importants depuis une instance Amazon EC2 vers l’ordinateur local de votre choix et les sauvergarder. Effectuez régulièrement des sauvegardes ( Sauvegarde AWS EC2 ) pour éviter toute perte de données.

Comment ajouter une nouvelle clé à une instance AWS

Vous pouvez créer une paire de clés supplémentaire pour une instance EC2 existante afin de vous connecter à des instances AWS via SSH après avoir créé l’instance AWS EC2. Vous pouvez être amené à effectuer cette opération pour fournir un accès SSH à l’instance EC2 à d’autres utilisateurs. Si vous estimez qu’un utilisateur n’a pas besoin de se connecter via SSH aux instances AWS, vous pouvez supprimer la clé publique de la machine Linux exécutée sur AWS EC2 sans avoir à recréer une nouvelle clé à la place de celle générée lors de la création de l’instance.

Ouvrez la console de gestion EC2 dans la console de gestion AWS.

Accédez à Network & Security dans le volet de navigation, puis cliquez sur Key Pairs.

Toutes les paires de clés existantes s’affichent sur cette page. Vous pouvez saisir une partie du nom d’une paire de clés existante dans le champ de recherche pour la retrouver.

Cliquez sur le bouton « Create key pair » situé dans le coin supérieur droit de l’interface Web pour créer une nouvelle paire de clés pour une instance EC2 existante.

AWS EC2 SSH connection – creating an additional key pair

Sélectionnez « .pem » comme format de clé privée si vous devez utiliser une clé sous Linux avec OpenSSH, ou sélectionnez « .ppk » si vous devez utiliser la clé sous Windows avec PuTTY. Comme je vais utiliser une machine Linux locale pour me connecter à des instances AWS EC2 via SSH avec une nouvelle clé, je sélectionne l’option de clé « .pem ». Vous pouvez ajouter des balises si nécessaire. Cliquez sur « Create key pair » lorsque vous êtes prêt à continuer.

Creating a new key pair to connect to AWS EC2 instances

Enregistrez le fichier téléchargé dans un emplacement sûr. Dans mon cas, le nom du fichier téléchargé est « blog02-temp.pem» et j’enregistre ce fichier dans le répertoire « Downloads» du répertoire personnel de l’utilisateur.

Saving the pem key file

Récupération d’une clé publique à partir de la nouvelle paire de clés

Nous avons généré une nouvelle paire de clés dans l’interface web de la console de gestion AWS. Nous devons maintenant générer une clé publique par rapport à la clé privée contenue dans le fichier téléchargé .pem .

Utilisez une commande au format suivant :

ssh-keygen -y -f /path_to_key_pair/my-key-pair.pem

Dans mon cas, la commande est :

ssh-keygen -y -f ~/Downloads/blog02-temp.pem

Si vous obtenez une erreur, définissez les permissions correctes :

chmod 400 ~/Downloads/blog02-temp.pem

Si tout est correct, la clé publique générée s’affiche dans la sortie de la console.

Generating a public key by using a private key for connecting via SSH into AWS instances

Copiez la chaîne de la clé générée et conservez ces informations en lieu sûr. Dans cet exemple, j’enregistre la chaîne de la clé dans un fichier texte.

Copiez la chaîne de la clé dans le presse-papiers.

Connectez-vous aux instances EC2 via SSH depuis votre machine Linux locale, comme expliqué plus haut dans cet article.

Nous nous trouvons désormais dans /home/Ubuntu/ .

Ouvrez avec un éditeur de texte le fichier de configuration dans lequel sont stockées les clés publiques permettant d’accéder à l’instance EC2 via SSH : nano ~/.ssh/authorized_keys

Le chemin d’accès complet à ce fichier de configuration dépend de l’image Amazon Machine Image (AMI) Linux et peut être :

/home/ubuntu/.ssh/authorized_keys

/home/ec2-user/.ssh/authorized_keys

/root/.ssh/authorized_keys

Collez votre clé depuis le presse-papiers à la deuxième ligne de ce fichier de configuration.

Enregistrez les modifications et fermez le fichier.

AWS SSH configuration – adding a public key to a Linux machine running in AWS EC2

Ne fermez pas la console (terminal) avec la session SSH en cours que vous utilisez pour vous connecter à l’instance EC2 avant de vous être assuré que la deuxième clé que vous avez ajoutée fonctionne. Sinon, vous risquez de perdre la connexion SSH si la configuration est incorrecte, sans pouvoir vous connecter aux instances AWS via SSH. Ne vous bloquez pas l’accès en cas d’erreur !

Ouvrez un autre terminal sur votre machine Linux locale et essayez de vous connecter à l’instance par une nouvelle clé. Je me rends dans le répertoire où se trouvent mes fichiers de clés .pem .

cd ~/Downloads/

Preparing to check the SSH connection to an AWS EC2 instance with the second key pair

Connectez-vous à l’instance EC2 exécutant Linux sur AWS par le biais de votre machine Linux locale dans la nouvelle console en définissant la nouvelle clé privée ( blog02-temp.pem dans ce cas).

ssh -i blog02-temp.pem ubuntu@52.55.222.44

SSH Amazon EC2 – the SSH connection with an additional key pair is established

La connexion SSH à AWS a été établie avec succès à l’aide de la nouvelle clé. Vous pouvez désormais envoyer la nouvelle clé ( blog02-temp.pem ) à un utilisateur qui doit établir une connexion SSH à AWS. Lorsque vous devrez désactiver l’accès SSH à cette instance AWS EC2 pour cet utilisateur, supprimez la deuxième ligne du fichier .ssh/authorized_keys sur votre instance Linux distante exécutée sur AWS EC2. Étant donné que la configuration SSH AWS avec les deux clés (la première clé générée lors de la création de l’instance EC2 et la deuxième clé que vous avez créée précédemment pour permettre à un autre utilisateur de se connecter à AWS EC2) fonctionne correctement, vous pouvez fermer les fenêtres du terminal SSH.

Si vous supprimez une paire de clés dans Network & Security > Key pairs depuis la console de gestion EC2 (là où nous avons créé la deuxième clé dans l’interface Web de la console de gestion AWS), les clés présentes au sein de cette instance EC2 particulière ne sont pas supprimées.

Que faire en cas de perte de la clé SSH AWS EC2

Si vous perdez la clé privée permettant de se connecter à une instance AWS EC2 (celle qui a été générée lors de la création d’une nouvelle instance EC2), vous ne pouvez plus vous connecter à l’instance en question. Vous ne pouvez pas générer une nouvelle clé ni l’ajouter au fichier de configuration SSH AWS de l’instance EC2 actuelle. Dans ce cas, vous pouvez utiliser une instance EC2 temporaire à laquelle vous avez accès via SSH. Suivez la procédure suivante pour rétablir l’accès SSH à l’instance AWS EC2.

  • Arrêtez l’instance EC2 d’origine dont vous avez perdu la clé privée SSH AWS.
  • Vérifiez les informations relatives aux volumes EBS associés à l’instance EC2. Vous devez identifier le volume EBS contenant le répertoire racine / monté sur Linux. Notez l’ID de ce volume EBS.
  • Lancez une instance temporaire sur AWS EC2. Vous pouvez utiliser une instance exécutant la même distribution Linux que celle installée sur la machine d’origine (une AMI du même type).
  • Générez une nouvelle paire de clés pour vous connecter à AWS dans la console de gestion AWS. Enregistrez la clé privée et préparez la clé publique. Vous devez générer la chaîne de caractères de la clé publique afin de restaurer la configuration SSH AWS stockée sur le volume racine utilisé par l’instance d’origine.
  • Créez un répertoire sous Linux sur l’instance EC2 temporaire et montez le volume EBS qui contient la partition racine / de l’instance EC2 d’origine sur cette instance temporaire. Localisez le volume EBS requis par l’ID de volume que vous avez noté précédemment.
  • Ouvrez le fichier de configuration des clés SSH AWS (qui se trouvait dans un répertoire tel que /home/Ubuntu/.ssh/authorized_keys). Le chemin d’accès varie en fonction du répertoire dans lequel vous avez monté la partition racine de l’instance EC2 d’origine. Ajoutez la chaîne de caractères de la nouvelle clé publique au fichier de configuration des clés SSH AWS.
  • Démontez le volume EBS utilisé par l’instance EC2 d’origine et attaché à l’instance EC2 temporaire.
  • Remontez le volume EBS qui contient le fichier de configuration des clés SSH AWS modifié sur l’instance EC2 d’origine.
  • Allumez l’instance EC2 d’origine et connectez-vous à cette instance par l’intermédiaire d’une nouvelle paire de clés via SSH.

Utilisation d’EC2 Instance Connect

La gestion des clés est un aspect important de l’administration AWS, car vous devez conserver les clés SSH AWS EC2 permettant d’accéder aux instances EC2 dans un endroit sûr et éviter de les perdre. La création et la suppression des clés nécessaires à l’accès temporaire d’autres utilisateurs peuvent constituer une tâche routinière lorsque le nombre d’utilisateurs est important. C’est pour cette raison que Amazon propose de se connecter aux instances AWS EC2 via SSH par l’intermédiaire d’EC2 Instance Connect. Cette fonctionnalité vous permet d’automatiser la gestion des clés SSH pour la connexion aux instances AWS.

Le principe d’EC2 Instance Connect consiste à créer des politiques de gestion des identités et des accès (IAM) afin de contrôler de manière centralisée l’accès SSH aux instances EC2, sans avoir à gérer (créer, partager, supprimer) manuellement les clés SSH. Enfin, les utilisateurs peuvent utiliser un client SSH, un client basé sur un navigateur de la console AWS EC2 ou l’interface de ligne de commande (CLI) d’Amazon EC2 Instance Connect pour se connecter aux instances Amazon EC2.

L’API Amazon Instance Connect envoie une clé SSH publique à usage unique vers les métadonnées de l’instance pendant 60 secondes. La politique IAM associée à l’utilisateur IAM autorise ce dernier. L’utilisateur doit se connecter à l’instance EC2 par l’intermédiaire de cette clé dans les 60 secondes. Après l’expiration de la clé, une nouvelle clé doit être utilisée.

Amazon Instance Connect est pris en charge pour les instances EC2 sur lesquelles Ubuntu 16 (ou version ultérieure) et Amazon Linux 2 sont installés. Amazon Instance Connect doit être installé sur l’instance EC2 Linux. Une autre condition préalable est l’installation de l’AWS CLI sur la machine Linux distante fonctionnant dans AWS.

Après l’installation, EC2 Instance Connect exécute le script qui écrit les données relatives à ces paramètres dans le fichier de configuration (/etc/ssh/sshd_config) du démon du serveur SSH :

AuthorizedKeysCommand

AuthorizedKeysCommandUser

La configuration mise à jour AuthorizedKeysCommand sert à lire les clés SSH publiques AWS EC2 à partir des métadonnées de l’instance EC2. Si des valeurs personnalisées ont déjà été saisies pour ces paramètres, Instance Connect ne les met pas à jour (ne les écrase pas), mais vous ne pouvez pas utiliser la fonctionnalité dans ce cas.

Vous devez créer un fichier de configuration au format JSON. Ouvrez Console IAM, puis accédez à « Policies » (Politiques) et cliquez sur « Créer une politique ». Vous pouvez également utiliser l’interface de ligne de commande sur votre machine Linux sur laquelle AWS CLI est installé. Un exemple de configuration est présenté ci-dessous. Cette politique permet d’identifier les instances par leur ID afin d’autoriser l’accès.

{

    "Version": "2021-10-17",

    "Statcodeent": [

      {

        "Effect": "Allow",

        "Action": "ec2-instance-connect:SendSSHPublicKey",

        "Resource": [

            "arn:aws:ec2:region:account-id:instance/i-00000000000000000",

            "arn:aws:ec2:region:account-id:instance/i-00000000000000001"

        ],

        "Condition": {

            "StringEquals": {

                "ec2:osuser": "ami-username"

            }

        }

      },

      {

        "Effect": "Allow",

        "Action": "ec2:DescribeInstances",

        "Resource": "*"

      }

    ]

}

La politique doit ensuite être activée. La commande AWS CLI permettant d’activer la politique ressemblera à ceci :

aws iam create-policy --policy-name my-policy --policy-document file://JSON-file-name

Vous pouvez associer la politique activée à l’utilisateur approprié.

aws iam attach-user-policy --policy-arn arn:aws:iam::account-id:policy/my-policy --user-name IAM-friendly-name

Pour vous connecter à l’instance Amazon EC2 dans Amazon Console EC2, sélectionnez l’instance Amazon EC2 souhaitée, puis cliquez sur le bouton Connect . Sur la page « Se connecter à l’instance » , sélectionnez l’option EC2 Instance Connect tab et cliquez sur Connect.

How to connect to AWS EC2 instances with EC2 Instance Connect

Conclusion

La connexion aux instances EC2 via SSH est un élément important du processus d’administration d’AWS EC2. Cet article de blog explique comment configurer SSH pour AWS EC2 et se connecter à des instances EC2 fonctionnant sous Linux à partir de machines locales sous Linux et Windows. L’utilisation de paires de clés est obligatoire pour établir une connexion SSH avec les instances EC2. La clé publique est stockée dans la configuration du système Linux exécuté sur AWS EC2, tandis que la clé privée est utilisée par un client SSH local installé sur l’ordinateur de l’utilisateur. Conservez vos clés en lieu sûr et effectuez régulièrement des sauvegardes afin d’éviter toute perte de données, de temps et d’argent.

Essayez NAKIVO Backup & Replication

Essayez NAKIVO Backup & Replication

Profitez d'un essai gratuit pour découvrir toutes les fonctionnalités de protection des données de la solution. 15 jours gratuits. Aucune restriction en termes de fonctionnalités ou de capacité. Aucune carte bancaire requise.

Les gens qui ont consulté cet article ont également lu