Я создал пару ключей с помощью ssh-keygen и получил два классических id_rsa и id_rsa.pub.
Я импортировал открытый ключ в свою учетную запись AWS EC2.
Теперь я создал экземпляр Windows, и для расшифровки пароля этого экземпляра консоль AWS запрашивает у меня файл .pem. Как мне получить этот файл .pem из двух моих файлов id_rsa и id_rsa.pub?
В соответствии с этот, эту команду можно использовать:
ssh-keygen -f id_rsa -e -m pem
Это преобразует ваш общественный ключ к формату, совместимому с OpenSSL. Ваш частный key уже находится в формате PEM и может использоваться как есть (как заявил Майкл Хэмптон).
Дважды проверьте, не запрашивает ли AWS (X.509) свидетельство в формате PEM, который будет отличаться от ваших ключей SSH.
С помощью ssh-keygen
для экспорта ключа в формате .pem у меня сработало.
ssh-keygen -f id_rsa.pub -m 'PEM' -e > id_rsa.pem
Затем просто скопируйте .pem
ключ по мере необходимости.
Для справки:
-f id_rsa.pub
часть указывает входной файл для чтения-m 'PEM
указывает тип файла PEM-e
опция указывает, что вывод будет экспортированid_rsa
- это файл, который вы должны использовать для расшифровки пароля экземпляра Windows EC2, но просто убедитесь, что файл, который вы копируете, не защищен фразой.
Решил проблему получения временно незащищенного id_rsa
файл с чем-то вроде:
$ openssl rsa -in ~/.ssh/id_rsa -out tmp_file.pem
Первоначально при использовании ssh-keygen
, Я мог сгенерировать открытый ключ, совместимый с AWS EC2, но имел проблемы с созданием закрытых ключей, которые были совместимы. Следующее создает пары открытых и закрытых ключей, совместимые с AWS EC2.
ssh-keygen -P "" -t rsa -b 4096 -m pem -f my-key-pair
Вот информация по каждому параметру:
Ресурсы:
Для получения дополнительной информации о ssh-keygen см .:https://man.openbsd.org/ssh-keygen.1
AWS - пары ключей EC2 -https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-key-pairs.html
Когда вы запускаете экземпляр EC2, вы назначаете ему пару ключей (или ни одной). Это не может быть изменено впоследствии.
Только используя этот файл .pem из этой пары ключей, вы сможете расшифровать пароль Windows.
Файл .pem должен был быть загружен при создании пары ключей. Вы не можете получить его снова. Если вы его потеряли, вам не повезло.
Вы не можете использовать файл .pem, созданный вами самостоятельно, если вы не импортировали этот ключ в AWS до того, как экземпляр был запущен и назначен ему.
Проще говоря, если у вас нет исходного файла .pem, вы не сможете получить пароль.
Изменить: перечитав вопрос, я понимаю, что OP импортировал свой ключ в AWS.