PuTTyGen- Не удалось загрузить закрытый ключ

PuTTyGen- Не удалось загрузить закрытый ключ

Шаг 1: Генерация ключа SSH

1. В командной строке введите ssh-keygen. (Если в командной строке вы получите сообщение об ошибке, проверьте, является ли C:\Program Files\Git\usr\bin частью вашего пути) Команда предложит вам указать файл для сохранения ключа.

  1. Нажмите Enter, чтобы принять ключ и путь по умолчанию, /c/Users//.ssh/id_rsa.

  2. При появлении соответствующего запроса введите и повторите ввод парольной фразы.

  3. Команда создает вашу идентификацию по умолчанию с ее открытым и закрытым ключами.

2.Настройка tortoise-git

  1. Загрузите сгенерированный ранее ключ ssh (id_rsa). Вам будет предложено выбрать файл. (путь по умолчанию для ключей ssh ​​C:\Users\.ssh)

  2. При загрузке он запросит парольную фразу.. введите парольную фразу, которую вы дали ранее. После этого шага putty загрузит сертификат.

  3. После загрузки сертификата нажмите кнопку «Сохранить закрытый ключ». Будет предложено выбрать папку, в которой будет сохранен файл. Лучше сохранить его в той же папке, что и папка ключа ssh (C:\Users\.ssh). Также укажите имя файла.

  4. Теперь вам нужно настроить TortoiseGit с помощью сгенерированного файла ключа. Щелкните правой кнопкой мыши по папке репозитория и выберите TortoiseGit>Настройки.

  5. На экране настроек выберите Git > Remote.

  6. На удаленном экране выберите источник. URL-адрес и другие поля будут заполнены.

  7. Нажмите на многоточие напротив поля Putty Key и выберите файл закрытого ключа, сгенерированный с помощью puttygen.

Формат файла закрытого ключа:

----НАЧАЛО ЧАСТНОГО КЛЮЧА RSA------

xxxxxxxyyxyyxyxyxy

----КОНЕЦ ЧАСТНОГО КЛЮЧА RSA------- введите описание изображения здесь

Gitsetting

Ошибка была

Не удалось загрузить закрытый ключ (не удалось открыть файл)

введите описание изображения здесь Файл имеет разрешение на чтение и запись. Помимо этого, у закрытого ключа есть парольная фраза, я думаю, что это может быть причиной ошибки.

Конфигурация открытого ключа в моей учетной записи Bitbucket, Настройка открытого ключа

решение1

Если я правильно вас понял, вы не использовали , puttygenчтобы создать пару ключей, вместо этого вы использовали , ssh-keygenчтобы сгенерировать пару ключей с парольной фразой, затем вы загрузили этот закрытый ключ в Putty и сохранили его как Putty.ppkи получили ошибку Couldn't load Private Key (cannot open file).

В каком формате был создан ваш закрытый ключ ( id_rsa)?

Если открыть его в текстовом файле, то первый будет похож на этот:

-----BEGIN RSA PRIVATE KEY-----

или это выглядит так:

ssh-rsa AWEdxRASFLMAF......

Похоже, проблема в том, что вы загружаете открытый ключ вместо закрытого ключа для сохранения в виде .ppk. На показанном вами снимке экрана есть 2 файла: id_rsaи id_rsa, но один из них — файл закрытого ключа, а другой — открытый ключ. Вероятно, вы выбрали открытый ключ, если не было показано никаких расширений файлов. Попробуйте повторно импортировать ключ, выбрав файл id_rsaс меткой времени 05-03-2018 12:36на снимке экрана выше.

Убедитесь, что первая строка в этом файле:

-----BEGIN RSA PRIVATE KEY-----

прежде чем вы это сделаете.

решение2

Дело в том, что ваш PuTTy использует ssh v2 (и это хорошо), но ваш ключ, вероятно, сгенерирован для версии 3.

Вот шаги для проверки: введите описание изображения здесь

введите описание изображения здесь

После нажатия кнопки ОК сгенерируйте новый ключ и попробуйте загрузить его. Мне помогло.

решение3

У меня было такое же сообщение, и для меня проблема была в том, что у меня было две версии putty. Я использую расширения git, которые можно установить, чтобы включить putty (это 32-битная версия putty, которая находится в каталоге программных файлов git extensions). Я также установил putty сам.

Я сгенерировал ключ с 64-битной установкой putty и пытался использовать этот ключ с 32-битной версией. Я исправил проблему, изменив путь к putty в параметрах расширений git.

изображение окна настроек расширений git для указания расположения putty

решение4

В одной из версий puttygen у меня было точно такое же сообщение об ошибке («неожиданный конец файла»). В последней (0.76) puttygen просто завис на неопределенное время, пытаясь импортировать мой ключ, и мне пришлось завершить процесс.

Поскольку я не смог найти ни одного ответа, который бы мне помог, а я разработчик на C++, я решил заняться отладкой puttygen, поскольку исходный код доступен (используется версия 0.76).

Проблема для меня была в том, что каким-то образомв конце моего закрытого ключа был лишний пробел, иputtygen не может с этим справиться!

Итак, вместо последней строки моего файла закрытого ключа, заканчивающейся на

" -----END RSA PRIVATE KEY-----"

это закончилось тем, что

" -----END RSA PRIVATE KEY-----"

Puttygen запрограммирован на продолжение сканирования файла в поисках дополнительной ключевой информации до тех пор, пока не найдет строку, которая начинается с « -----END» и заканчивается на « PRIVATE KEY-----», и он вообще не обрабатывает EOF (конец файла) должным образом!

Надеюсь, это кому-нибудь поможет, меня эта проблема свела с ума!

Связанный контент