系统需求

我们在 VSCode 下载由微软官方推出的 Remote SSH 插件


查看一下里面的描述,对于远程机器的要求如下:

  • Local: A supported OpenSSH compatible SSH client must also be installed(本地机器需要一个 SSH 客户端)
  • Remote SSH host: A running SSH server on(远程机器还需要一个一直运行的 SSH Server)

远程机器的支持情况详情和其它信息请参考 :System requirements - Remote Development using SSH,下面以本地 Windows -> 远程 Ubuntu 为例

环境搭建

整个过程可以参考官方文档:Remote development over SSH

Step-1:本地安装 SSH 客户端

本地 SSH 客户端支持参见:Installing a supported SSH client

这里我们选择安装 Git for windows,具体过程略,相信大部分看到这里的都已经装过了

Step-2:远程机器安装 SSH Server

远程 SSH 服务端支持参见:Installing a supported SSH server

以 Ubuntu 为例

sudo apt-get install openssh-server

Step-3:创建公私钥

一般选择创建 RSA 公私钥对,如果之前已经创建过可以跳过这步,可以参考:Ubuntu SSH Keys Guide。其中 Windows 下的命令如下,按照命令提示的指引创建即可

ssh-keygen -t rsa -b 4096

密钥默认保存在 C:\Users\{username}\.ssh 下,如下图

其中 id_rsa 为私钥不要外传,id_rsa.pub 为公钥可以传递出去

Step-4:设置 SSH Key 方式登录

可以参考:Configuring key based authentication,需要将公钥拷贝到远程机器上

由于我在虚拟机上操作,这里直接将其保存在虚拟机的 ~/.ssh/authorized_keys 下(其中 ~/home/<username>),在虚拟机下输入以下命令

mkdir ~/.ssh
chmod 700 ~/.ssh
cp id_rsa.pub ~/.ssh/authorized_keys
chmod 600 ~/.ssh/authorized_keys

本地通过 ssh <username>@<host> 测试登录情况,其中 username 为远程主机上已存在的用户(即前面远程主机保存公钥的用户),host 为远程主机 IP(虚拟机的 IP 可通过在虚拟机上 ifconfig 查看)。

$ ssh zzy@192.168.12.130
The authenticity of host '192.168.12.130 (192.168.12.130)' can't be established.
ECDSA key fingerprint is SHA256:CCM3ZNM+5HmvljBiOpMVg3clozTGhvS8VKTvd5UYSuI.
Are you sure you want to continue connecting (yes/no/[fingerprint])? yes

首次登录会提示 ECDSA key fingerprint,同意后认为该 IP 是已知可信的,将会保存在本机 C:\Users\{username}\.ssh\known_hosts 下,如下图


至此,SSH 远程连接已经设置完成

Step-5:在 VSCode 设置 SSH

通过 ctrl + shift + p 输入 Remote-SSH: Open SSH Configuration file... 并选择,如下图

选择默认的第一个 .ssh 下的 config 文件

设置如下

# Read more about SSH config files: https://linux.die.net/man/5/ssh_config
Host LocalVM-UbuntuHostName 192.168.12.130User zzyPort 22

其中 Host 为该远程主机的别名,Hostname 为远程机器 IP,User 为登录用户名(远程机器可用用户名),Port 为 SSH 连接端口默认为 22

保存后可以在侧栏看到刚刚的设置,如下图


点击上图的某个 target 右边的小图标,可以打开新窗口,或者 VSCode 左下角连接


至此,可以用 VSCode 愉快的玩耍啦!

远程主机安装 VSCode 扩展

TODO

参考

[1] VS Code Remote Development:https://code.visualstudio.com/docs/remote/remote-overview

[2] Remote development over SSH:https://code.visualstudio.com/docs/remote/ssh-tutorial

