vscode 通过 SSH 远程连接 linux 服务器
SSH服务详解(一)–Linux SSH 服务器与客户端的安装与启动
SSH服务详解(二)–使用私钥登录 SSH 服务器(免密登录)
SSH服务详解(八)– vscode 通过 SSH 远程连接 linux 服务器
- SSH 服务器运行在 ubuntu 18.04.1
- SSH 客户端在 Windows10
前言
开发过程中,代码和编译器一般放在 linux 服务器中,但是平常使用的系统又是 window,所以本文通过 vscode 来连接远程 linux 服务器,这样,在 windows 的 vscode 中就可以查看,修改及编译代码,本文将介绍如何通过 vscode 连接到 linux 服务器
有一点需要注意的是,SSH 客户端和服务器需要在同一局域网中,或者有公网 IP,楼主当前使用的开发环境为,windows10 + vmware ubuntu 虚拟机
安装 Remote-SSH 插件
在 vscode 的扩展中搜索插件 Remote-SSH
并安装,安装完成之后 vscode 会多出一个 远程资源管理器
的图标,如下图所示
新建 SSH 连接
远程资源管理器 -> SSH -> 打开 SSH 配置文件,选择对应的文件
这里楼主选择当前用户的配置文件
C:\Users\86156\.ssh\config
在文件中输入如下内容
Host 192.168.0.102
HostName 192.168.0.102
User tyustli
IdentityFile C:\Users\86156\.ssh\id_rsa
保存之后并刷新远程,可以看到设置的远程服务器的地址
选择对应的服务器地址连接即可
错误处理
建立连接时,可能因为权限问题导致连接失败,提示 Could not establish connection to
,或者 试图写入的管道不存在
等错误
解决方法比较简单,具体可以参考
SSH 服务详解 (三)-- 使用 SSH 代理的 添加 SSH 私钥章节
为简化步骤,在 powershell 执行如下三行命令即可
给系统用户读权限
icacls .\id_rsa /c /t /grant system:R
禁用继承
icacls .\id_rsa /c /t /inheritance:r
给当前用户读权限 (tyustli: 为当前用户名,楼主当前用户为:86156,改为 86156 即可)
icacls .\id_rsa /c /t /grant tyustli:R
上述三条命令执行完成之后再次连接即可
总结
vscode 通过 SSH 连接远程 linux 服务器步骤还是比较简单的,关键点在于 SSH 密钥文件权限的修改,具体方法可以参考本 SSH 系列文章。