您好我过去几周使用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 DSA key sent by the remote host is
e4:e2:ac:f0:d1:1b:72:56:f0:47:4a:68:95:54:e1:a3.
Please contact your system administrator.
Add correct host key in /home/dimit/.ssh/known_hosts to get rid of this message.
Offending ECDSA key in /home/dimit/.ssh/known_hosts:1
remove with: ssh-keygen -f "/home/dimit/.ssh/known_hosts" -R 10.136.18.76
DSA host key for 10.136.18.76 has changed and you have requested strict checking.
Host key verification failed.
通过搜索互联网,我意识到这是SSH的常见问题,所以我尝试根据建议的解决方案来解决它,例如:
ssh-keygen -R hostname
or
rm .ssh/known_hosts
....
所以在做完这些解决方案后,消息就消失了。但是当我要求输入密码时,它会告诉我密码错误!!我尝试了所有的解决方案,但没有一个适合我。我使用-v选项运行SSH,这是输出:
dimit@dimit-GE620-GE620DX-FX620DX:~$ ssh -v ivan@10.136.18.76
OpenSSH_5.9p1 Debian-5ubuntu1.4, OpenSSL 1.0.1 14 Mar 2012
debug1: Reading configuration data /etc/ssh/ssh_config
debug1: /etc/ssh/ssh_config line 19: Applying options for *
debug1: Connecting to 10.136.18.76 [10.136.18.76] port 22.
debug1: Connection established.
debug1: identity file /home/dimit/.ssh/id_rsa type -1
debug1: identity file /home/dimit/.ssh/id_rsa-cert type -1
debug1: identity file /home/dimit/.ssh/id_dsa type -1
debug1: identity file /home/dimit/.ssh/id_dsa-cert type -1
debug1: identity file /home/dimit/.ssh/id_ecdsa type -1
debug1: identity file /home/dimit/.ssh/id_ecdsa-cert type -1
debug1: Remote protocol version 2.0, remote software version dropbear_0.51
debug1: no match: dropbear_0.51
debug1: Enabling compatibility mode for protocol 2.0
debug1: Local version string SSH-2.0-OpenSSH_5.9p1 Debian-5ubuntu1.4
debug1: SSH2_MSG_KEXINIT sent
debug1: SSH2_MSG_KEXINIT received
debug1: kex: server->client aes128-cbc hmac-md5 none
debug1: kex: client->server aes128-cbc hmac-md5 none
debug1: sending SSH2_MSG_KEXDH_INIT
debug1: expecting SSH2_MSG_KEXDH_REPLY
debug1: Server host key: DSA e4:e2:ac:f0:d1:1b:72:56:f0:47:4a:68:95:54:e1:a3
debug1: Host '10.136.18.76' is known and matches the DSA host key.
debug1: Found key in /home/dimit/.ssh/known_hosts:1
debug1: ssh_dss_verify: signature correct
debug1: SSH2_MSG_NEWKEYS sent
debug1: expecting SSH2_MSG_NEWKEYS
debug1: SSH2_MSG_NEWKEYS received
debug1: Roaming not allowed by server
debug1: SSH2_MSG_SERVICE_REQUEST sent
debug1: SSH2_MSG_SERVICE_ACCEPT received
debug1: Authentications that can continue: publickey,password
debug1: Next authentication method: publickey
debug1: Trying private key: /home/dimit/.ssh/id_rsa
debug1: Trying private key: /home/dimit/.ssh/id_dsa
debug1: Trying private key: /home/dimit/.ssh/id_ecdsa
debug1: Next authentication method: password
ivan@10.136.18.76's password:
debug1: Authentications that can continue: publickey,password
Permission denied, please try again.
ivan@10.136.18.76's password:
Mdebug1: Authentications that can continue: publickey,password
Permission denied, please try again.
ivan@10.136.18.76's password:
debug1: Authentications that can continue: publickey,password
debug1: No more authentication methods to try.
Permission denied (publickey,password).
dimit@dimit-GE620-GE620DX-FX620DX:~$
我以为有人必须更改密码!所以我今天去了我的办公室,当我将笔记本电脑连接到我的电脑时,它也显示了第一条消息,但唯一的区别是所有上述解决方案都适用于我,在那里我可以使用旧密码连接到我的电脑!!!
我认为这个问题已经解决但是当我回到家时第一条消息仍然出现,当我删除known_hosts文件时,它告诉我密码错误,我确定它不是!!!!
所以我似乎可以在我的办公室连接到我的电脑,但不能在家里连接! 我确定办公室和家里都没有网络修改。我仍然不知道该怎么做!在过去的几周里我没有遇到这个问题!
答案 0 :(得分:2)
我建议您从家里连接的IP地址(现在)错误。
您运行了ssh命令,它告诉您问题:您正在连接到另一台计算机。你忽略了建议并删除了ssh对机器的了解,然后连接并告诉不同的机器你的密码。
然后你在工作中连接,这可能(可能)去了正确的机器(但是ssh认为它是错的),你让ssh再次忘记并且它有效。
你应该: