A question for (primarily) the ssh/crypto experts:
I'm trying to validate the identity of a remote ssh server.
The server (or appliance) operator has given me fingerprints with various hash algorithms:
However, when I connect with ssh (or sftp) and it gives me the ECDSA sha256 and MD5 fingerprints, both do not match:
$ ssh -o UserKnownHostsFile=/dev/null user_redacted@remote_host_redacted
The authenticity of host 'remote_host_redacted (xx.xxx.xxx.xxx)' can't be established.
ECDSA key fingerprint is SHA256:6GdpQwqovGzbMqi7aCPyv3fvKS0KT9oGQzuOLRN0Ick.
ECDSA key fingerprint is MD5:fe:c2:7f:72:ef:5d:2e:a7:41:f5:09:a0:a6:e9:fc:dd.
Are you sure you want to continue connecting (yes/no)? no
HOWEVER, when I get the ssh-rsa key fingerprint and look purely at that, that one matches the one they gave as "ssh SHA256 B64":
$ ssh-keyscan remote_host_redacted 2>/dev/null | grep ssh-rsa | ssh-keygen -l -f -
2048 SHA256:SiZYpIkgjeBN6QvPk5dTuEzQNdKUOV3FMyjwRfzc/Do remote_host_redacted (RSA)
I assume, as a sort of crypto layman, that these ECDSA MD5, ECDSA SHA256 or ssh-rsa fingerprinting (SHA1 actually, I believe) are just different methods of generating a hash / fingerprint off of the same public host key?
So the question:
Is it actually possible that in a legit connection, without any MITM shenanigans, only the ssh-rsa fingerprint matches, but the others don't?
Or ultimately: would you consider this sufficiently trustworthy or not?
Thanks!