在两台 Linux 机器之间设置 SSH 功能时,我面临:
The authenticity of host 'x.x.x.x (y.y.y.y)' can't be established.
ECDSA key fingerprint is xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx.
Are you sure you want to continue connecting (yes/no)?
我使用以下命令(在主题主机(服务器)中)验证所述指纹是否正确:
ssh-keygen -l -f /etc/ssh/ssh_host_ecdsa_key.pub
但是,当设置从 Linux SSH 客户端到 Windows 10 SSH 服务器的 SSH 功能时,当面临同样的挑战时,我如何从所述 Windows 10 SSH 服务器中提取所述 ECDSA 密钥指纹?
Windows 10 SSH 服务器也是 OpenSSH 并且包含相同的命令。它将主机密钥存储在
C:\ProgramData\ssh
.第三方 SSH 服务器可能有自己的命令,例如 Bitvise WinSSHD 有一个用于主机密钥管理的图形界面,但
ssh-keyscan
也可以与这些命令一起使用。原来我使用的是旧版本的 SSH (6.7) 。为了获得与 OP 中所示格式相同的 ECDSA 密钥指纹,需要在 Windows 10 主机上以管理员权限运行以下命令:
多亏了我从 user1686 收到的信息,我才能够拼凑出这个命令