Git via ssh não encontrando automaticamente a chave após a atualização para 16.04

3

O problema

Eu instalei recentemente o Kubuntu 16.04.2 no meu computador. Desde então, não consigo mais usar minhas chaves ssh para acessar os repositórios bitbucket e github. No sistema antigo (Ubuntu 14.04) apareceu um pop-up com o título "Desbloquear chave privada" para o primeiro uso da chave (pedindo minha senha) e eu estava definido para o resto da sessão.

Desde a atualização, recebo o seguinte erro:

$ git pull
Permission denied (publickey).
fatal: Could not read from remote repository.

Please make sure you have the correct access rights
and the repository exists.

Isso se deve ao fato de que a chave não foi adicionada ao ssh-agent (ainda). Eu posso fazer isso manualmente usando:

$ ssh-add ~/.ssh/my_key
Enter passphrase for .ssh/my_key:

que é uma solução alternativa.

Pergunta

Embora a solução alternativa acima possa ser útil e haja opções para automatizá-la (consulte o link abaixo), eu preferiria ter a funcionalidade antiga de volta onde sou automaticamente consultado sobre minha frase de acesso no primeiro uso.

O que eu poderia (meu sistema) estar ausente para que isso funcione? Eu não sou 100% sobre quais partes / programas estão envolvidos.

Informações adicionais

  • Não tenho certeza se isso é relevante, mas estou usando o LDAP, então mantive o conteúdo da minha pasta pessoal quando movi do Ubuntu 14.04 (com Unity) para 16.04 (com o KDE).

  • Para as minhas chaves de criptografia de e-mail, o comportamento não mudou e me pedem a senha por meio de pop-up.

  • Existe outra questão que lida com um problema similar. Isso, no entanto, lida com uma versão diferente e tem um objetivo diferente (eles fazem funcionar no console, eu gostaria de meu pop-up de volta).

por m00am 28.06.2017 / 11:28

2 respostas

3

Como já foi dito, adicione

IdentityFile ~/.ssh/my_key
AddKeysToAgent yes

para o seu ~/.ssh/config para alcançar um comportamento semelhante.

  

Se eu adicionar ( AddKeysToAgent yes ) à minha configuração ssh local ( ~/.ssh/config ), as chaves também serão salvas. No entanto, a consulta está no terminal, o que por si só não é ruim, mas eu gostaria de entender como recuperar esse pop-up.

O pop-up no Ubuntu antigo vinha de gnome-keyring , onde você guardava sua chave. Obviamente não está na versão do KDE do Ubuntu.

Não existe uma maneira simples de obter o mesmo prompt do OpenSSH puro. Mas você pode tentar experimentar o KWallet, que pode ter uma funcionalidade semelhante.

    
por Jakuje 28.06.2017 / 12:57
0

Os nomes de arquivos padrão dos arquivos de identidade são os seguintes:

#   IdentityFile ~/.ssh/identity
#   IdentityFile ~/.ssh/id_rsa
#   IdentityFile ~/.ssh/id_dsa
#   IdentityFile ~/.ssh/id_ecdsa
#   IdentityFile ~/.ssh/id_ed25519

Adicione seu próprio arquivo ao /etc/ssh/ssh_config ou renomeie-o para fazer o truque.

    
por Ziazis 28.06.2017 / 11:32