Защита паролем PEM-файла
Я хотел бы войти в свой экземпляр EC2 с защищенным паролем PEM-файлом. Как защитить паролем PEM-файл? Я делал это в прошлом, но не могу вспомнить, как я это сделал. Я взял PEM-файл, сгенерированный AWS, и запустил на нем какую-то команду, и она сгенерировала что-то вроде этого:
-----BEGIN RSA PRIVATE KEY-----
Proc-Type: 4,ENCRYPTED
DEK-Info: AES-128-CBC,<BlahBlahBlah>
<encrypted stuff is here>
-----END RSA PRIVATE KEY-----
Затем, когда я SSH в поле, я указываю свой защищенный паролем PEM-файл, и он просит меня ввести пароль перед расшифровкой и SSH-вводом.
Я нашел это: https://martin.kleppmann.com/2013/05/24/improving-security-of-ssh-private-keys.html
Который говорит мне использовать эту команду
ssh-keygen -t rsa -N 'super secret passphrase' -f test_rsa_key
Но полученный зашифрованный файл (который имеет правильный заголовок, который я ищу), похоже, не работает. Я получаю " разрешение отказано (publickey)."когда я пытаюсь ssh, используя этот зашифрованный файл pem. Я могу зайти через SSH с незашифрованный файл PEM.1 ответ:
Это происходит потому, что команда, которую вы используете, генерирует новую пару ключей вместо защиты существующего закрытого ключа.
Попробуйте использовать
-p
Вариантssh-keygen
Он запросит у вас пароль и защитит ваш закрытый ключ.ssh-keygen -p -f my_private_key
Enter new passphrase (empty for no passphrase): Enter same passphrase again: Your identification has been saved with the new passphrase.
Теперь, если вы используете
my_private_key
вssh
, он запросит пароль, и это будет успешно.-p Requests changing the passphrase of a private key file instead of creating a new private key. The program will prompt for the file containing the private key, for the old passphrase, and twice for the new passphrase.