Wie deaktiviere ich die Integration von Gnome-Keyring-SSH?

10

Ich möchte nicht, dass der Gnome-Schlüsselring meinen Git-Commits im Wege steht, auch weil er den gesamten Bildschirm sperrt, während er nach einem Passwort fragt, selbst bei KDE (obwohl ich jetzt zu GNOME gewechselt bin). Ich schätze zwar die Bequemlichkeit, nicht jedes Mal meine SSH-Passphrase eingeben zu müssen, aber wenn ich von Fenster zu Fenster springen muss, wird dies persönlich abgebrochen. Es ist nur eine Trostsache: /

Ich habe es versucht git config --global --unset credential.helperund git config --system --unset credential.helper, aber sie scheinen keine Wirkung zu haben. Da ich jetzt GNOME verwende, möchte ich den Gnome-Schlüsselring lieber nicht entfernen. Gibt es eine andere Option, die ich tun kann? Ich bin derzeit auf Ubuntu 14.10, nachdem ich dies sowohl mit Kubuntu als auch mit Ubuntu GNOME getan habe. Vielen Dank.

UPDATE 17. November 2014

Dies betrifft anscheinend die gesamte SSH. Ich habe es versucht

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

aber das hat nicht funktioniert. Ich kann

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

einmal pro Sitzung, aber ich möchte das dauerhaft halten. Immer noch suchend...

andlabs
quelle
Verwandte Fragen und Antworten dazu,
gertvdijk

Antworten:

10

Kopieren Sie einfach die entsprechende .desktopDatei von /etc/xdg/autostartbis ~/.config/autostartund fügen Sie Hidden=truesie hinzu:

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

Laden Sie dann die Gnome-Shell neu (drücken Sie Alt+ F2, geben Sie ein rund drücken Sie Enter).

Dies ist die einzige benutzerfreundliche Lösung , die für mich funktioniert hat (dh die .desktop- Datei muss nicht mit / dev / null oder chmod 0the verknüpft werden gnome-keyring-daemon). Tatsächlich funktionierte der Softlinking zu / dev / null in GNOME 3.16 nicht mehr für mich.

Kredit geht an nus .

