微软2019年05月03日,在PyCon 2019大会上推出了三个非常实用的功能性插件。它们可以帮助开发者在容器、物理机器或虚拟机,以及Windows Subsystem for Linux (WSL)中实现无缝的远程开发
Remote-SSH
:连接虚拟/实体Linux主机Remote-Containers
:连接开发容器(例如:Docker)Remote-WSL
:连接WSL(也就是Linux子系统)
所以推出这个三个插件的重点在于服务使用Windows系统但有Linux开发需求的用户群体
前言
这篇文章只介绍Remote-SSH
的配置与使用,因为Remote-Containers
和Remote-WSL
我还未使用到,所以想了解它们的朋友可以参考VSCode官网给出的详情文档,也可以自动百度或者谷歌相关文章!以下是测试环境和工具
- MacOS
- VSCode
- 远程主机:CentOS Linux release 7.4.1708 (Core)
安装
打开VSCode软件,点击最左侧活动栏内的 “扩展” 小图标,然后搜索 Remote SSH
并安装即可。安装完成后在 “扩展” 的下方会多出一个类似电脑屏幕的小图标
配置密钥
创建密钥
使用ssh-keygen命令创建的密钥,会在本地~/.ssh/
的目录内生成两个文件id_rsa-remote-ssh
和id_rsa-remote-ssh.pub
,我们要部署的是id_rsa-remote-ssh.pub
公钥内容
1 | ssh-keygen -t rsa -b 4096 -f ~/.ssh/id_rsa-remote-ssh |
参数说明
-t 指定要创建的类型
-b 密钥长度
-f 指定用来保存密钥的文件名
id_rsa-remote-ssh 名字可以随意定义
上传公钥到远程服务器
- mac拷贝公钥命令
pbcopy < ~/.ssh/id_rsa-remote-ssh.pub
- ssh登陆远程服务器
- 创建 authorized_keys 文件,并把刚才使用pbcopy命令拷贝的公钥内容,粘贴到此文件内保存
- 去除 /etc/ssh/sshd_config 内
PubkeyAuthentication
前的 # 号 systemctl restart sshd.service
重启远程服务器的ssh服务
配置Remote-SSH插件
按照图片所示,在用户级目录下的 .ssh 内创建一个配置文件(即/Users/your-host-name/.ssh/config),并在该文件内填写相应内容
如果你想连接多台远程服务器,继续在后面追加配置内容即可
1 | Host xxx # xxx 自定义连接名称 |
连接远程服务器
在VSCode左侧 “CONNECTIONS” 下找到你刚才创建的服务器名称,然后右键选择打开的方式
Connect to Host in Current Window 在当前窗口中连接到主机
Connect to Host in New Window 在新窗口中连接到主机
打开任意文件编辑后保存,它就会自动保存到远程服务器了(^_^)