在远端的服务器Linux系统没有IDE界面,vscode界面部署在个人电脑。通常大多数的开发和编辑环境都是系统隔离的。
比如说你用win10机器开启ssh客户端连接CentOS开发机,这时候你的编辑IDE和开发环境是隔离的。表现在你在代码编辑不会实时刷新到开发环境进行编译测试验证。
当然假如个人电脑使用Win10,也可以用使用win10提供的wsl(Window Subsystem for Linux)。但是此时也是vscode不能像随意打开本地文件夹一样打开WSL的代码。
其实打通系统隔离的方法有挺多的。比如说用samba共享服务器,还比如说用git做同步,编辑这边提交更改,开发环境那边pull下来。
如果这两个办法都不能用呢,比如远程开发机在外网ip,或者做了机器隔离,或者只开通了ssh接口登录。所以这时需要做远程开发环境的配置SSH通道开发。
Remote-Development包括了连接SSH开发机、WSL、Container的套件。在vscode插件栏中搜索remote。
其中包括Remote-WSL、Remote-SSL、Remote-Container。这三个套件可以不用单独安装,只需要下载安装Remote Development,就打包了以上三个插件。
安装完成之后在状态栏出现这个小图标。点击可以唤醒远程命令弹窗。
这里以最常用的连接ssh远程开发机来示范怎么配置环境
在远程SSH命令弹窗选择“Remote-SSH: Connect to Host...”。在接下来的窗口输入“用户名@主机ip”。需要注意的是ip右边不要保留空格。比如下面我输入了root@192.168.159.128连接本地的一台vm虚拟机。
紧接着vscode会启动win10的ssh客户端,对远端发起ssh连接。在接下来的弹窗中,输入密码。
可能会弹出这个首次指纹不匹配确认(因为首次登录,服务器没有存储客户端登录的验证指纹),需要手动确认的弹窗,点击continue即可。
登录成功后,状态栏会出现远端ip机器
公私钥的登录原理是在客户端机器和服务端机器建立ssh通道。这个通道建立依赖于非对称加密原理。在服务端配置公钥,客户端持有私钥。只有持有私钥的认证客户端(或者持有私钥的用户)才能够登录服务器。公私钥替代密码的方式便是这个连接的特性。
生成一对公私钥:
把产生的公钥对拷贝安装到自己的本机,ssh-copy-id root@192.168.159.128。ssh-copy-id 将本机的公钥复制到远程机器的authorized_keys文件中,ssh-copy-id安装到远程机器的home, ~./ssh , 和 ~/.ssh/authorized_keys。
下载私钥到你的客户端编辑机器。并存放在系统的某个路径。
接下来就开始配置ssh连接配置。在原来那个界面选择Add New SSH Host.
接下来选择一个config文件。点击会打开这个config文件。
编辑config文件。按照以下配置,或者自定义选项。
保存编辑这个文件,接下来重新打开连接弹窗,就会出现这个ssh配置。
已经连接上这个hostname的远程开发机器
连接上的窗口会出现类似的界面
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。