GNOME/Keyring
From GnomeKeyring:
- GNOME Keyring is a collection of components in GNOME that store secrets, passwords, keys, certificates and make them available to applications.
Contents
Manage using GUI
pacman -S seahorse
It is possible to leave the GNOME keyring password blank or change it. In seahorse, in the "View" dropdown, select "By Keyring". On the Passwords tab, right click on "Passwords: login" and pick "Change password." Enter the old password and leave empty the new password. You will be warned about using unencrypted storage; continue by pushing "Use Unsafe Storage."
Use Without GNOME
It is possible to use GNOME Keyring without the rest of the GNOME desktop. To do this, add the following to your ~/.xinitrc
file:
# Start a D-Bus session source /etc/X11/xinit/xinitrc.d/30-dbus # Start GNOME Keyring eval $(/usr/bin/gnome-keyring-daemon --start --components=gpg,pkcs11,secrets,ssh) # You probably need to do this too: export SSH_AUTH_SOCK export GPG_AGENT_INFO export GNOME_KEYRING_CONTROL export GNOME_KEYRING_PID
See FS#13986 for more info.
On Xfce you may need to disable gpg-agent
, silently loaded at startup by xfce4-session
, otherwise the above environment variables will be overwritten. Execute the following command, then log out and log in again:
xfconf-query -c xfce4-session -p /startup/ssh-agent/enabled -n -t bool -s false
SSH Keys
To add your SSH key:
$ ssh-add ~/.ssh/id_dsa Enter passphrase for /home/mith/.ssh/id_dsa:
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 login. If you check this you will not need to enter your passphrase again!
Integration with applications
Gnome Keyring and SSH
Run in a terminal, the following:
$ gnome-keyring-daemon -s
Output will get a few lines, but in reality we are interested, SSH_AUTH_SOCK
, example:
GNOME_KEYRING_C................. SSH_AUTH_SOCK=/run/user/1000/keyring-XXXXXX/ssh GPG_AGENT_INF...................
Now you should add to your ~/.bashrc
, according to the output of the previous command, for example:
SSH_AUTH_SOCK=`netstat -xl | grep -o '/run/user/1000/keyring-.*/ssh$'` [ -z "$SSH_AUTH_SOCK" ] || export SSH_AUTH_SOCK
If you run on your terminal the following:
$ echo $SSH_AUTH_SOCK
will return something like the following:
/run/user/1000/keyring--XXXXXX/ssh
Now when you connect with ssh, gnome-keyring dialog will launch the "entry of the passphrase"
Unlock at Startup
GNOME's login manager (gdm) will automatically unlock the keyring once you log in; for others it is not so easy.
For SLiM, see SLiM#SLiM_and_Gnome_Keyring, This method works for KDM as well, but you need to edit /etc/pam.d/kde
instead of /etc/pam.d/slim
.
If you are using automatic login, then you can disable the keyring manager by setting a blank password on the login keyring. Note: your passwords will be stored unencrypted if you do this.
Useful Tools
gnome-keyring-query
gnome-keyring-queryAUR from the AUR provides a simple command-line tool for querying passwords from the password store of the GNOME Keyring.