In a fresh install of bookworm with GNOME desktop, the problem of
ssh-add -D not removing ed25519 keys still remains in 2023. When
investigating this, I noticed that in the default configuration, there
are at least FIVE separate SSH agent processes running:

1. gnome-keyring-daemon process (the buggy one), listening to socket
/run/user/$UID/keyring/ssh, which $SSH_AUTH_SOCK points by default (at
least in a GNOME session).

2. OpenSSH ssh-agent process forked buy the previous process,
listening to socket /run/user/$UID/keyring/.ssh, and working normally
(if you point $SSH_AUTH_SOCK there).

3. Another OpenSSH ssh-agent process started by ssh-agent.service
(shipped by openssh-client package), listening to socket
/run/user/$UID/openssh_agent, and working as expected.

4. gcr-ssh-agent process listening to socket /run/user/$UID/gcr/ssh
with the same buggy behaviour wrt ed25519 keys.

5. Third OpenSSH ssh-agent process started by the previous process
gcr-ssh-agent, listening to socket /run/user/$UID/keyring/.ssh, again
working normally, since it's just the standard ssh-agent.

ed25519 keys are very common today, so the default configuration
should handle them correctly. And what is the point of having multiple
copies of the same agent running, when none of them are even used
unless the user explicitly change their $SSH_AUTH_SOCK configuration?

Please coordinate with all related package maintainers to fix this mess
before trixie is released.

Reply via email to