Agence web » Actualités du digital » Comment ajouter votre fichier PEM EC2 à votre trousseau SSH

Comment ajouter votre fichier PEM EC2 à votre trousseau SSH

Lorsque vous créez une nouvelle instance dans EC2, vous recevrez un fichier PEM qui fait office de clé d'accès. Vous devrez l'utiliser pour SSH sur le serveur, vous devrez donc l'ajouter à votre trousseau pour un accès facile.

Comment utiliser votre fichier PEM

Vous pouvez utiliser les fichiers PEM manuellement en ajoutant le -i drapeau à ssh:

ssh -i keyfile.pem user@host

Il est difficile de taper à chaque fois, il existe donc plusieurs façons de résoudre ce problème.

La méthode la plus simple serait d'ajouter vos propres clés publiques à votre instance EC2 et d'ignorer le fichier PEM pour toutes les futures connexions. Votre clé publique est généralement stockée dans ~/.ssh/id_rsa.pub, vous voudrez donc le copier dans le ~/.ssh/authorized_keys fichier sur le serveur. Si vous êtes une équipe composée d'un seul homme et que vous ne vous occupez pas de le faire à chaque fois, c'est tout ce que vous avez à faire.

Cependant, vous devrez suivre ce processus chaque fois que vous créez une nouvelle instance. Mais avec les fichiers PEM, vous pouvez les réutiliser entre les instances. De plus, ils sont indépendants de vos clés privées personnelles, vous pouvez donc les donner à d'autres personnes qui ont besoin d'un accès ssh.

le ssh-add commande stockera une clé dans ssh-agent jusqu'à ce que vous vous déconnectiez:

ssh-add ~/keyfile.pem

Cependant, vous devrez l'exécuter à chaque redémarrage, ce n'est donc pas idéal. Vous pouvez l'ajouter à votre ~/.bashrc ou ~/.bash_profile à exécuter à chaque démarrage du terminal, ce qui résout le problème. Assurez-vous de rediriger la sortie vers /dev/null pour désactiver la commande, ou vous verrez «Identité ajoutée» chaque fois que vous ouvrez le terminal.

ssh-add ~/keyfile.pem >/dev/null 2>&1

Stocker les clés SSH dans le trousseau macOS

Si vous utilisez macOS, vous pouvez stocker des clés SSH supplémentaires dans le trousseau macOS. S'ouvrir ~/.ssh/config et ajoutez les lignes suivantes:

Host *
UseKeychain yes

Vous pouvez maintenant ajouter des clés avec

ssh-add -K ~/keyfile.pem

Les clés seront stockées dans le trousseau et persisteront lors des redémarrages. Ils seront automatiquement chargés comme ~/id_rsa.

Remplacez id_rsa par votre nouvelle clé

Bien que cette option fonctionne, ce n'est pas vraiment quelque chose que nous recommandons. Mais si, pour une raison quelconque, vous vraiment voulez que votre clé privée AWS soit votre nouvelle clé privée personnelle, vous pouvez remplacer id_rsa avec le fichier PEM d'AWS. id_rsa est chargé par défaut, vous utiliserez donc par défaut cette clé pour tout.

Faire Absolument certain vous n'utilisez votre clé privée actuelle pour rien (SSH vers d'autres serveurs, GitHub, etc.). Même si vous pensez que non, vous devez sauvegarder vos clés SSH actuelles avant de continuer:

mv ~/.ssh/id_rsa ~/.ssh/id_rsa_old
mv ~/.ssh/id_rsa.pub ~/.ssh/id_rsa_old.pub

Le fichier AWS PEM doit être converti au format PKCS8 pour être utilisé comme clé privée. Vous pouvez le faire avec OpenSSL:

openssl pkey < keyfile.pem > keyfile.pkcs8

Ensuite, vous devrez générer la clé publique correspondante, toujours à l'aide d'OpenSSL

openssl rsa -in keyfile.pkcs8 -pubout > keyfile.pub

Ensuite, assurez-vous d'avoir sauvegardé votre ancien id_rsa, vous pouvez les remplacer par vos nouveaux:

mv keyfile.pkcs8 ~/.ssh/id_rsa
mv keyfile.pub ~/.ssh/id_rsa.pub

★★★★★