I have a server located in the USA and SSH to it from various places around the world. When I SSH in from a computer I have never used before, I'll see something like this:
The authenticity of host 'my.usa.server.com (11.22.33.44)' can't be established.
RSA key fingerprint is xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:b8:1d:61.
Are you sure you want to continue connecting (yes/no)?
From most places in the world, the RSA fingerprint is identical, which makes sense, because I'm always connecting to the same server:
[From a server in Sweden]
me@sweden:~$ ssh [email protected]
The authenticity of host 'my.usa.server.com (11.22.33.44)' can't be established.
RSA key fingerprint is xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:b8:1d:61.
Are you sure you want to continue connecting (yes/no)?
me@sweden:~$
[From a server in The Netherlands]
me@nl:~$ ssh [email protected]
The authenticity of host 'my.usa.server.com (11.22.33.44)' can't be established.
RSA key fingerprint is xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:b8:1d:61.
Are you sure you want to continue connecting (yes/no)?
me@nl:~$
[From a server in the US]
me@otherusaserver:~$ ssh [email protected]
The authenticity of host 'my.usa.server.com (11.22.33.44)' can't be established.
RSA key fingerprint is xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:b8:1d:61.
Are you sure you want to continue connecting (yes/no)?
me@otherusaserver:~$
HOWEVER, when I try to connect from a server in China, the key fingerprint is different:
me@chinaserver:~$ ssh [email protected]
The authenticity of host 'my.usa.server.com (11.22.33.44)' can't be established.
ECDSA key fingerprint is xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:d8:0f:01.
Are you sure you want to continue connecting (yes/no)?
me@chinaserver:~$
Notice that the key and cipher are different. It should be noted that I OWN the physical China server and the room where it is located, so I can be sure that the server hardware is secure.
Does that mean someone upstream, such as the China government or the ISP (China Telecom) is doing some sort of MITM attack?