Come posso disabilitare l'integrazione ssh di gnome-keyring?


10

Non voglio che gnome-keyring interferisca con il mio git commit, in parte perché blocca l'intero schermo mentre richiede una password, anche su KDE (anche se ora sono passato a GNOME). Mentre apprezzo la comodità di non dover mettere la mia passphrase SSH ogni volta, dover saltare da una finestra all'altra lo annulla personalmente. È solo una cosa di conforto: /

Ho provato git config --global --unset credential.helpere git config --system --unset credential.helper, ma sembrano non avere alcun effetto. Dato che ora sto usando GNOME, preferirei non rimuovere il portachiavi di gnome. C'è qualche altra opzione che posso fare? Sono attualmente su Ubuntu 14.10, dopo averlo fatto sia con Kubuntu che con Ubuntu GNOME. Grazie.

AGGIORNAMENTO 17 novembre 2014

Ciò apparentemente influisce su tutto l'SSH. Ho provato a farlo

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

ma non ha funzionato. Posso fare

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

una volta ogni sessione, ma vorrei mantenerlo permanente. Ancora in cerca...


Domande e risposte
gertvdijk,

Risposte:


10

Basta copiare il relativo .desktopfile da /etc/xdg/autostarta ~/.config/autostarte aggiungere Hidden=truead esso:

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

quindi ricaricare gnome-shell (premere Alt+ F2, quindi digitare re premere Enter).

Questa è l'unica soluzione user-friendly che ha funzionato per me (cioè non dover collegare il file .desktop a / dev / null o chmod 0al gnome-keyring-daemon). In effetti, il softlink a / dev / null ha smesso di funzionare per me in GNOME 3.16.

Il merito va a nus .


5
Sembra che questo non funzioni più nel 16.04. Perché sembra che ad ogni versione di Ubuntu venga reinventato un nuovo metodo per iniziare le cose? Che cosa è successo alla buona vecchia Xsession? :(
Phil Frost,

Qualcuno per favore lo convalidi per le versioni più recenti di Ubuntu / Debian / GNOME.
George Sovetov,

In Ubuntu 17.10 (GNOME Wayland), non è più possibile riavviare GNOME. Vedi superuser.com/q/1164174/174311 . Utilizzare gnome-keyring-daemon -r -c pkcs11,secretsper disabilitarlo nella sessione corrente.
George Sovetov,

Funziona ancora con Debian 9 (tratto).
Marc Wrobel,

2

Modo semplice e pulito per disabilitare solo il componente ssh-agent di gnome-kerying:

gconftool-2 --set --type bool /apps/gnome-keyring/daemon-components/ssh false

2
Questo non sembra funzionare, almeno non ancora. Richiede GNOME 3.14 o 3.16 o gnome-keyring-daemon 3.12+?
andlabs

3
Qualcuno sa qual è la versione di Ubuntu 16.04 del comando sopra?
Scott Stensland,

2

Non posso parlare di versioni di Ubuntu diverse da Trusty - e GNOME è un obiettivo così costante che puoi garantire che ogni versione sarà diversa - ma questo è ciò che ho scoperto per funzionare in modo più affidabile:

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

La sessione avviata in Unity, almeno, e molto probabilmente anche GNOME3, è strana: eseguirà gli script Upstart da /usr/share/upstart/sessions/e quindi eseguirà tutte le voci del desktop di avvio automatico sotto /etc/xdg/autostarte gnome-keyring, e molte altre cose sono in entrambi (e probabilmente esegue cose in /usr/share/upstart/xdg/autostart, anche, non ho la prova che).

La gnome-keyring-sshvoce upstart controllerà quella X-GNOME-Autostart-enabled=falseriga nella voce .desktop locale del sistema o dell'utente e tornerà indietro, quindi ssh-agentverrà eseguita la sessione standard . L'intero sistema gnome-keyring-sshverrà quindi avviato a /etc/xdg/autostartmeno che non si disponga di una voce corrispondente nell'avvio automatico locale dell'utente, nel qual caso verrà eseguito invece.

Un tempo era sufficiente solo per avere quella enable=falselinea nell'avvio automatico locale, ma qualche tempo fa (come in, da maggio 2016, oltre due anni nel periodo LTS di Trusty) quel comportamento è cambiato e hai bisogno di qualcosa che assomigli a una voce completa. Sto ancora indagando sul set preciso di chiavi necessario e responsabile dell'aggiornamento del pacchetto offensivo.

Il motivo per cui le persone di GNOME non si sono limitate al proxy con l'agente chiave OpenSSH è un'ipotesi di chiunque . Potresti suggerire che adottano un comportamento più sensato in questa voce di Bugzilla .


Questo collegamento sembra implicare che l'utilizzo di X-GNOME-Autostart-enabled = false è deprecato. In ogni caso sembra che la proprietà Hidden descritta nello standard di avvio automatico fornisca la stessa funzionalità. Usa nascosto = vero. gist.github.com/najamelan/b44e943145b03e018229
nomadrc

2

Finisco sempre per disinstallare gnome-keyring

sudo apt-get remove gnome-keyring

Risulta, se usi molte chiavi (più di tre) non puoi davvero accedere agli host che limita i tentativi a tre ... Inoltre, dai un gnome-keyringnome alle chiavi in ​​modo diverso rispetto a quando lo usi ssh-add, quindi non so quale passphrase usare .

La disinstallazione gnome-keyringpotrebbe danneggiare molte cose su GNOME, non lo saprei mentre uso Kubuntu. Su Kubuntu tutto ciò che scompare in aggiunta sono python-ubuntu-sso-cliente ubuntu-sso-client.


1
Scusa per il ritardo della risposta. Questo è quello che pensavo di aver fatto quando avevo Kubuntu (e ci è voluto un po 'per capirlo), ma ora non sono così sicuro. Per ora, però, dato il portachiavi è una parte di GNOME, rimuovendo tale rimuoverebbe ubuntu-gnome-desktope pochi altri componenti correlati ( oneconf, python-ubuntu-sso-client, seahorse, software-center, e ubuntu-sso-client, senza contare software che diventa candidati autoremove come risultato): / Grazie comunque; Eseguirò l'upgrade perché aiuterà gli utenti non GNOME che si chiudono accidentalmente in questa situazione come ho fatto io.
andlabs

0

Confermo che la sceneggiatura

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

risolve il problema in 16.04, amd64. Lo script può essere salvato come ukr.py, quindi chmod +x ukr.py, quindi aggiungere ukr.pycome applicazione di avvio in gnome-session-properties. Il modulo (aggiuntivo) gnomekeyringviene installato tramite

sudo apt-get install python-gnomekeyring

0

Il modo più semplice è solo quello di sostituire la sessione gnome-keyring-daemon esistente usando il comando:

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

Puoi vedere la mia risposta completa su questa discussione https://askubuntu.com/a/786722/556814

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.