当我尝试使用 SCP 命令传输文件时出现此错误(删除了我的 IP 和 RSA 密钥):
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@ WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY!
Someone could be eavesdropping on you right now (man-in-the-middle attack)!
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
------------------------(RSA key)
Please contact your system administrator.
Add correct host key in /home/users/myaccount/.ssh/known_hosts to get rid of this message.
Offending key in /home/users/myaccount/.ssh/known_hosts:4
RSA host key for 'my IP' has changed and you have requested strict checking.
Host key verification failed.
lost connection
Run Code Online (Sandbox Code Playgroud)
我正在使用新安装的 Ubuntu 12.04,我可以使用 ssh 连接到该服务器。有什么帮助吗?
pl1*_*1nk 12
当连接到 /etc/ssh 中的主机密钥已更改的计算机时,如果该计算机已升级而未复制其旧主机密钥,则很容易发生这种情况。当您使用 ssh 重新连接到远程计算机时,此处的主机密钥证明您正在与第一次访问它时连接的同一台计算机通话。
如果远程计算机在您的控制范围内,您可能知道它是否已更新并且主机密钥是否未复制。如果是这样,并且如果系统在您的 LAN 上,您可以非常安全地忽略或绕过此错误消息。您可能肯定知道它的 IP 地址,并且知道它上面没有木马设备。
如果计算机不在您的控制范围内,但您确定它已升级,则绕过此错误消息也可能是合理的。(如果远程主机发布了其 ssh 主机密钥的哈希值,您可以检查这些以确保安全,或者您可以调用服务器的管理来获取主机密钥指纹)。
如果计算机在您的控制范围内,您应该将旧主机密钥从 /etc/ssh 复制到新系统,作为升级过程的一部分。(注意这个目录下有密钥文件和配置文件。)
一旦您知道要忽略此条件,至少有两种方法可以处理此问题。
ssh -o 'StrictHostKeyChecking no' user@host
你每次都必须这样做。或者 ...
sed -i '4d' /home/users/myaccount/.ssh/known_hosts
这是更持久的解决方案。您可以选择从服务器接受新的主机密钥,而不是给您上述消息,就像您第一次连接到它时所做的那样。尽可能验证您是否连接到正确的远程计算机,无需通过中介,然后接受新的主机密钥。