gpg avvia gpg-agent su richiesta?


13

La pagina man degli gpg-agentstati:

   The agent is usualy started on demand by gpg,  gpgsm,  gpgconf  or
   gpg-connect-agent.   Thus there is no reason to start it manually.
   In case you want to use the included Secure Shell  Agent  you  may
   start the agent using:

     gpg-connect-agent /bye

   The usual way to run the agent is from the ~/.xsession file:

     eval $(gpg-agent --daemon)

Questo da un lato mi dice che "non c'è motivo di avviarlo manualmente" e dall'altro mi dice come avviarlo manualmente. - Ho frainteso qualcosa qui?

Sul mio sistema sembra che devo assolutamente avviarlo manualmente. In caso contrario, per esempio gpg-connect-agentsi lamenta: can't connect to the agent: IPC connect call failed. - Devo configurare qualcosa per gpg-connect-agentavviare l'agente come indicato nella pagina man?


Anche la pagina man di gpg-connect-agentdice:

   --agent-program file
          Specify the agent program to be started if none is running.

Tuttavia gpg-connect-agent --helpnon elenca questa opzione e il comando si lamenta anche se provo a usarla.

Sembra che la pagina man descriva un comando diverso o mi sono perso qualcosa di importante?


Il mio sistema è un Arch Linux attuale. (Stessa situazione su un'altra casella debian.)

Dettagli richiesti:

$ gpg --version
gpg (GnuPG) 2.0.22
libgcrypt 1.5.3
Copyright (C) 2013 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.

Home: ~/.gnupg
Supported algorithms:
Pubkey: RSA, ELG, DSA, ?, ?
Cipher: IDEA, 3DES, CAST5, BLOWFISH, AES, AES192, AES256, TWOFISH,
        CAMELLIA128, CAMELLIA192, CAMELLIA256
Hash: MD5, SHA1, RIPEMD160, SHA256, SHA384, SHA512, SHA224
Compression: Uncompressed, ZIP, ZLIB, BZIP2
$ gpg-connect-agent --version
gpg-connect-agent (GnuPG) 2.0.22
Copyright (C) 2013 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.

Home: ~/.gnupg
$ man gpg-connect-agent |grep -A1 agent-program
       --agent-program file
              Specify the agent program to be started if none is running.
$ gpg-connect-agent --agent-program foo
gpg-connect-agent: invalid option "--agent-program"
$ gpg-connect-agent /bye
gpg-connect-agent: can't connect to the agent: IPC connect call failed

Quale versione di gpg-agent e gpg-connect-agent stai usando?
Jenny D,

1
Si noti inoltre che esistono altri demoni portachiavi gpg. Ad esempio, gnome ha il portachiavi gnome, che gestisce le password generali di gpg, ssh e. Questi sono spesso molto meglio con cui lavorare poiché puoi avere una password per sbloccarli tutti e possono essere sbloccati automaticamente quando accedi.
Patrick,

Ho aggiunto dettagli concreti sopra. Sono a conoscenza del demone gnome-keyring, tuttavia non eseguo gnome su quella scatola. - La domanda al momento è se gpg è in grado di avviare il proprio demone su richiesta o meno.
michas,

Risposte:


5

Questa è una cattiva espressione nella pagina man. Immagino che significhi: "Non sei obbligato ad avviare gpg-agent manualmente". Questo ha senso perché GnuPG 2.x richiede gpg-agentmentre è facoltativo in 1.x

Quindi: "Quindi non c'è motivo di avviarlo manualmente" "... per far funzionare gli strumenti".

Ma: se si desidera che la funzione di memorizzazione nella cache sia gpg-agenteseguita come demone e quindi essere avviata prima degli strumenti, ovvero manualmente o da ~/.xsessionperché gli strumenti cercano la variabile di ambiente GPG_AGENT_INFOper trovare (giusto) in esecuzione gpg-agent. Se gli strumenti si avviano, gpg-agentsi gpg-agentesce all'uscita.

gpg-connect-agent /byepotrebbe essere un vero bug nella pagina man. AFAIK questo è usato per testare se gpg-agentè in esecuzione ma non per avviarlo. Non può nemmeno funzionare in questo modo poiché è obbligatoria la shell (più precisa: il processo principale per gli strumenti da avviare) per l'impostazione GPG_AGENT_INFO.

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.