为什么使用 ProxyCommand 进行多跳时会得到不同的 RSA 指纹

为什么使用 ProxyCommand 进行多跳时会得到不同的 RSA 指纹

我使用以下配置连接到目标主机的多跳(gw2并将target我的公钥存储在authorized_keys文件中;netcat在所有系统上都没有):

Host gw1
 HostName 255.255.255.1
 User john

Host gw2
 HostName 255.255.255.2
 User jack
 ProxyCommand ssh gw1 'exec 3<>/dev/tcp/255.255.255.2/22; cat <&3 & cat >&3;kill $!'

Host target
 HostName 255.255.255.3
 User jill
 ProxyCommand ssh 255.255.255.2 'exec 3<>/dev/tcp/255.255.255.3/22; cat <&3 & cat >&3;kill $!'

我清理了我的known_hosts文件并从本地计算机连接到gw2使用。ssh gw2指纹和我想象的不一样。当我从本地计算机ssh 进入target使用时,也会发生同样的情况,rsa 指纹是不同的。ssh target

当我 ssh 进入gw1然后进入gw2(from gw1)时ssh-keygen -lf /etc/ssh/ssh_host_rsa_key.pub,会产生我期望的指纹。

我(相当)确定没有 MITM 发生。有人可以向我解释这种行为吗?我应该担心吗?

相关内容