Bug#735664: openssh-client: ssh-agent gets duplicate keys, breaks ssh-add
Package: openssh-client
Version: 1:6.4p1-2
Severity: normal
Dear Maintainer,
This bug seems to arise from an interaction between gnome-keyring-agent, ssh-agent and ssh-add.
When I log in my ssh key is automatically added to ssh-agent, by gnome-keyring-agent as far as I understand, but obviously still requires me to enter the password in order to be used.
I have a script that runs for some time and then uses ssh thus asking for the key's passphrase. So I would normally prefill the passphrase with ssh-add like so but all this does is add a duplicate entry for the ssh key which does not get used by ssh:
$ ssh-add -l
1024 65:d0:25:dd:dc:39:19:08:75:cf:d3:34:1c:da:2b:1b fgouget@debian (DSA)
$ ssh-add
Enter passphrase for /home/fgouget/.ssh/id_dsa:
Identity added: /home/fgouget/.ssh/id_dsa (/home/fgouget/.ssh/id_dsa)
$ ssh-add -l
1024 65:d0:25:dd:dc:39:19:08:75:cf:d3:34:1c:da:2b:1b /home/fgouget/.ssh/id_dsa (DSA)
1024 65:d0:25:dd:dc:39:19:08:75:cf:d3:34:1c:da:2b:1b fgouget@debian (DSA)
$ ssh remote
[prompts for the fgouget@debian passphrase]
Furthermore the fgouget@debian entry cannot be removed:
$ ssh-add -D
All identities removed.
$ ssh-add -l
1024 65:d0:25:dd:dc:39:19:08:75:cf:d3:34:1c:da:2b:1b fgouget@debian (DSA)
I would instead expect one of the following:
* Either there's no fgouget@debian entry in ssh-agent and then a simple call to ssh-add should add one entry that should then be used by all processes needing that key.
* Or if the fgouget@debian entry is really meant to be there, then there should be a way to prefill its password using ssh-add. Currently this appears to be impossible, meaning ssh-add is essentially broken.
-- System Information:
Debian Release: jessie/sid
APT prefers testing
APT policy: (990, 'testing'), (500, 'stable')
Architecture: amd64 (x86_64)
Foreign Architectures: i386
Kernel: Linux 3.12-1-amd64 (SMP w/4 CPU cores)
Locale: LANG=fr_FR.UTF-8, LC_CTYPE=fr_FR.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Versions of packages openssh-client depends on:
ii adduser 3.113+nmu3
ii dpkg 1.17.5
ii libc6 2.17-97
ii libedit2 3.1-20130712-2
ii libgssapi-krb5-2 1.11.3+dfsg-3+nmu1
ii libselinux1 2.2.1-1
ii libssl1.0.0 1.0.1f-1
ii passwd 1:4.1.5.1-1
ii zlib1g 1:1.2.8.dfsg-1
Versions of packages openssh-client recommends:
ii xauth 1:1.0.7-1
Versions of packages openssh-client suggests:
pn keychain <none>
pn libpam-ssh <none>
pn monkeysphere <none>
ii openssh-blacklist 0.4.1+nmu1
ii openssh-blacklist-extra 0.4.1+nmu1
ii ssh-askpass 1:1.2.4.1-9
ii gnome-keyring 3.8.2-2
-- no debconf information
Reply to: