ssh-agentes muy fácil de usar, lo inicio y agrego claves usando ssh-add keyfile. Después de matar el proceso ssh-agent, todos los archivos se han ido.
¿Cómo puedo obtener el mismo comportamiento con gpg-agent? El programa más cercano que encontré fue gpg-preset-passphrase. Pero mirando la página del manual degpg-agent , parece que se crea un directorio para almacenar claves privadas.
Podría estar equivocado, así que me pregunto cómo puedo configurar gpg-agentde tal manera que no se creen archivos / directorios. Si no es posible, otras sugerencias para hacer un gpg-agenttrabajo como ssh-agent+ también ssh-addserían bienvenidas. No estoy buscando soluciones GUI como Seahorse.

gpg-connect-agent?gpg-preset-passphrase. Corrígpg-connect-agent, obtuve un intérprete de comandos y ejecutésetkey IDOFMYPRIVATEKEYHEREseguido de unapreset_passphraseidentificación que resultó en "ERR 67108924 <GPG-agent> no compatible - no --allow-preset-passphrase"Respuestas:
Decidí echarle un vistazo a esto nuevamente y descubrí cómo funciona. GPG utiliza la terminología "caché" para almacenar contraseñas. Se pueden imponer dos restricciones al tiempo máximo de almacenamiento:
Además, existen dos variaciones para ambas restricciones, una para las claves GPG y otra para las claves SSH (si el soporte estaba habilitado).
Las entradas relevantes de la página del manual de
gpg-agent(1):Las frases de contraseña siempre se almacenan en caché (en la memoria, ¡no en el disco! Verificadas con un repositorio git de
$HOME), por lo que no hay una necesidad explícita de hacerlossh-add. Por ejemplo, firmar datos ficticios ya activa el caché:Para realizar cambios permanentes en la configuración de caché de gpg-agent, edite ~ / .gnupg / gpg-agent.conf` y agregue algo como:
Intenté habilitar el soporte del agente SSH especificando
enable-ssh-support, pero esto hace que el agente gpg le pida otra clave para cifrar la clave, y luego almacena su clave privada~/.gnupg/private-keys.d/. No va por mí, entonces me apegaré a un enfoque dual ssh-agent / gpg-agent.Algunos consejos extra:
max-cache-ttl-sshse puede especificar al agregar la clave, por ejemplo:ssh-add -t 600 ~/.ssh/id_rsaPara evitar almacenar la frase de contraseña GPG en el agente, desactive el agente. En las versiones más recientes de GPG, la opción
--no-use-agentse ignora, pero puede evitar que se use el agente borrando la variable de entorno relacionada. Algunas formas de hacerlo:fuente
gpg-agentactivo? (Verifique la lista de procesos, por ejemplo conps u -C gpg-agent). ¿El tiempo de espera de caché está configurado correctamente? Si lo usa para firmar (en oposición a la autenticación (SSH)), ¿estáignore-cache-for-signingdeshabilitada la opción?