vscode Remote-SSH无法连接的问题
2025年5月17日大约 2 分钟
vscode Remote-SSH无法连接的问题
解决方案
第一种:
在你的windows命令窗口输入
ssh-keygen -R 服务器IP
第二种:
删除 位于用户的 ~/.ssh/known_hosts 文件
原因分析
vscode的控制台输出:

这里的意思是主机密钥验证失败,因为remote-ssh连接背后的原理是在服务器上装一个vscode-server来进行通信,由于目前我们的服务器已经重装了,因此需要重新下载vscode-server.
但是很不巧,安装这个软件vscode需要首先通过我们的终端来连接到服务器,然后在服务器上下载,问题就出在了这一步,由于服务器已经重装了,这时候windows电脑上保存的对应主机的指纹和现在主机的指纹不匹配了,这会被判定为存在一些肮脏的行为(认为你的行为存在被攻击的风险。)所以被强行截断
而为了解决这个问题,我们只需要把本地保存的指纹给清除掉就行了,所以执行ssh-keygen -R 来删除本地保存的对应主机的公钥,当公钥已经删除之后,code认为我们曾经没有访问过这台主机,因此就不再进行指纹匹配。
再扩展一下,ssh-keygen -R 是用来从 known_hosts 文件中删除特定主机的条目的命令。而known_hosts 文件用于存储已知主机的公钥,它通常位于用户的 ~/.ssh/known_hosts 文件中。因此如果你不想执行命令也可以手动去删除对应的记录.
例如我还有一台服务器还没有删除公钥条目,打开 ~/.ssh/known_hosts这个文件:
搜索找到这个主机对应为记录,并且删除。
重新连接,弹出此窗口则已经可以正常连接了.

原文链接:https://blog.csdn.net/weixin_49610655/article/details/144776784