2017-01-10 2 views
4

Я использовал puttygen.exe в Windows 10 для создания закрытых и открытых ключей. Я сохранил эти ключи в C: \ Users \ Alexander \ .ssh \Git клон. key_load_public: недопустимый формат Permission denied (publickey)

Открытый ключ был добавлен в удаленное репо (не у меня. У меня нет доступа).

Тогда я использовал команду в Git Bash:

git clone [email protected]:project_name.git 

И я получил сообщение об ошибке:

key_load_public: invalid format 
Permission denied (publickey). 
fatal: Could not read from remote repository. 

Пример ключей (сгенерированный для только для примера)

id_rsa.ppk

PuTTY-User-Key-File-2: ssh-rsa 
Encryption: none 
Comment: rsa-key-20170110 
Public-Lines: 6 
AAAAB3NzaC1yc2EAAAABJQAAAQEAx0UhtZcgUT5XpoNlcoVFGHbArEsARQVCv5m0 
TRh90Xq15gxOvL+x7I0B29xOuOP054RtQaOzHqnKUzpMdrIoZFkYEYJ11p42kC05 
PVR/CwtKBuONJZzoIveJlNG1IhbC3G8DMZD5j68T5OVbCqftHMIBe4CTr7TewJ9T 
/lmSZPytWXk/Xtcvn1i1TQZS2ShtSNOwtx77fLzkVmC6F4uM2JgJ9bSM2xQZTX/j 
DYZTtoEsmyBadANAEZx4kQAoITwxXVRPBPJnB74EdSMXNhrDBJ+sZSEy7kxmc3a/ 
UK6CzdN3wiEMd/Bb1nuzR2cpWrWhniG66lnOTJb3sF8iiVtw7Q== 
Private-Lines: 14 
AAABAEtmRBsyQ5RcxzgWCrW14sr8gEExIrJVBH/ZSyQXGtmkDXmjysP1gZfGpsHk 
qCpIaoEdWcXPPNsrfPzloGRDaTq57W5otvdCyImUkjLhs4ejaB5IQz6qEqVya2i+ 
DS9+O+S0YhLBO9WAhBFrijtiIl3oivB11wQ2mXlRCwZLZ9MugQ3rPfS0O/E2asrO 
+MyiR2uv84lVb2wUT0Be3eeubnT2Qp8CoX3qV93LwBM053tepmD0jtSBsaXepADw 
mdjBfIkUm+z/69PKtsEoYtIRe5DQRGQhUrwZasJnrfwAvdkr56NKM/rEL0ocUPDX 
pXQalD88fKHKog5pr25c8aImklUAAACBAPmqhoRBWy+VJxgZ2BeMYv2PbmQCrQyp 
ZVqua9byU59cANjarPcEb1zSUVEJyO8KlTW1eiTeMrya3cdrqbk3Rhp8XgolRsrv 
ZK2rMQxP5nIoHyndtG1CCVqrWnwjIsb4r4cq2aBaUWjQJ+ofpiUHVkHev+h58zEA 
zpDZs0Jrv5n7AAAAgQDMU04pqQ1hnv050gs8C2Gy+DjbW8b/NbQl64x0HFik/lWB 
CRLrCd341ZQWY0PcU5ZjwNa8GwwJZPJI2bX84/a7dq2ENnT1+uYqpuK8lnPTcBDy 
WjlGcf/fWJyJpdLqqXkMZ7or4k9ReVIXz9A8xRkhGEH2xM8Vk2fyoLY88RFUNwAA 
AIA+zxdPdF8dPr8HwTJ5Pb0NQjl2likOxR24QmqxlCu/bD1p8R1tZzX5Jh2HP2on 
RO+KVLYHzNKqtKRZW/MHftYcm6AvYLhP7hxG/tFoNM9lEmsqdJenxaWP745LP9Pc 
k3qh7kC4KfTXyfgsd+C6dXzqhAokz81zL41QtyJxlQzR2w== 
Private-MAC: ce79771084cbabf61fc2bf3b1403e42a9957e2af 

id_rsa.pub

---- BEGIN SSH2 PUBLIC KEY ---- 
Comment: "rsa-key-20170110" 
AAAAB3NzaC1yc2EAAAABJQAAAQEAx0UhtZcgUT5XpoNlcoVFGHbArEsARQVCv5m0 
TRh90Xq15gxOvL+x7I0B29xOuOP054RtQaOzHqnKUzpMdrIoZFkYEYJ11p42kC05 
PVR/CwtKBuONJZzoIveJlNG1IhbC3G8DMZD5j68T5OVbCqftHMIBe4CTr7TewJ9T 
/lmSZPytWXk/Xtcvn1i1TQZS2ShtSNOwtx77fLzkVmC6F4uM2JgJ9bSM2xQZTX/j 
DYZTtoEsmyBadANAEZx4kQAoITwxXVRPBPJnB74EdSMXNhrDBJ+sZSEy7kxmc3a/ 
UK6CzdN3wiEMd/Bb1nuzR2cpWrWhniG66lnOTJb3sF8iiVtw7Q== 
---- END SSH2 PUBLIC KEY ---- 

Что может быть неправильным здесь?

ответ

16

Git использует OpenSSH и не поддерживает форматы ключей PuTTY. Вам нужно преобразовать его в формат OpenSSH. Это было описано в СЦ документации, теперь в ответ на Not able to add SSH key in Jenkins configuration:

  • Открыть PuTTYgen
  • Нажмите кнопку Загрузить
  • Загрузите секретный ключ
  • Перейти к Конверсии ->Экспорт OpenSSH и экспорт ваш личный ключ
  • Скопируйте ваш закрытый ключ в ~/.ssh/id_rsa
+5

Я сделал это. Но получил ту же ошибку. –

+0

Ну, вам, вероятно, придется переместить 'id_rsa.pub', потому что клиент не может его прочитать. – Jakuje

+0

Это не помогло. Я думаю, что сгенерированный открытый ключ недействителен для OpenSSH. Он должен начинаться с 'ssh-rsa AAAAB3NzaC1yc ...'. Но мой ключ начинается с некоторых комментариев, и нет слов ssh-rsa. –

Смежные вопросы