使用相同 IP 地址时,远程主机标识已更改

使用相同 IP 地址时,远程主机标识已更改

当尝试 ssh 到另一个盒子时,我收到以下消息:

It is also possible that the RSA host key has just been changed.
The fingerprint for the RSA key sent by the remote host is

Please contact your system administrator.
Add correct host key in .ssh/known_hosts to get rid of this message.
Offending key in .ssh/known_hosts:4
RSA host key for _ has changed and you have requested strict checking.
Host key verification failed.

我的known_hosts 文件包含我尝试通过ssh 连接的盒子,但它仅适用于该文件中的其他盒子。我确实读过问题,但解决方案对我不起作用,因为两个盒子都在同一个 IP 地址上。

答案1

简单的方法是删除第 4 行(正如建议中提到的 - .ssh/known_hosts:4) 来自known_host 文件并重试。

答案2

通常每台计算机都有自己独特的 IP 地址。在某些情况下,情况并非如此:

  • 如果计算机配置了 DHCP,则可能的一台机器可以重用另一台失去租约的机器提供的 IP 地址,例如,将其关闭一段时间
  • 很少有人决定为多台机器重复使用相同的 IP 地址。这可能是由于防火墙限制、决定重用该地址来部署相同的机器等。

对于 DHCP 情况,除了删除~/.ssh/known_hosts.这就是整个要点ssh 远程主机标识已更改

另一方面,如果只是从known_hosts文件中删除“不正确”的密钥,故意重复使用 IP 地址可能会很麻烦且安全性较低。如果机器确实“相同”(并且不同时运行),那么您可以在多台机器上重复使用 ssh 服务器密钥。

例如,在/etc/ssh/sshd_config一台机器上,我有

HostKey /etc/ssh/ssh_host_rsa_key
HostKey /etc/ssh/ssh_host_dsa_key
HostKey /etc/ssh/ssh_host_ecdsa_key

这些文件(及其公共副本,后缀为“.pub”)可以复制到“相同”服务器之一,然后sshd重新启动。之后,这台机器的两个副本将充当同一台机器。

另一方面,如果您不必设置资源减少的配置,则为每台计算机使用不同的 IP 地址会更简单。

进一步阅读:

相关内容