Erro no Git negado (chave pública)

6

Eu tenho conectado muitas vezes ao github e sei como gerar chaves ssh e colocar as configurações de id_rsa.pub no github. Mas por algum motivo com esta instalação não consigo conectá-lo. Eu só estou tentando clonar um repositório privado para um novo servidor, mas quando eu o clone eu recebo:

Permission denied (publickey). fatal: The remote end hung up unexpectedly

Se eu correr:

ssh -T [email protected]

Diz-me que autentiquei com sucesso.

O que mais eu posso experimentar? Estou executando isso em uma pilha bitnami então talvez isso está causando problemas? Este é provavelmente o problema, eu não sei o que fazer sobre isso. Já existe um conjunto de chaves no diretório .ssh / authorized_keys. Eu deixei aqueles sozinhos, pois é assim que estou me conectando com putty / pagent. Coloquei as novas chaves em /.ssh e deixei as authorized_keys sozinhas. Qual seria a maneira correta de configurar isso? Devo apenas excluir os dois pares e começar de novo? Use as mesmas chaves para putty e github? Por que ainda autentico se houver algum problema?

    
por zac 20.01.2012 / 03:38

3 respostas

7

Já tentou criar um novo certificado SSH, ou seja, um par de chaves?

1 Gerar o par de chaves padrão:

$ ssh-keygen -t rsa -C "[email protected]"

Não use isso se você já tiver um certificado SSH.

2 Gerar pares de chaves adicionais:

$ ssh-keygen -t rsa -C "[email protected]"

3 Adicionar chaves não padrão

$ ssh-add ~/.ssh/id_rsa_seconduser
Enter passphrase for /Users/defaultuser/.ssh/id_rsa_seconduser: 
Identity added: /Users/defaultuser/.ssh/id_rsa_defaultuser  (/Users/defaultuser/.ssh/id_rsa_defaultuser)

4 Defina o arquivo de configuração do SSH ( ~/.ssh/config ) para que o SSH saiba qual chave deve ser usada para qual servidor:

Host github.com
  HostName github.com
  User git
  IdentityFile /Users/XXXUser/.ssh/id_rsa

Host github-client
  HostName github.com
  User git
  IdentityFile /Users/XXXUser/.ssh/id_rsa_XXXSECONDUSER

5 Certifique-se no arquivo .git/config do projeto Git associado à segunda conta de usuário no Github que você está usando o nome de host correto github-client mas não github.com :

[remote "origin"]
    fetch = +refs/heads/*:refs/remotes/origin/*
    url = git@github-client:foobarsomeuser/foobar.git
    
por 21.01.2012 / 04:24
0

Parece que sua chave pública está ausente ou você colocou uma chave pública incorreta no chaveiro. Verifique se o chaveiro existe em ~/.ssh . Difícil dizer sem mencionar o seu sistema operacional

There are already a set of keys in the .ssh/authorized_keys dir.

Eu acredito que estas são as chaves necessárias para o ssh no servidor Linux.

A melhor maneira seria regenerar um novo conjunto de chaves privadas / públicas para o github, adicionar o PK ao seu chaveiro do servidor Linux e colar a chave pública em contas do Github .

    
por 20.01.2012 / 03:50
0

Este é um bug em gnome-keyring-daemon no Ubuntu 14.04 LTS.

Veja: link

    
por 26.06.2017 / 06:52

Tags