5

Я сгенерировал пару ключей с помощью ssh-keygen . Теперь я хочу использовать ту же пару ключей для приложений на базе PuTTY.

Поскольку я работаю в среде CLI, я хочу преобразовать ключ в формат .ppk из этой среды.

Видимо, вы можете использовать puttygen openssh_private_key -o output_filename.ppk в UNIX-подобных средах. Но версия puttygen Windows просто загрузит ключ и предложит вам использовать графический интерфейс для экспорта ключа.

Пакетный режим для Windows PuTTYgen предполагает, что это в настоящее время просто невозможно, по крайней мере, с puttygen . Я бы с радостью принял и вариант, который использует другие средства, хотя.

Как я могу преобразовать ключ из командной строки?

3 ответа3

7

WinSCP 5.9 и новее поддерживает преобразование в командной строке закрытых ключей из формата OpenSSH (или ssh.com) в формат PuTTY .ppk.

Используйте ключ /keygen :

winscp.com /keygen mykey.pem /output=mykey.ppk

Или вы можете скомпилировать / запустить путтиген командной строки puttygen с помощью Cygwin.


Или создайте свой собственный инструмент из кода PuTTY. Это с открытым исходным кодом. Это должно быть довольно легко.

Используйте import_ssh2 для загрузки .pem:

struct ssh2_userkey *import_ssh2(const Filename *filename, int type,
             char *passphrase, const char **errmsg_p)

Используйте ssh2_save_userkey чтобы сохранить его как .ppk:

int ssh2_save_userkey(const Filename *filename, struct ssh2_userkey *key,
          char *passphrase)
3

Если вы работаете в Linux или генерируете там свой ключ (или, может быть, вы можете?) тогда вы можете использовать

puttygen -t rsa -C "my home key" -o mykey.ppk

В противном случае, если вы находитесь в Windows, я не вижу, как вы можете это сделать, кроме генерации ключа на другом компьютере.

3

ПРИМЕЧАНИЕ: OP требует командной строки. Этот ответ использует графическое приложение ... Оставим здесь ответ на всякий случай, если он будет полезен.

Существует, возможно, более простое решение.

1) Загрузите (если у вас его еще нет) приложение PuTTY Key Generator (PuTTYgen), перейдя по ссылке здесь или здесь.

2) Откройте PuTTYgen

3) Нажмите «Конверсии», затем нажмите «Импорт»

4) Найдите файл ключа, затем нажмите «Открыть».

Теперь вы можете сохранить свой ключ в виде файла PPK, нажав кнопку Сохранить закрытый ключ

Вы также можете сохранить открытую версию своего ключа, нажав кнопку Сохранить открытый ключ.

https://devops.profitbricks.com/tutorials/use-ssh-keys-with-putty-on-windows/

https://kb.site5.com/shell-access-ssh/how-to-convert-ssh-keys-to-ppk-format/

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .