Description of problem: Updating to the new crypto-policies leads to host misidentification and misleading ssh warnings debug1: Local version string SSH-2.0-OpenSSH_7.8 debug1: Remote protocol version 2.0, remote software version OpenSSH_7.2 debug1: match: OpenSSH_7.2 pat OpenSSH_7.0*,OpenSSH_7.1*,OpenSSH_7.2*,OpenSSH_7.3*,OpenSSH_7.4*,OpenSSH_7.5*,OpenSSH_7.6*,OpenSSH_7.7* compat 0x04000002 debug1: Authenticating to kofa1:22 as 'root' debug1: SSH2_MSG_KEXINIT sent debug1: SSH2_MSG_KEXINIT received debug1: kex: algorithm: curve25519-sha256 debug1: kex: host key algorithm: ssh-rsa debug1: kex: server->client cipher: aes256-gcm MAC: <implicit> compression: none debug1: kex: client->server cipher: aes256-gcm MAC: <implicit> compression: none debug1: kex: curve25519-sha256 need=32 dh_need=32 debug1: kex: curve25519-sha256 need=32 dh_need=32 debug1: expecting SSH2_MSG_KEX_ECDH_REPLY debug1: Server host key: ssh-rsa SHA256:kwGqH9flGj3Na8peLf7Emhe5UNR7RBBUlIDy5lOJTLI @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @ WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! @ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ..... The remote host is present in known hosts as kofa1 ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBP9xPHvKnYNvoUQOEbnpEE6jdFeVnpI2MLvymXk7HdLcbBfG2Z/BpK5jdjSZIj0i9UoL01F3WIR2TCf5hK/OOSs= Version-Release number of selected component (if applicable): crypto-policies-20180921-2.git391ed9f.fc30 The system policy is LEGACY
Forgot to mention that I have two different hosts with ecdsa-sha2-nistp256 keys exhibiting the same problem , one Fedora , the other Junos. So I'd assume its not a server misconfiguration problem.
Please consider that even if the policy change would require changing the previously used keys the user experience of warnings about host identity changing is not at all optimal. You might want to throw this to openssh.
This is related to the https://gitlab.com/redhat-crypto/fedora-crypto-policies/merge_requests/28/ Without the explicit specification of the algorithm list, OpenSSH client will prefer the host key algorithms that it has the known hosts for. The new explicit ordering prefers RSA keys and ECDSA and ED25519 are after that. I am not sure about other protocols (TLS), but I assume that elliptic curves should come before RSA, if there is no good reason for the opposite ordering.
this change is disruptive. please revert. do your defaults for *NEW* connections but please *DO*NOT* BREAK existing saved keys, because I wasted time searching for potential wifi hijackers until I found this issue. please don't go with this state in fedora release
using fc29 here
if you put this in release you will get torrents of floods of thousands angry innocent users. and that's bad for your karma.
meanwhile workaround: 1. grep your saved host in ~/.ssh/known_hosts 2. extract the second field 3. ssh -o HostKeyAlgorithms=$(value from step 2) user@host
crypto-policies-20180925-1.git71ca85f.fc29 has been submitted as an update to Fedora 29. https://bodhi.fedoraproject.org/updates/FEDORA-2018-95580e520c
This change is incredibly disruptive and should be reverted.
It is reverted in the update in comment 8.
crypto-policies-20180925-1.git71ca85f.fc29 has been pushed to the Fedora 29 testing repository. If problems still persist, please make note of it in this bug report. See https://fedoraproject.org/wiki/QA:Updates_Testing for instructions on how to install test updates. You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2018-95580e520c
crypto-policies-20180925-1.git71ca85f.fc29 has been pushed to the Fedora 29 stable repository. If problems still persist, please make note of it in this bug report.