[Bug 1991427] Re: ssh doesn't offer identity files in the right order
Launchpad Bug Tracker
1991427 at bugs.launchpad.net
Sat Dec 3 04:17:19 UTC 2022
[Expired for openssh (Ubuntu) because there has been no activity for 60
days.]
** Changed in: openssh (Ubuntu)
Status: Incomplete => Expired
--
You received this bug notification because you are a member of Ubuntu
Foundations Bugs, which is subscribed to openssh in Ubuntu.
https://bugs.launchpad.net/bugs/1991427
Title:
ssh doesn't offer identity files in the right order
Status in openssh package in Ubuntu:
Expired
Bug description:
"man ssh_config" claims that the "IdentityFile"s will be tried in
sequence:
IdentityFile
Specifies a file from which the user's DSA, ECDSA, authenticator-hosted ECDSA, Ed25519, authenticator-hosted Ed25519 or RSA au‐
thentication identity is read. The default is ~/.ssh/id_rsa, ~/.ssh/id_ecdsa, ~/.ssh/id_ecdsa_sk, ~/.ssh/id_ed25519,
~/.ssh/id_ed25519_sk and ~/.ssh/id_dsa. Additionally, any identities represented by the authentication agent will be used for
authentication unless IdentitiesOnly is set. If no certificates have been explicitly specified by CertificateFile, ssh(1) will
try to load certificate information from the filename obtained by appending -cert.pub to the path of a specified IdentityFile.
Arguments to IdentityFile may use the tilde syntax to refer to a user's home directory or the tokens described in the TOKENS sec‐
tion.
It is possible to have multiple identity files specified in configuration files; all these identities will be tried in sequence.
Multiple IdentityFile directives will add to the list of identities tried (this behaviour differs from that of other configura‐
tion directives).
IdentityFile may be used in conjunction with IdentitiesOnly to select which identities in an agent are offered during authentica‐
tion. IdentityFile may also be used in conjunction with CertificateFile in order to provide any certificate also needed for au‐
thentication with the identity.
Yet it doesn't try them in the order specified ("id_ed25519-postfix"
comes before "id_ed25519" in my "~/.ssh/config"):
debug1: Connection established.
debug1: identity file /home/user/.ssh/id_ed25519-postfix type 3
debug1: identity file /home/user/.ssh/id_ed25519-postfix-cert type -1
debug1: identity file /home/user/.ssh/id_ed25519 type 3
debug1: identity file /home/user/.ssh/id_ed25519-cert type -1
debug1: Local version string SSH-2.0-OpenSSH_8.9p1 Ubuntu-3
...
debug1: Will attempt key: /home/user/.ssh/id_ed25519 ED25519 SHA256:<redacted> explicit agent
debug1: Will attempt key: /home/user/.ssh/id_ed25519-postfix ED25519 SHA256:<redacted> explicit agent
This causes the wrong key to be used for log in. This is especially
problematic when using Git over SSH, which causes the server to report
repository doesn't exist as the username are the same and the key
dictates the account being logged in, and instead of getting a
permission denied the server would give out a more confusing message,
misleading the direction the user goes to debug.
Ubuntu 22.04.1 with openssh-client 1:8.9p1-3
To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/openssh/+bug/1991427/+subscriptions
More information about the foundations-bugs
mailing list