我目前在使用 SSH 连接到远程大学 Ubuntu 计算机时遇到问题(如果重要的话,我使用 VS Code 作为 SSH 客户端)。初始连接后,它会提示我信任该设备,我这样做了,然后就能够连接了。然而,一天后我尝试重新连接,它抛出一个错误,指出机器的主机身份已更改。
我使用 DNS 名称通过 SSH 连接到计算机。因此,无论 IP 地址如何变化,它都应该始终将我定向到同一台物理机器。请注意,我通过 SSH 连接的机器是物理桌面机器,而不是虚拟机或集群。
所以我很好奇,假设我连接到同一台物理机器。为什么 SSH 会认为远程主机已更改?如果同一台物理机的IP地址发生变化,是否会导致身份发生变化?
答案1
简短的回答是肯定的。如果机器的 IP 发生变化,它将成为一个未知的主机。
已知的主机保存在.ssh/known_hosts
.
另请注意,可以在 中启用已知主机哈希/etc/ssh/ssh_config
,因此您的主机文件可能看起来与您通常习惯的略有不同。
您还可以在同一配置文件中设置 来取消 IP 检查CheckHostIP
。no
另请参阅:https://serverfault.com/questions/193631/ssh-into-a-box-with-a-frequently-changed-ip/895661#895661