windows 使用vscode远程开发 免密登录无法生效问题

Windows环境搭建vscode的方法网上有很多,随便找一个就行。

我在搭建的时候,遇到了无法启用密钥登录,只能用密码登录的问题,记录如下:

1、环境

本地系统:Windows 10
服务器系统 Ubuntu 20.04.3 LTS

2、现象:

2.1、在配置了vscode远程开发需要的config文件中的 “IdentityFile” 字段后,vscode每次连接远程服务器的时候,还要手动输入密码。

config文件如下:

Host ubuntu
    HostName 192.168.43.123
    User yuexiazhufeng
    Port 22
    IdentityFile "C:\Users\86183\.ssh\id_rsa"

2.2、尝试在git环境,直接执行远程登录指令,如下:

ssh ubuntu

此时,是可以正常登录的。
登录日志如下:


image.png

根据这个看,密钥应该没有问题,整个链路是通的。

2.3、修改vscode中ssh路径,统一成和git中一样,也不行。

考虑到vscode中用的ssh和git中用的ssh不同,修改了vscode中的ssh路径统一成和git中的一致,依然不行。如下:


image.png

3、解决方法

使用windows自带的dos命令行,用"ssh-keygen"重新生成一份密码对,将公钥传到服务器,此时,vscode就可以不要输入密码,直接免密登录了。生成密钥的命令如下:

ssh-keygen -t rsa -C "chiri1218@126.com"

4、总结

没太搞明白具体原因是什么,只能推测是,windows自带的ssh可能和Linux环境的ssh行为不一致,且之前在vscode中配置的ssh路径没有生效。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容