web-dev-qa-db-fra.com

Git via ssh ne trouvant pas automatiquement la clé après la mise à jour vers 16.04

Le problème

J'ai récemment installé Kubuntu 16.04.2 sur mon ordinateur. Depuis lors, je ne peux plus utiliser mes clés ssh pour accéder aux référentiels bitbucket et github. Sur l'ancien système (Ubuntu 14.04), une fenêtre contextuelle intitulée "Déverrouiller la clé privée" est apparue lors de la première utilisation de la clé (demandant ma phrase secrète) et j'étais configurée pour le reste de la session.

Depuis la mise à jour, l'erreur suivante apparaît:

$ 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.

Cela est dû au fait que la clé n'a pas encore été ajoutée au ssh-agent. Je peux le faire manuellement en utilisant:

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

qui est une solution de contournement.

Question

Bien que la solution de contournement ci-dessus puisse faire l'affaire et qu'il existe des options pour l'automatiser (voir le lien ci-dessous), je préférerais retrouver l'ancienne fonctionnalité dans laquelle je suis automatiquement interrogé sur ma phrase secrète lors de la première utilisation.

Que pourrais-je (mon système) manquer pour que cela fonctionne? Je ne suis pas à 100% sur les parties/programmes impliqués.

Information additionnelle

  • Je ne sais pas si cela est pertinent, mais j'utilise LDAP. J'ai donc conservé le contenu de mon dossier de départ lorsque je passais d'Ubuntu 14.04 (avec Unity) à 16.04 (avec KDE).

  • Pour mes clés de chiffrement de courrier électronique, le comportement n'a pas changé et on me demande la phrase secrète via une fenêtre contextuelle.

  • Il y a ne autre question traitant d'un problème similaire. Cela concerne toutefois une version différente et a un objectif différent (ils le font fonctionner sur console, je voudrais ma pop-up de retour).

5
m00am

Comme déjà dit, ajoutez

IdentityFile ~/.ssh/my_key
AddKeysToAgent yes

à votre ~/.ssh/config pour obtenir un comportement similaire.

Si j'ajoute (AddKeysToAgent yes) à ma configuration ssh locale (~/.ssh/config), les clés sont également enregistrées. Cependant, la requête se trouve dans le terminal, ce qui en soi n'est pas mauvais, mais j'aimerais comprendre comment récupérer cette fenêtre contextuelle.

Le popup dans Ubuntu plus ancien venait de gnome-keyring, où vous aviez votre clé stockée. Ce n'est évidemment pas dans la version KDE d'Ubuntu.

Il n’existe pas de moyen simple d’obtenir le même message à partir du logiciel OpenSSH pur. Mais vous pouvez essayer d’expérimenter avec KWallet, qui pourrait avoir une fonctionnalité similaire.

3
Jakuje

Les noms de fichier par défaut pour les fichiers d'identité sont les suivants:

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

Ajoutez votre propre fichier au /etc/ssh/ssh_config ou renommez-le devrait faire l'affaire.

0
Ziazis