日常电脑使用丨VScode使用Remote SSH拓展连接到远程主机
VScode使用Remote SSH拓展连接到远程主机
1. Intro
SSH(Secure Shell),安全外壳协议
大部分Linux的远程连接都是基于SSH协议
本教程介绍通过VScode的Remote SSH插件连接到远程主机(虚拟机也同理)
2. Process
2.1. Background
Remote Host OS: Ubuntu24.04LTS
Local Host OS: Windows11
本地主机与远程主机运行在同一局域网下
大部分其他操作系统也类似
2.2. Software Prepare
由于Ubuntu24.04的Linux发行版中,默认没有ssh-server,因此需要先准备下载软件
-
Ubuntu端准备:
-
登入到Remote Host的terminal中
-
下载
sshsudo apt install ssh -
开启
ssh系统服务自动重启sudo systemctl enable ssh -
查询本机IP地址
ifconfig出现结果大概率类似
192.168.1.1
这就是你的远程主机的内网IP地址
如果是虚拟机则是你虚拟机使用的本机IP地址P.S. 如果显示没有
ifconfig命令,请先下载net-tools软件包sudo apt install net-tools
-
-
VScode运行端上准备
-
VScode中下载
Remote-SSH拓展
推荐直接下载Remote Development拓展包 -
连接到远程主机
flowchart LR A[状态栏远程连接按钮<br>屏幕最左下角]-->B[搜索栏<br>连接到主机]-->C[添加新的主机]-->D[输入ssh user@IPofRemoteHost] D-->E[输入密码] E-->F[连接成功] -
连接成功后,VScode会自动在远程主机上安装
VScode Server,并且会在远程主机上打开一个新的VScode窗口
-
2.3. Extension
-
通过ssh-key连接到远程主机,实现免密登录
-
生成ssh-key
ssh-keygen -t rsa -b 4096此处选择的是RSA加密方式,4096位的密钥长度
-
生成步骤介绍
P.S. 其中,如果觉得麻烦,可以使用默认路径,不设置密码,一路Enter即可
此处的路径是你的SSH私钥(不带.pub)和公钥(带.pub)的保存路径即名称
密码是使用SSH私钥使用时的密码,但因为我们本来就是为了免密,因此一般不设 -
导入公钥到Remote Host
关于不方便复制时,将公钥上传到Remote Host的方法:(通过SSH传输)
ssh-copy-id -i ~/.ssh/id_rsa.pub user@IPofRemoteHost -
VScode中指定私钥路径
在VScode中,打开Remote SSH配置文件,在你刚刚导入的主机配置下添加如下配置项IdentityFile ~/.ssh/id_rsa其中,
~/.ssh/id_rsa是你的私钥路径,一般在C:\Users\username\.ssh\id_rsa -
此时,一般情况下,你已经可以通过ssh-key连接到Remote Host了
-
-
以下推荐一些工具
-
Termius辅助导入公钥
Termius是一个很好的SSH CLI 和 SFTP Client
支持多平台使用
如果有Github学生认证可以免费使用Pro版-
生成密钥对(以rsa为例)
-
创建Host,先通过密码登入
-
导入公钥
-
Host编辑添加密钥登入项
此时已经可以在Termius通过ssh-key登入到Remote Host了
-
将Termius托管的私钥保存到本地
Termius是直接将私钥托管在软件中,如果我们需要通过Windows Terminal、VScode等其他软件连接到远程主机,我们需要将私钥保存到本地
P.S.注意私钥文件不能有后缀
我们就手动保存了私私钥
-
-
FinalShell
另外一个比较好用的SSH Client
支持实时数据监控
此处不多赘述
-
3. Reference
更多推荐

所有评论(0)