Win10环境下配置VScode远程开发ssh-remote(免密登录)

问题背景:

在开发或者做实验的过程中,我们经常会用到远程服务器或者Github的项目,而我服务器上的项目只能在Jupyter Notebook上编写(或许可以在其他IDE上写,但我不知道)。而我们喜欢用的IDE比如Pycharm、轻量级的VScode,如何在本地的IDE上使用服务器的项目且快速、方便地写代码呢?这就是今天要详细介绍的VScode配置免密ssh+remote,一旦连接成功,我们就可以在本地自己喜欢的IDE上操作远程服务器端的项目了。

环境准备:

1.Win10

2.VScode(VSCodeUserSetup-x64-1.36.1)友情提供下载地址 ?VScode官网下载强烈推荐VScode,比Pycharm好用得多得多得多,因为它是轻量级的!下载只需要几十M!

3.有一台远程可用的服务器

配置步骤:

1.在本地配置服务器的免密登录

这样做的目的是,每次用VScode打开远程服务器的时候,就不用输入一些繁琐的IP、密码等一类的信息了。

1)cmd打开命令提示符

2)在cmd下输入 

ssh-keygen -t rsa -b 4096 

生成SSH密钥和公钥(如下图红框所示)

Win10环境下配置VScode远程开发ssh-remote(免密登录)_第1张图片

(我记得此后连敲三下Enter就完成了,密钥id_rsa和公钥id_rsa.pub文件都默认保存在(C:\User\用户/.ssh)文件夹下)

Win10环境下配置VScode远程开发ssh-remote(免密登录)_第2张图片

3)将公钥文件id_rsa.pub传到远程服务器的authorized_keys文件中

在cmd下输入⬇️:

SET REMOTEHOST=your-user-name-on-host@host-fqdn-or-ip-goes-here

scp %USERPROFILE%\.ssh\id_rsa.pub %REMOTEHOST%:~/tmp.pub
ssh %REMOTEHOST% "mkdir -p ~/.ssh && chmod 700 ~/.ssh && cat ~/tmp.pub >> ~/.ssh/authorized_keys && chmod 600 ~/.ssh/authorized_keys && rm -f ~/tmp.pub"

* 解释一下:

第一行作用相当于设置变量名,REMOTEHOST设置格式为“你在服务器的用户名@服务器的ip地址”

例如我在服务器的用户名是“lpy”,远程服务器的ip为49.52.10.120,那么我的第一行代码就是

SET [email protected]

第二行scp命令的详细知识可以参考scp使用说明,它是Linux系统下基于ssh登陆进行安全的远程文件拷贝命令。知道这条命令的作用之后,我们就能知道前半部分是本地公钥文件的位置,后半部分是远程服务器端当前目录下名为tmp.pub的文件,我们要把本地的公钥拷贝到这个临时文件里。

 %USERPROFILE%就是本地主机的用户名,在C:\Users这里找,%REMOTEHOST%是我们刚刚已经SET过的哦,就不用管它啦。

至此我们在命令提示符这里的工作已经全部完成啦,是不是很简单!!接下来我们继续哦~

2.VScode上的配置

1)首先打开已经下载好的VScode,下载插件Remote-SSH,步骤如下。

Win10环境下配置VScode远程开发ssh-remote(免密登录)_第3张图片

插件下载完毕后,我们可以发现,功能列多了一个图标

Win10环境下配置VScode远程开发ssh-remote(免密登录)_第4张图片

2.同时按Ctrl+Shift+p显示如下

Win10环境下配置VScode远程开发ssh-remote(免密登录)_第5张图片

我们选第一行的内容得到下面的页面,继续选择第一行内容

Win10环境下配置VScode远程开发ssh-remote(免密登录)_第6张图片

我们可以得到config文件,内容如下

Host name-of-ssh-host-here
    User your-user-name-on-host
    HostName host-fqdn-or-ip-goes-here

举个例子,我的设置为

保存即可(现在可以看到你配置的机器啦 csffm2)

Win10环境下配置VScode远程开发ssh-remote(免密登录)_第7张图片

3)点击红框处的图标

Win10环境下配置VScode远程开发ssh-remote(免密登录)_第8张图片

等待VS Code建立连接后就可以通过File > Open或File > Open Workspace直接打开远程机器上的文件或文件夹进行开发调试啦~

Win10环境下配置VScode远程开发ssh-remote(免密登录)_第9张图片

左下角表面我已经连接成功

中间方框就是我服务器上的项目,完成!Yeap!!补充一点就是,师兄说VScode这里建立的是服务器端的一个映射,也就是说这里的环境是服务器端的,你在服务器端下载的所有开发包,在VScode这里都是可以用的,而且如果你之后还会在VScode下载其他包的话,服务器端也是会有的。

参考链接:https://code.visualstudio.com/docs/remote/troubleshooting#_installing-a-supported-ssh-client

VScode里面,若左边工具栏没有了小电脑的标志最好的解决办法就是uninstall后install,因为插件很小所以这样的操作是最快最省事儿的!Python也是,如果解释器找不到了就重装一下。

你可能感兴趣的:(VScode,Remote-SSH)