При подключении к удаленному SSH хосту из Windows с помощью клиента PuTTY могут появляться ошибки о несовместимости форматов ключа:
Unable to use key file (OpenSSH SSH-2 private key (old PEM format)) Unable to use key file (OpenSSH SSH-2 private key (new format))
PuTTY не поддерживает формат SSH ключей, которые созданы с помощью ssh-keygen
.
Для решения проблемы нужно сконвертировать ваш SSH ключ в формат PuTTY. Для этого используется утилита PuTTYGen.
- Запустите
puttygen.exe
; - Выберите Conversions -> Import key и укажите файл с вашим приватным RSA ключом;
- Затем нажмите Save private key и сохраните ключ в формате .ppk (если нужно, можете задать пароль защиты ключа);
- Теперь запустите клиент PuTTY, перейдите в раздел Connection -> SSH -> Auth. Выберите ваш ppk файл с ключом в поле Private key file for authentication. под
- Попробуйте подключиться к удаленному SSH хосту и убедитесь, что ошибка Unable to use key file исчезла.
В некоторых случаях при подключении к хосту с SSH ключом PuTTY может вернуть ошибку:
Сouldn't load private key - Putty key format too new.
Обычно это означает, что вы сгенерировали ключ для SSH protocol 3 и пытаетесь подключиться к хосту по SSH 2. Форматы ключей SSH-1, SSH-2 и SSH-3 отличаются.
Чтобы исправить проблему, попробуйте изменить предпочтительную версию SSH в настройках PuTTY.
Или вы можете изменить формат ключа в PuTTYGen:
- Загрузите ваш ключ и выберите Key -> Parameters for saving key files
- Измените версию в опции PPK file version -> 2
- Сохраните ваш файл PPK и проверьте подключение к хосту.