[Bug 1790963] Re: Unable to connect with openssh 7.8 client and certificates
Scott Emmons
1790963 at bugs.launchpad.net
Fri Sep 7 16:14:28 UTC 2018
This [1] appears to be the source of the problem, specifically "Add new
RSA certificate types that that can be used in the above options and on
the wire to require the use of RSA/SHA2 signatures." - unfortunately,
those new certificate types don't exist/work in openssh <7.8, breaking
backwards compatibility with 7.8 clients.
Christian - Correct, it doesn't matter that no Ubuntu version is
shipping with openssh 7.8 today. Bleeding edge distributions are, and
non-Linux users are getting updates to 7.8, which breaks connectivity to
any openssh server <7.8 under these circumstances when the client is
7.8.
Etienne - Thank you for providing that - it is the current workaround
aside from downgrading clients to 7.7. This is not a complete solution
though, as it doesn't help for environments that sign RSA user
certificates through an automated service (unless that service supports
EC certs, which I'm going to guess may not work with really old versions
of openssh).
[1] http://bugzilla.mindrot.org/show_bug.cgi?id=2799
** Bug watch added: OpenSSH Portable Bugzilla #2799
https://bugzilla.mindrot.org/show_bug.cgi?id=2799
--
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/1790963
Title:
Unable to connect with openssh 7.8 client and certificates
Status in openssh package in Ubuntu:
Confirmed
Bug description:
Users are unable to connect to Ubuntu when using openssh client 7.8
and certificates. We have seen this with both xenial and bionic, but
this affects connecting to ANY host running openssh server <7.8.
It appears to be specific to using certificate authentication.
The only known recourse at this time is either downgrade clients to
7.7 or a previous version of openssh, or create new keys/certificates
with a different alg that is acceptable for both the older server and
newer client.
The error message via ssh -vvv is:
debug1: Next authentication method: publickey
debug1: Offering public key: RSA SHA256:REDACTED
debug1: send_pubkey_test: no mutual signature algorithm
When comparing the list returned from a 7.6 server and a 7.8 server
via "ssh -Q key", we find that 7.8 returns rsa-
sha2-512-cert-v01 at openssh.com and rsa-sha2-256-cert-v01 at openssh.com
which are not present (or valid) for the earlier version server.
It appears that the change noted here in the release notes[1] for 7.8 is related:
* sshd(8): the semantics of PubkeyAcceptedKeyTypes and the similar
HostbasedAcceptedKeyTypes options have changed. These now specify
signature algorithms that are accepted for their respective
authentication mechanism, where previously they specified accepted
key types. This distinction matters when using the RSA/SHA2
signature algorithms "rsa-sha2-256", "rsa-sha2-512" and their
certificate counterparts. Configurations that override these
options but omit these algorithm names may cause unexpected
authentication failures (no action is required for configurations
that accept the default for these options).
This is also affecting other Linux distributions as well:
https://bugzilla.redhat.com/show_bug.cgi?id=1623929
https://bugs.archlinux.org/task/59838
[1] https://www.openssh.com/txt/release-7.8
To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/openssh/+bug/1790963/+subscriptions
More information about the foundations-bugs
mailing list