[20:39:33.835] > @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ > ]0;C:\WINDOWS\System32\cmd.exe [20:39:33.835] Got some output, clearing connection timeout [20:39:33.849] > @ 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 > SHA256:L2u+dyztTxL50Qna6dDzoOT/D8G79pm1GJbXXhO+F6k. > Please contact your system administrator. > Add correct host key in C:\\Users\\.../.ssh/known_hosts to get rid of this message. > Offending ECDSA key in C:\\Users\\.../.ssh/known_hosts:9 > ECDSA host key for [59.77.13.208]:7110 has changed and you have requested strict checking. > Host key verification failed. > 过程试图写入的管道不存在。 [20:39:35.243] "install" terminal command done [20:39:35.245] Install terminal quit with output: 过程试图写入的管道不存在。 [20:39:35.245] Received install output: 过程试图写入的管道不存在。 [20:39:35.247] Failed to parse remote port from server output [20:39:35.251] Resolver error: Error: at m.Create (c:\Users\...\.vscode\extensions\ms-vscode-remote.remote-ssh-0.98.0\out\extension.js:1:584388) at t.handleInstallOutput (c:\Users\...\.vscode\extensions\ms-vscode-remote.remote-ssh-0.98.0\out\extension.js:1:582948) at t.tryInstall (c:\Users\...\.vscode\extensions\ms-vscode-remote.remote-ssh-0.98.0\out\extension.js:1:681793) at async c:\Users\...\.vscode\extensions\ms-vscode-remote.remote-ssh-0.98.0\out\extension.js:1:644041 at async t.withShowDetailsEvent (c:\Users\...\.vscode\extensions\ms-vscode-remote.remote-ssh-0.98.0\out\extension.js:1:647359) at async t.resolve (c:\Users\...\.vscode\extensions\ms-vscode-remote.remote-ssh-0.98.0\out\extension.js:1:645091) at async c:\Users\...\.vscode\extensions\ms-vscode-remote.remote-ssh-0.98.0\out\extension.js:1:720839 [20:39:35.265] ------
背景:
服务器重装系统之后,在本地通过VSCode远程登陆(SSH)到远端服务器时,会出现如上错误。
错误原因:
当你使用SSH连接到一个远程主机时,SSH客户端会保存该主机的公钥信息,并将其记录在known_hosts文件中。在以后的连接中,SSH客户端会检查该主机的公钥是否与known_hosts文件中保存的公钥匹配,以确保连接的安全性。如果远程主机的公钥发生了变化,比如重新安装操作系统或更换了SSH服务器,SSH客户端会提示你该主机的公钥已经改变,可能存在安全风险。此时,你需要手动确认并更新known_hosts文件,以确保连接的安全性。
如果远程服务器的SSH服务被卸载、重装或SSH相关数据被删除,那么当你再次连接到该服务器时,SSH客户端将无法验证该服务器的公钥信息,因为其已被更改或删除。此时,你需要手动删除known_hosts文件中与该服务器相关的条目,并重新连接到服务器,以重新记录其公钥信息。如果你不确定known_hosts文件中的哪些条目需要删除,可以删除整个known_hosts文件,以便在下一次连接时重新记录所有服务器的公钥信息。
解决方案:
环境:Win11+VSCode
在Windows系统中,known_hosts文件可能位于C:\Users{用户名}.ssh\known_hosts或C:\Documents and Settings{用户名}.ssh\known_hosts。
主要.ssh是隐藏文件。
删除上述文件之后,可以重新登录远端服务器!!
细看自己的错误原因,本方案不一定解决所有问题。
参考资料:
1) ssh登录错误ECDSA host key for ip has changed解决方案 - 简书 (jianshu.com)
标签:remote,VSCode,server,vscode,hosts,ssh,known,SSH From: https://www.cnblogs.com/hjxiamen/p/17231739.html