【Remote Development】VSCode 基于 SSH 进行远程开发
系统需求
我们在 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 进行远程开发相关推荐
- vscode私钥设置_VSCode远程开发配置指南
凭借Windows10的大量组件和Visual Studio Code的强大插件,在Windows下远程开发Linux相关程序如今已经成为高效的选择.比起Vim,我更加喜欢VS Code,最主要的原因 ...
- JetBrains发布两项重要更新:基于IDE的远程开发解决方案、轻量级编辑器Fleet
近日,JetBrains 对外发布两项重要产品更新:专为云端和其他服务器打造的远程开发解决方案,以及轻量级编辑器Fleet. 为IntelliJ 平台引入远程开发支持 在近期陆续发布的2021.3 版 ...
- VSCode的连Linux远程开发碰到的坑解决
安装Remote-SSH并配置 首先打开你的VSCode,找到Extensions,搜索Remote,下载Remote-Developoment插件,会自动安装其他的Remote插件,其中会包含Rem ...
- 基于 SSH 的远程操作以及安全,快捷的数据传输转
SSH 实现远程控制和数据传输的优势 SSH (Secure Shell) 是一个类似于 Telnet 和 RSH 的远程访问工具,最初设计的目的是为了取代安全性不高的 RSH,RCP 以及 RLOG ...
- vscode使用ssh连接远程Ubuntu服务器(记录)
动机: vscode能够实时的显示服务器上的代码界面,还是相当方便的. 前提: 由于我们是通过局域网进行连接,因此前提是,本地电脑和服务器置于同一局域网,测试的方法通过cmd中的ping 即可,能pi ...
- 基于SSH框架实际开发时遇到的问题及解决办法
1. 发现通过注解注入bean不起作用(对应的.java文件上没有'S'标记) 需要在pring .xml配置文件中加 <!-- 使用自动注解就必须配置加入自动扫描加载容器的包 -->&l ...
- sshfs(基于ssh挂载远程目录)
linux系统 为了像本地一样访问远程主机上的目录,通常我们会在远程主机上使用nfs来导出目录,并在本地主机上mount这个nfs文件系统 需要安装fuse-sshfs包.ubuntu sudo ap ...
- VSCode 中利用 Remote SSH 连接远程服务器
北京时间 2019 年 5 月 3 日,在 PyCon 2019 大会上,微软发布了 VS Code Remote.这是一个用来实现远程开发的功能插件,对于许多使用 Windows 进行开发,但是需要 ...
- 远程开发初探 - VS Code Remote Development
如果你是学生,你还在你的 windows 电脑上为各种环境配置头疼的时候,你应该了解一下 Remote Development. 如果你喜欢 linux 的开发环境和舒适的 shell,但却不舍得抛弃 ...
最新文章
- UbuntuKylin技巧
- Richard Feynman, 挑战者号, 软件工程,自顶而下
- hdu 2602 Bone Collector
- mysql 查询调试_使用MySQL慢速查询日志进行调试
- python的中文含义-python __all__ 含义
- wxWidgets:exec 示例演示 wxExecute 和相关函数
- Zookeeper的典型应用场景(2)
- wordpress主题-响应式CUI2.0翠竹林博客主题wordpress模板分享
- Python 数据结构与算法——图出度和入度的计算
- HDOJ 1394 Minimum Inversion Number
- 习题9.38 查找字符串中的数字、字母
- 扫地阿姨看完都学会了!写给即将正在找工作的Java攻城狮,砥砺前行!
- 计算机配置音箱便宜,电脑音箱买什么价位的好 六款适合不同群体的音箱推荐...
- [AHK]定时运行脚本
- 计算机理论什么是信道容量,(信道容量知识总结.doc
- 《TPM原理及应用指南》深入研读 —— TPM介绍
- 原生汇率计算器系统源代码
- Python数据分析之股票双均线策略制定
- Python 时间序列异常点检测 | 详解 S-ESD 和 S-H-ESD
- 12.5--卡片式布局