Comment désactiver l'intégration de gnome-keyring ssh?

10

Je ne veux pas que gnome-keyring gêne mes commits git, en partie parce qu'il verrouille tout l'écran tout en demandant un mot de passe, même sur KDE (bien que je sois maintenant passé à GNOME). Bien que j'apprécie la commodité de ne pas avoir à saisir ma phrase secrète SSH à chaque fois, le fait de devoir sauter d'une fenêtre à l'autre l'annule personnellement. C'est juste une chose de confort: /

J'ai essayé git config --global --unset credential.helperet git config --system --unset credential.helper, mais ils semblent n'avoir aucun effet. Comme j'utilise maintenant GNOME, je préfère ne pas supprimer gnome-keyring. Y a-t-il une autre option que je peux faire? Je suis actuellement sur Ubuntu 14.10, après avoir fait cela à la fois avec Kubuntu et avec Ubuntu GNOME. Merci.

MISE À JOUR 17 novembre 2014

Cela affecte apparemment l'ensemble de SSH. J'ai essayé de faire

sudo rm /etc/xdg/autostart/gnome-keyring-ssh.desktop

Mais ça n'a pas marché. Je peux faire

gnome-keyring-daemon --replace -c pkcs11,secrets,gpg

une fois par session, mais j'aimerais que cela reste permanent. Toujours à la recherche...

andlabs
la source
Questions et réponses sur les raisons pour lesquelles les porte-clés GNOME se vissent
gertvdijk

Réponses:

10

Il vous suffit de copier le .desktopfichier correspondant de /etc/xdg/autostartvers ~/.config/autostartet d'y ajouter Hidden=true:

(cat /etc/xdg/autostart/gnome-keyring-ssh.desktop; echo Hidden=true) > ~/.config/autostart/gnome-keyring-ssh.desktop

puis rechargez gnome-shell (appuyez sur Alt+ F2, puis tapez ret appuyez sur Enter).

Ceci est la seule solution conviviale qui a travaillé pour moi (c. -à ne pas avoir à le créez un lien symbolique .desktop fichier / dev / null ou chmod 0la gnome-keyring-daemon). En fait, le softlink vers / dev / null a cessé de fonctionner pour moi dans GNOME 3.16.

Le crédit revient à nus .

mmoya
la source
5
Il semble que cela ne fonctionne plus en 16.04. Pourquoi semble-t-il qu'avec chaque version d'Ubuntu, une nouvelle méthode de démarrage est réinventée? Qu'est-il arrivé au bon vieux Xsession? :(
Phil Frost
Quelqu'un veuillez le valider pour les nouvelles versions d'Ubuntu / Debian / GNOME.
George Sovetov
Dans Ubuntu 17.10 (GNOME Wayland), il n'est plus possible de redémarrer GNOME. Voir superuser.com/q/1164174/174311 . Utilisez gnome-keyring-daemon -r -c pkcs11,secretspour le désactiver dans la session en cours.
George Sovetov le
Cela fonctionne toujours avec Debian 9 (stretch).
Marc Wrobel
2

Belle façon propre de désactiver uniquement le composant ssh-agent de gnome-kerying:

gconftool-2 --set --type bool /apps/gnome-keyring/daemon-components/ssh false
Oren Tirosh
la source
2
Cela ne semble pas fonctionner, du moins pas encore. Faut-il GNOME 3.14 ou 3.16 ou gnome-keyring-daemon 3.12+?
andlabs
3
Quelqu'un sait-il ce qu'est la version ubuntu 16.04 de la commande ci-dessus?
Scott Stensland
2

Je ne peux pas parler des versions d'Ubuntu autres que Trusty - et GNOME est une cible mobile si constante que vous pouvez garantir que chaque version sera différente - mais c'est ce que j'ai trouvé pour fonctionner de la manière la plus fiable:

mkdir -p ~/.config/autostart
cp /etc/xdg/autostart/gnome-keyring-ssh.desktop ~/.config/autostart/
echo "X-GNOME-Autostart-enabled=false" >> ~/.config/autostart/gnome-keyring-ssh.desktop