mmoya
quelle
5
Es scheint, dass dies in 16.04 nicht mehr funktioniert. Warum scheint es, dass mit jeder Ubuntu-Version eine neue Methode zum Starten neu erfunden wird? Was ist mit der guten alten Xsession passiert? :(
Phil Frost
Bitte validieren Sie es für neuere Ubuntu / Debian / GNOME-Versionen.
George Sovetov
In Ubuntu 17.10 (GNOME Wayland) ist es nicht mehr möglich, GNOME neu zu starten. Siehe superuser.com/q/1164174/174311 . Verwenden Sie gnome-keyring-daemon -r -c pkcs11,secretsdiese Option, um es in der aktuellen Sitzung zu deaktivieren.
George Sovetov
Es funktioniert immer noch mit Debian 9 (Stretch).
Marc Wrobel
2

Schöne, saubere Möglichkeit, nur die ssh-agent-Komponente von gnome-kerying zu deaktivieren:

gconftool-2 --set --type bool /apps/gnome-keyring/daemon-components/ssh false
Oren Tirosh
quelle
2
Das scheint nicht zu funktionieren, zumindest noch nicht. Benötigt es GNOME 3.14 oder 3.16 oder Gnome-Keyring-Daemon 3.12+?
andlabs
3
Weiß jemand, was die Ubuntu 16.04-Version des obigen Befehls ist?
Scott Stensland
2

Ich kann nicht für andere Ubuntu-Versionen als Trusty sprechen - und GNOME ist ein sich ständig änderndes Ziel, sodass Sie garantieren können, dass jede Version anders sein wird -, aber ich habe festgestellt, dass dies am zuverlässigsten funktioniert:

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

Zumindest der Start der Sitzung unter Unity und wahrscheinlich auch GNOME3 ist seltsam: Es werden Upstart-Skripte aus /usr/share/upstart/sessions/und dann alle Autostart-Desktop-Einträge unter /etc/xdg/autostartund ausgeführt gnome-keyring, und viele andere Dinge sind in beiden enthalten (und es werden wahrscheinlich Dinge ausgeführt auch in /usr/share/upstart/xdg/autostart; das habe ich nicht getestet).

Der gnome-keyring-sshUpstart-Eintrag prüft diese X-GNOME-Autostart-enabled=falseZeile entweder im system- oder benutzerlokalen .desktop-Eintrag und zieht sich zurück. Anschließend wird die Standardsitzung ssh-agentausgeführt. Das System gnome-keyring-sshwird dann gestartet, es /etc/xdg/autostartsei denn, Sie haben einen passenden Eintrag im lokalen Autostart Ihres Benutzers. In diesem Fall wird dieser stattdessen ausgeführt.

Früher war es genug, nur diese enable=falseZeile im lokalen Autostart zu haben, aber irgendwann vor kurzem (wie seit Mai 2016, über zwei Jahre in der LTS-Periode von Trusty) hat sich dieses Verhalten geändert, und Sie benötigen etwas, das einem vollständigen Eintrag ähnelt. Ich untersuche immer noch den genauen Satz der erforderlichen Schlüssel und das dafür verantwortliche Update des betreffenden Pakets.

Warum die GNOME-Leute nicht nur den OpenSSH-Schlüsselagenten vertreten, ist unklar . Vielleicht möchten Sie vorschlagen, dass sie in diesem Bugzilla-Eintrag ein vernünftigeres Verhalten annehmen .

John Morton
quelle
Dieser Link scheint zu implizieren, dass die Verwendung von X-GNOME-Autostart-enabled = false veraltet ist. In jedem Fall sieht es so aus, als ob die im Autostart-Standard beschriebene Hidden-Eigenschaft dieselbe Funktionalität bietet. Verwenden Sie Hidden = true. gist.github.com/najamelan/b44e943145b03e018229
nomadrc
2

Am Ende deinstalliere ich immer den Gnome-Schlüsselring

sudo apt-get remove gnome-keyring

Wenn Sie viele Schlüssel (mehr als drei) verwenden, können Sie sich nicht wirklich bei Hosts anmelden, wodurch die Anzahl der Versuche auf drei begrenzt wird. Außerdem werden gnome-keyringdie Schlüssel anders benannt als bei der Verwendung ssh-add, sodass ich nicht weiß, welche Passphrase verwendet werden soll .

Die Deinstallation gnome-keyringkönnte eine Menge Probleme mit GNOME verursachen. Ich würde es nicht wissen, wenn ich Kubuntu verwende. Auf Kubuntu verschwinden nur noch python-ubuntu-sso-clientund ubuntu-sso-client.

Kaleissin
quelle
1
Entschuldigung für die späte Antwort. Das dachte ich mir, als ich Kubuntu hatte (und es dauerte eine Weile, bis ich es herausgefunden hatte), aber jetzt bin ich mir nicht so sicher. Obwohl, da der Schlüsselbund als jetzt, ist ein Teil von GNOME, dass das Entfernen würde entfernen ubuntu-gnome-desktopund einige andere verwandten Komponenten ( oneconf, python-ubuntu-sso-client, seahorse, software-center, und ubuntu-sso-client, keine Software zu zählen , die autoremove Kandidaten als Ergebnis wird): / Danke obwohl; Ich werde upvoten, weil es Nicht-GNOME-Benutzern hilft, die versehentlich in dieser Situation landen, wie ich es getan habe.
andlabs
0

Ich bestätige das Skript

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

behebt das Problem in 16.04, amd64. Das Skript kann gespeichert werden ukr.py, dann chmod +x ukr.py, fügen Sie dann ukr.pyals Startanwendung in gnome-session-properties. Das (zusätzliche) Modul gnomekeyringwird über installiert

sudo apt-get install python-gnomekeyring
dzmanto
quelle
0

Der einfachste Weg ist, die vorhandene Gnome-Keyring-Daemon-Sitzung mit dem folgenden Befehl zu ersetzen:

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

Sie können meine vollständige Antwort auf diesem Thread /ubuntu//a/786722/556814 sehen

Rioastamal
quelle