【Remote Development】VSCode 基于 SSH 进行远程开发相关推荐

  1. vscode私钥设置_VSCode远程开发配置指南

    凭借Windows10的大量组件和Visual Studio Code的强大插件,在Windows下远程开发Linux相关程序如今已经成为高效的选择.比起Vim,我更加喜欢VS Code,最主要的原因 ...

  2. JetBrains发布两项重要更新:基于IDE的远程开发解决方案、轻量级编辑器Fleet

    近日,JetBrains 对外发布两项重要产品更新:专为云端和其他服务器打造的远程开发解决方案,以及轻量级编辑器Fleet. 为IntelliJ 平台引入远程开发支持 在近期陆续发布的2021.3 版 ...

  3. VSCode的连Linux远程开发碰到的坑解决

    安装Remote-SSH并配置 首先打开你的VSCode,找到Extensions,搜索Remote,下载Remote-Developoment插件,会自动安装其他的Remote插件,其中会包含Rem ...

  4. 基于 SSH 的远程操作以及安全,快捷的数据传输转

    SSH 实现远程控制和数据传输的优势 SSH (Secure Shell) 是一个类似于 Telnet 和 RSH 的远程访问工具,最初设计的目的是为了取代安全性不高的 RSH,RCP 以及 RLOG ...

  5. vscode使用ssh连接远程Ubuntu服务器(记录)

    动机: vscode能够实时的显示服务器上的代码界面,还是相当方便的. 前提: 由于我们是通过局域网进行连接,因此前提是,本地电脑和服务器置于同一局域网,测试的方法通过cmd中的ping 即可,能pi ...

  6. 基于SSH框架实际开发时遇到的问题及解决办法

    1. 发现通过注解注入bean不起作用(对应的.java文件上没有'S'标记) 需要在pring .xml配置文件中加 <!-- 使用自动注解就必须配置加入自动扫描加载容器的包 -->&l ...

  7. sshfs(基于ssh挂载远程目录)

    linux系统 为了像本地一样访问远程主机上的目录,通常我们会在远程主机上使用nfs来导出目录,并在本地主机上mount这个nfs文件系统 需要安装fuse-sshfs包.ubuntu sudo ap ...

  8. VSCode 中利用 Remote SSH 连接远程服务器

    北京时间 2019 年 5 月 3 日,在 PyCon 2019 大会上,微软发布了 VS Code Remote.这是一个用来实现远程开发的功能插件,对于许多使用 Windows 进行开发,但是需要 ...

  9. 远程开发初探 - VS Code Remote Development

    如果你是学生,你还在你的 windows 电脑上为各种环境配置头疼的时候,你应该了解一下 Remote Development. 如果你喜欢 linux 的开发环境和舒适的 shell,但却不舍得抛弃 ...

最新文章

  1. UbuntuKylin技巧
  2. Richard Feynman, 挑战者号, 软件工程,自顶而下
  3. hdu 2602 Bone Collector
  4. mysql 查询调试_使用MySQL慢速查询日志进行调试
  5. python的中文含义-python __all__ 含义
  6. wxWidgets:exec 示例演示 wxExecute 和相关函数
  7. Zookeeper的典型应用场景(2)
  8. wordpress主题-响应式CUI2.0翠竹林博客主题wordpress模板分享
  9. Python 数据结构与算法——图出度和入度的计算
  10. HDOJ 1394 Minimum Inversion Number
  11. 习题9.38 查找字符串中的数字、字母
  12. 扫地阿姨看完都学会了!写给即将正在找工作的Java攻城狮,砥砺前行!
  13. 计算机配置音箱便宜,电脑音箱买什么价位的好 六款适合不同群体的音箱推荐...
  14. [AHK]定时运行脚本
  15. 计算机理论什么是信道容量,(信道容量知识总结.doc
  16. 《TPM原理及应用指南》深入研读 —— TPM介绍
  17. 原生汇率计算器系统源代码
  18. Python数据分析之股票双均线策略制定
  19. Python 时间序列异常点检测 | 详解 S-ESD 和 S-H-ESD
  20. 12.5--卡片式布局

热门文章

  1. Unity BIM模型导入调研
  2. 年底了,一起来撸个视频播放器吧!
  3. 计算机网络之应用层与传输层
  4. 字典树基础知识学习笔记
  5. 【pytest】pytest配置文件pytest.ini详解
  6. 黑猴子的家:Scala 中置类型
  7. 【读书笔记】数学之美(下)
  8. 计算思维(1)-质因数
  9. trc20和erc20、OMNI有什么区别
  10. 用户出示二维码向商家付钱