我正试图通过我的电脑上的Cygwin进入我的UBUNTU。我可以毫不费力地使用WINSCP,但是当我通过命令行ssh时,它会出现这个错误:
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@ 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 a host key has just been changed.
The fingerprint for the ECDSA key sent by the remote host is
5d:84:de:4e:a8:81:df:22:06:23:98:34:cd:26:f5:1a.
Please contact your system administrator.
Add correct host key in /home/Trevor/.ssh/known_hosts to get rid of this message.
Offending ECDSA key in /home/DIRECTORY
ECDSA host key for HOSTNAME has changed and you have requested strict checking.
Host key verification failed.
所以我查了一下,它说我需要更改位于host key
文件夹中的.ssh
文件夹中的home
。嗯,没有一个,所以我做了一个。再次尝试并得到了同样的错误。
怎么办?
答案 0 :(得分:20)
"主机密钥验证失败"表示远程主机的主机密钥已更改。
Ssh将远程主机的主机密钥存储在〜/ .ssh / known_hosts中。您可以手动编辑该文本文件并删除旧密钥(您可以在错误消息中看到行号),或使用
ssh-keygen -R hostname
答案 1 :(得分:5)
试
rm -f /home/user/.ssh/known_hosts
或删除known_hosts
中的违规密钥ssh-keygen -R hostname
答案 2 :(得分:1)
主要发生在远程服务器密钥更改且系统具有旧密钥时。因此,我们需要在下面的文件中清除远程服务器的密钥。
1x.xx.xx.xx ecdsa-sha2-nistp256 AAAAE2VjZHNhLX否
3。保存文件,然后尝试重新登录。
答案 3 :(得分:0)
所以看起来你的ubuntu主机密钥已经改变,因为你上次从Cygwin ssh到它。
该消息已告诉您该怎么做,
cd /home/Trevor.ssh
open know_hosts file and delete the old key of your ubunto box
once the key is removed, ssh to your ubuntu box again
答案 4 :(得分:0)
这通常意味着您的远程主机的主机密钥已更改。它可以用来避免中间人的攻击,并使主机安全。您只需使用以下命令即可将其删除:
ssh-keygen -R hostname | ip address
或
ssh-keygen -f "/root/.ssh/known_hosts" -R ip address
答案 5 :(得分:0)
vim ~/.ssh/known_hosts
HOSTNAME
答案 6 :(得分:0)
在Mac和Ubuntu 16.04中进行了测试
HOSTNAME的ECDSA主机密钥已更改,您已请求严格检查。 主机密钥验证失败。表示,
如果收到此错误消息,则说明您尝试连接的主机之前已连接,并且现在EDSA密钥可能不匹配。当您在DHCP网络中并且在不同的时间实例为多个设备分配了相同的IP时,通常会发生这种情况。结果是密钥不匹配,即该主机名的EDSA密钥被捕获到系统中。
要解决此问题,复杂的方法是从
中删除条目vim〜/ .ssh / known_host(您可以使用任何东西代替vim)
删除整行,其中包含主机名,这是您的痛点
主机名(例如192.168.1.123)EDSA_key
它应该工作而无需重新启动系统。
不推荐
否则,解决困难的方法是删除文件的所有内容(截断),永远不要完全删除文件,这可能会导致其他问题,并且也不要修改文件的权限。
答案 7 :(得分:-1)
使用删除ssh缓存
ssh-keygen -R ipAdress
例如:ssh-keygen -R 43.224.158.621
希望这会起作用