J'ai créé une paire de clés en utilisant ssh-keygen et j'obtiens les deux id_rsa et id_rsa.pub classiques.
J'ai importé la clé publique dans mon compte AWS EC2.
Maintenant, j'ai créé une instance Windows et pour déchiffrer ce mot de passe d'instance, la console AWS me demande un fichier .pem. Comment puis-je obtenir ce fichier .pem à partir de mes deux fichiers id_rsa et id_rsa.pub?
Selon this , cette commande peut être utilisée:
ssh-keygen -f id_rsa -e -m pem
Cela convertira votre clé public dans un format compatible OpenSSL. Votre clé privée est déjà au format PEM et peut être utilisée telle quelle (comme l'a déclaré Michael Hampton).
Vérifiez si AWS ne demande pas un (X.509) certificat au format PEM, ce qui serait différent de vos clés SSH.
En utilisant ssh-keygen
pour exporter la clé au format .pem a fonctionné pour moi.
ssh-keygen -f id_rsa.pub -m 'PEM' -e > id_rsa.pem
Ensuite, copiez simplement le .pem
touche si nécessaire.
Pour référence:
-f id_rsa.pub
partie indique le fichier d'entrée à lire-m 'PEM
indique un type de fichier PEM-e
option indique que la sortie sera exportéeid_rsa
est le fichier que vous devez utiliser pour décrypter le mot de passe de l'instance Windows EC2, mais assurez-vous simplement que le fichier que vous copiez n'est pas protégé par des phrases.
J'ai résolu le problème de protection temporaire du id_rsa
fichier avec quelque chose comme:
$ openssl rsa -in ~/.ssh/id_rsa -out tmp_file.pem
Initialement, lorsque vous utilisez ssh-keygen
, J'ai pu générer une clé publique compatible avec AWS EC2, mais j'ai eu des problèmes avec la création de clés privées compatibles. Les éléments suivants créent des paires de clés publiques et privées compatibles avec AWS EC2.
ssh-keygen -P "" -t rsa -b 4096 -m pem -f my-key-pair
Voici des informations sur chaque paramètre:
Ressources:
Pour plus d'informations sur ssh-keygen, voir: https://man.openbsd.org/ssh-keygen.1
AWS - Paires de clés EC2 - https://docs.aws.Amazon.com/AWSEC2/latest/UserGuide/ec2-key-pairs.html
Lorsque vous lancez une instance EC2, vous lui affectez une paire de clés (ou aucune). Il ne peut pas être modifié par la suite.
Ce n'est qu'en utilisant ce fichier .pem de cette paire de clés que vous pourrez décrypter le mot de passe Windows.
Le fichier .pem aurait été téléchargé lors de la création de la paire de clés. Vous ne pouvez plus l'obtenir. Si vous l'avez perdu, vous n'avez pas de chance.
Vous ne pouvez pas utiliser un fichier .pem que vous avez généré vous-même, sauf si vous avez importé cette clé dans AWS avant le lancement de l'instance et que vous l'avez affectée à l'instance.
Autrement dit, si vous n'avez pas le fichier .pem d'origine, vous ne pouvez pas obtenir le mot de passe.
Edit: après avoir relu la question, je me rends compte que l'OP avait importé sa clé dans AWS.