听说微软推出了新的VSCode插件,很久就想试下了,今天终于开始尝试了,Remote-WSL是连接本机的Linux子系统用的,Remote-SSH可以连接到远程主机。在此记录一下这个过程。
准备一个Linux,地址:192.168.209.61,开启ssh
安装Remote-SSH
在VSCode插件里查找,然后安装就好了,这个做得很方便
添加配置文件
点击左下角图标,弹出菜单选择Remote-SSH: Open Configuration File...
,第一次选择会让用户选择存放配置文件位置,如:
C:\Users\Leo\.ssh\config
C:\ProgramData\ssh\ssh_config
这个目录中也用于存放rsa密钥,如果没有远程主机密钥文件,会在登录时询问用户密码
在config配置文件中填入内容如下
Host my61
HostName 192.168.209.61
User root
解释一下其含义
- Host 连接的主机的名称,可自定
- Hostname 远程主机的IP地址
- User 用于登录远程主机的用户名
- Port 用于登录远程主机的端口
- IdentityFile 本地的id_rsa的路径
此时连接需要输入密码,如果配置了密钥,就可以直接连接了
配置Windows通过密钥连接远程Linux
Windows端
在本机生成密钥对
C:\Users\Leo\.ssh>ssh-keygen
...
将生成的id_rsa.pub
上传到远程Linux主机
scp id_rsa_pub root@192.168.209.61:/root/.ssh/
Linux端
将id_rsa.pub
加入到authorized_keys
中
# cd ~/.ssh
# cat id_rsa_pub >> authoried_keys
在windows端,就可以通过如下命令登录了
C:\Users\Leo\.ssh> ssh root@192.168.209.61 -i id_rsa
飞奔
在VSCode中直接点击远程主机就可以连接,真爽,XShell可以不用了,文件传输可以不用了,直接在VSCode中召唤命令行就是远程Linux的命令窗口
附
如果在VSCode主机上有多个Linux终端需要连接,我的做法是把id_rsa.pub拷贝到多个Linux上面就可以直接连接了,在Remote-SSH的配置文件中也不用指定key文件,目前还没有发现有其它问题,如有不妥,欢迎指正
网友评论