GNOME/Keyring (Español)

From ArchWiki
Jump to: navigation, search

Tango-preferences-desktop-locale.pngEste artículo o sección necesita ser traducido.Tango-preferences-desktop-locale.png

Notas: 2018-11: En fase de traducción. (Discusión en Talk:GNOME/Keyring (Español)#)
Estado de la traducción
Este artículo es una traducción de GNOME/Keyring, revisada por última vez el 2018-11-24. Si advierte que la versión inglesa ha cambiado puede ayudar a actualizar la traducción, bien por usted mismo o bien avisando al equipo de traducción.

GNOME Keyring (llavero de GNOME) es "una colección de componentes en GNOME que almacenan secretos, contraseñas, claves, certificados y los ponen a disposición de las aplicaciones".

Instalación

Cuando se utiliza GNOME, gnome-keyring se instala automáticamente como parte del grupo gnome. De lo contrario instale el paquete gnome-keyring. Instale libsecret para permitir que las aplicaciones usen sus llaveros. libgnome-keyring está en desuso, sin embargo, algunas aplicaciones pueden requerirlo.

Las utilidades adicionales relacionadas con GNOME Keyring incluyen:

  • secret-tool — Acceso a GNOME keyring (y cualquier otro servicio que implemente la API del servicio DBus Secret) desde la línea de órdenes.
https://wiki.gnome.org/Projects/Libsecret || libsecret
  • gnome-keyring-query — Proporciona una herramienta simple de línea de órdenes para consultar contraseñas del almacén de contraseñas del GNOME Keyring. (utiliza el obsoleto libgnome-keyring)
|| gnome-keyring-queryAUR
  • gkeyring — Consulta contraseñas desde la línea de órdenes. (utiliza el obsoleto libgnome-keyring)
https://github.com/kparal/gkeyring || gkeyringAUR, gkeyring-gitAUR

Administrar utilizando la GUI

Puede administrar los contenidos de GNOME Keyring utilizando Seahorse. Instálelo con el paquete seahorse.

Es posible dejar la contraseña de GNOME keyring en blanco o cambiarla. En Seahorse, en el menú desplegable "Ver", seleccione "Por llavero". En la pestaña Contraseñas, pulse con el botón derecho en "Contraseñas: iniciar sesión" y seleccione "Cambiar contraseña". Introduzca la contraseña anterior y deje vacía la nueva contraseña. Se le advertirá sobre el uso de almacenamiento no cifrado; continúe presionando "Usar almacenamiento no seguro".

Utilizando el llavero fuera de GNOME

Sin un gestor de pantalla

Inicio de sesión automático

Si está utilizando el inicio de sesión automático, puede desactivar el gestor de claves configurando una contraseña en blanco en el llavero de inicio de sesión.

Nota: En este caso las contraseñas se almacenan sin cifrar.

Inicio de sesión de consola

Cuando se utiliza el inicio de sesión basado en la consola, el demonio del llavero puede iniciarse mediante PAM o xinitrc. PAM también puede desbloquear el llavero automáticamente al iniciar sesión.

Método PAM

Inicie gnome-keyring-daemon desde /etc/pam.d/login:

Añada auth optional pam_gnome_keyring.so al final de la sección auth y session optional pam_gnome_keyring.so auto_start al final de la sección session.

/etc/pam.d/login
#%PAM-1.0
 
auth       required     pam_securetty.so
auth       requisite    pam_nologin.so
auth       include      system-local-login
auth       optional     pam_gnome_keyring.so
account    include      system-local-login
session    include      system-local-login
session    optional     pam_gnome_keyring.so auto_start

Para SDDM, edite en su lugar el archivo de configuración /etc/pam.d/sddm.

A continuación, para GDM, añada password optional pam_gnome_keyring.so al final de /etc/pam.d/passwd.

/etc/pam.d/passwd
#%PAM-1.0

#password	required	pam_cracklib.so difok=2 minlen=8 dcredit=2 ocredit=2 retry=3
#password	required	pam_unix.so sha512 shadow use_authtok
password	required	pam_unix.so sha512 shadow nullok
password	optional	pam_gnome_keyring.so
Nota:
  • Para utilizar el desbloqueo automático, se debe configurar la misma contraseña para la cuenta de usuario y el llavero.
  • Aún necesitarás el código de abajo en ~/.xinitrc Para exportar las variables de entorno requeridas.
Método xinitrc

Inicie gnome-keyring-daemon desde xinitrc:

~/.xinitrc
eval $(/usr/bin/gnome-keyring-daemon --start --components=pkcs11,secrets,ssh)
export SSH_AUTH_SOCK

Véase Xfce#SSH agents para utilizarlo en Xfce.

Si utiliza i3 y ssh no está mostrando la solicitud de contraseña, dando el siguiente error

sign_and_send_pubkey: signing failed: agent refused operation
Permission denied (publickey).

necesita añadir la variable de entorno DISPLAY a dbus-daemon en su .xinitrc, tal que así:

~/.xinitrc
dbus-update-activation-environment --systemd DISPLAY
eval $(/usr/bin/gnome-keyring-daemon --start --components=pkcs11,secrets,ssh)
export SSH_AUTH_SOCK

...
exec i3

Con un gestor de pantalla

Cuando se utiliza un gestor de pantalla, el llavero funciona de manera inmediata para la mayoría de los casos. Los siguientes gestores de pantalla desbloquean automáticamente el llavero una vez que inicie sesión:

En GDM y LightDM, advierta que el llavero debe ser nombrado como login para ser desbloqueado automáticamente.

Para activar el llavero para las aplicaciones que se ejecutan a través del terminal, como SSH, añada lo siguiente a su ~/.bash_profile, ~/.zshenv, o similar:

~/.bash_profile
if [ -n "$DESKTOP_SESSION" ];then
    eval $(gnome-keyring-daemon --start)
    export SSH_AUTH_SOCK
fi

SSH keys

To add your SSH key:

$ ssh-add ~/.ssh/id_rsa
Enter passphrase for /home/mith/.ssh/id_rsa:

To list automatically loaded keys:

$ ssh-add -L

To disable all keys;

$ ssh-add -D

Now when you connect to a server, the key will be found and a dialog will popup asking you for the passphrase. It has an option to automatically unlock the key when you log in. If you check this, you will not need to enter your passphrase again!

Alternatively, to permanently save the a passphrase in the keyring, use ssh-askpass from package seahorse:

/usr/lib/seahorse/ssh-askpass my_key
Note: You have to have the corresponding .pub file in the same directory as the private key (~/.ssh/id_rsa.pub in the example). Also, make sure that the public key is the file name of the private key plus .pub (for example, my_key.pub).

Start SSH and Secrets components of keyring daemon

If you are starting Gnome Keyring with a display manager or the Pam method described above and you are NOT using Gnome, Unity or Mate as your desktop you may find that the SSH and Secrets components are not being started automatically. You can fix this by copying the desktop files gnome-keyring-ssh.desktop and gnome-keyring-secrets.desktop from /etc/xdg/autostart/ to ~/.config/autostart/ and deleting the OnlyShowIn line.

$ cp /etc/xdg/autostart/{gnome-keyring-secrets.desktop,gnome-keyring-ssh.desktop} ~/.config/autostart/
$ sed -i '/^OnlyShowIn.*$/d' ~/.config/autostart/gnome-keyring-secrets.desktop
$ sed -i '/^OnlyShowIn.*$/d' ~/.config/autostart/gnome-keyring-ssh.desktop

Disable keyring daemon components

If you wish to run an alternative SSH agent (e.g. ssh-agent or gpg-agent, you need to disable the ssh component of GNOME Keyring. To do so in an account-local way, copy /etc/xdg/autostart/gnome-keyring-ssh.desktop to ~/.config/autostart and then append the line Hidden=true to the copied file. Then log out.

Note: In case you use GNOME 3.24 or older on Wayland, gnome-shell will overwrite SSH_AUTH_SOCK to point to gnome-keyring regardless if it is running or not. To prevent this, you need to set the environment variable GSM_SKIP_SSH_AGENT_WORKAROUND before gnome-shell is started. One way to do this is to add the line GSM_SKIP_SSH_AGENT_WORKAROUND DEFAULT=1 to ~/.pam_environment.

Tips and tricks

Integration with applications

Flushing passphrases

gnome-keyring-daemon -r -d

This command starts gnome-keyring-daemon, shutting down previously running instances.

Git integration

The GNOME keyring is useful in conjuction with Git when you are pushing over HTTPS.

Install the libsecret package.

Set Git up to use the helper:

$ git config --global credential.helper /usr/lib/git-core/git-credential-libsecret

Next time you do a git push, you are asked to unlock your keyring, if not unlocked already.

Troubleshooting

Passwords are not remembered

If you get a password prompt every time you login, and you find that passwords are not saved, you might need to create/set a default keyring.

Ensure that the seahorse package is installed, open it ("Passwords and Keys" in system settings) and select View > By Keyring If there is no keyring in the left column (it will be marked with a lock icon), go to File > New > Password Keyring and give it a name. You will be asked to enter a password. If you do not give the keyring a password it will be unlocked automatically, even when using autologin, but passwords will not be stored securely. Finally, right-click on the keyring you just created and select "Set as default".

Resetting the keyring

If you get the error "The password you use to login to your computer no longer matches that of your login keyring", you can simply reset your gnome keyring.

Remove "login.keyring" and "user.keystore" from /home/{username}/.local/share/keyrings/. After removing the files, simply log out and log in again. Obviously, this will remove your saved keys.

Known issues

Cannot handle ECDSA and Ed25519 keys

As of January 2018, GNOME Keyring doesn't handle ECDSA[1] nor Ed25519[2] keys. You can turn to other SSH agents if you need support for those.

Note: As of GNOME 3.28, gnome-keyring replaced its SSH agent implementation with a wrapper around the ssh-agent tool that comes with openssh [3]. As a result, any type of key supported by the upstream ssh-agent is now also supported by gnome-keyring, including ECDSA and Ed25519 keys.

Véase también