Le démarrage de la session sous Unity, au moins, et probablement GNOME3, aussi, est bizarre: il exécutera les scripts Upstart /usr/share/upstart/sessions/puis exécutera toutes les entrées de bureau à démarrage automatique sous /etc/xdg/autostartet gnome-keyring, et beaucoup d'autres choses sont dans les deux (et il exécute probablement des choses dans /usr/share/upstart/xdg/autostart, aussi, je ne l' ai pas testé cela).

L' gnome-keyring-sshentrée parvenu vérifiera cette X-GNOME-Autostart-enabled=falseligne dans l'entrée système ou utilisateur .desktop locale et reviendra, puis la ssh-agentsession standard s'exécutera. L'ensemble du système gnome-keyring-sshdémarrera alors à /etc/xdg/autostartmoins que vous n'ayez une entrée correspondante dans votre démarrage automatique local de l'utilisateur, auquel cas il sera exécuté à la place.

enable=falseAuparavant, il suffisait simplement d'avoir cette ligne dans le démarrage automatique local, mais récemment (comme depuis mai 2016, plus de deux ans après la période LTS de Trusty), ce comportement a changé et vous avez besoin de quelque chose qui ressemble à une entrée complète. J'étudie toujours le jeu de clés précis nécessaire et la mise à jour du package incriminé responsable.

Pourquoi les gens de GNOME n'a pas seulement proxy par l'agent clé OpenSSH est je vous laisse deviner . Vous pourriez suggérer qu'ils adoptent un comportement plus sensé dans cette entrée Bugzilla .

John Morton
la source
Ce lien semble impliquer que l'utilisation de X-GNOME-Autostart-enabled = false est déconseillée. Dans tous les cas, il semble que la propriété Hidden décrite dans la norme de démarrage automatique offre la même fonctionnalité. Utilisez Hidden = true. gist.github.com/najamelan/b44e943145b03e018229
nomadrc
2

Je finis toujours par désinstaller gnome-keyring

sudo apt-get remove gnome-keyring

Il s'avère que si vous utilisez plusieurs clés (plus de trois), vous ne pouvez pas vraiment vous connecter à des hôtes qui limitent les tentatives à trois ... Aussi, gnome-keyringnommez les clés différemment que lors de l'utilisation ssh-add, donc je ne sais pas quelle phrase secrète utiliser .

La désinstallation gnome-keyringpeut casser beaucoup de choses sur GNOME, je ne sais pas car j'utilise Kubuntu. Sur Kubuntu tout ce qui disparaît en plus sont python-ubuntu-sso-clientet ubuntu-sso-client.

kaleissin
la source
1
Désolé pour la réponse tardive. C'est ce que je pensais faire quand j'ai eu Kubuntu (et il a fallu un certain temps pour le comprendre), mais maintenant je ne suis pas aussi sûr. Pour l' instant, cependant, puisque le trousseau de clés est une partie de GNOME, la suppression de cette supprimerait ubuntu-gnome-desktopet quelques autres composants connexes ( oneconf, python-ubuntu-sso-client, seahorse, software-centeret ubuntu-sso-client, pas de logiciel de comptage qui devient candidats Autoremove suite): / Merci cependant; Je voterai positivement car cela aidera les utilisateurs non-GNOME qui se retrouvent accidentellement dans cette situation comme moi.
andlabs
0

Je confirme que le script

#!/usr/bin/python
import gnomekeyring
gnomekeyring.unlock_sync(None,"mypassword");

résout le problème en 16.04, amd64. Le script peut être enregistré sous ukr.py, puis chmod +x ukr.py, puis ajouté en ukr.pytant qu'application de démarrage dans gnome-session-properties. Le module (supplémentaire) gnomekeyringest installé via

sudo apt-get install python-gnomekeyring
dzmanto
la source
0

Le moyen le plus simple consiste simplement à remplacer la session gnome-keyring-daemon existante à l'aide de la commande:

gnome-keyring-daemon --replace --daemonize --components=pkcs11,secrets,gpg

Vous pouvez voir ma réponse complète sur ce fil /ubuntu//a/786722/556814

rioastamal
la source