当前位置: 首页 > news >正文

完整教程:linux离线环境局域网远程ssh连接vscode

1.前提保证

安装并配置好 ssh 服务,并且,本地主机和需要远程的主机和在同一个局域网内.

2. vscode安装远程所需扩展及配置

2.1安装扩展

vscode 扩展中搜索Remote - SSH,下载安装

1.2.1 通过 ssh 连接命令连接

vscode 中依次点击 远程资源管理器->新建远程,在打开的连接命令窗口中输入命令(或者直接快捷键 ctrl + shift + p) 然后输入:

ssh @:[port]

示例:ssh dgf@127.0.0.1:

  • user: 是在远程服务器上的用户名
  • hostname: 远程服务器的主机名或 IP 地址
  • port: SSH 连接的端口号(默认为 22)

输入后按Enter键选择要更新的配置文件,一般选择第一个也就是

Host:这是一个主机别名,你可以使用这个别名来代替实际的主机名进行连接.
HostName:这是指定远程主机的 IP 地址或主机名.
Port:这是指定 SSH 连接的端口号.
User:这是指定用于连接远程主机的用户名.

如果要配置多个远程,继续在此文件追加配置即可

1.3.1

点击远程资源管理器刷新,此时远程资源管理器会出现刚配置的远程连接,根据需要选择在当前窗口连接在新窗口中连接,此时会让你输入密码,然后会在远程端下载所需文件(需要联网),如果无法联网,请看 离线下载vscode-server并安装

2. 离线下载vscode-server并安装
如果远程端不能联网可以下载包离线安装,下载 vscode-server 的 url 需要和 vscode 客户端版本的 commit-id 对应.通过 vscode 面板的帮助->关于可以获取该信息,复制信息,我当前版本如下(提交后面对应的就是 commit_id):

2.1 旧版离线包下载

vscode-server 下载地址如下,其中 commit_id 是上面复制的提交 id:

x86:
https://update.code.visualstudio.com/commit:${commit_id}/server-linux-x64/stable
arm:
https://update.code.visualstudio.com/commit:${commit_id}/server-linux-arm64/stable

将下载的文件 vscode-server-linux-x64.tar.gz 解压解包后名为 vscode-server-linux-x64 文件夹改名为 ${commit_id} 放在 /home/${user}/.vscode-server/bin/ 目录下.

2.2 新版离线包下载

在某次更新后远程端的 .vscode-server 目录结构发生变化:

.vscode-server┣━ bin  # 存放旧方法下的vscode commit相关文件┃   ┗━ ${commit_id1}┃   ┗━ ${commit_id2}┃   ┗━ ···┣━ cli  # 存放新方法下的vscode commit相关文件┃   ┗━ servers┃   ┃   ┗━ Stable-${commit_id}┃   ┃   ┃   ┗━ server┃   ┃   ┃   ┗━ ···┃   ┃   ┗━ ···┃   ┗━ iru.json  # 存放最近的vscode commit_id┣━ code-${commit_id}  # 存放vscode_cli_alpine_x64_cli.tar.gz解压后名为code的文件,并将其改名为code-${commit_id}┣━ data┗━ extensions

现在需要安装两个文件,两个文件的下载地址如下:

x86:
https://vscode.download.prss.microsoft.com/dbazure/download/stable/${commit_id}/vscode-server-linux-x64.tar.gz
https://vscode.download.prss.microsoft.com/dbazure/download/stable/${commit_id}/vscode_cli_alpine_x64_cli.tar.gz
arm:
https://vscode.download.prss.microsoft.com/dbazure/download/stable/${commit_id}/vscode-server-linux-arm64.tar.gz
https://vscode.download.prss.microsoft.com/dbazure/download/stable/${commit_id}/vscode_cli_alpine_arm64_cli.tar.gz

第一个文件 vscode-server-linux-x64.tar.gz 解压解包后名为 vscode-server-linux-x64 文件夹改名为 server 放在 /home/${user}/.vscode-server/cli/servers/Stable-${commit_id}/ 目录下.

第二个文件 vscode_cli_alpine_x64_cli.tar.gz 解压解包后名为 code 的文件改名为 code-${commit_id}放在/home/${user}/.vscode-server/目录下

2.3 无法连接可能问题
1.权限问题
如果仍然连接不上,则可能需要修改.vscode-server文件夹及其子目录的权限,例如权限改为700,再尝试连接:

chmod -R 700 /home/${user}/.vscode-server/


2.ssh 设置问题
打开远程主机的 sshd_config 文件,一般在/etc/ssh/sshd_config文件,找到AllowTcpForwarding no这一行,将 no 改为 yes,然后保存退出.

然后重启 ssh 服务:

sudo systemctl restart sshd


3.known_hosts 文件问题
如果仍然连接不上,则可能是由于 known_hosts 文件问题导致的,如果你使用了相同的 ip 地址连接过不同主机就会出现此问题,可以尝试删除 known_hosts 文件,然后再尝试连接,本地主机下执行以下命令:

# powershell
rm $env:USERPROFILE\.ssh\known_hosts
# cmd
del %USERPROFILE%\.ssh\known_hosts

免登录连接

参考大佬:

https://blog.csdn.net/qq_43623902/article/details/136258880

http://www.jsqmd.com/news/41348/

相关文章:

  • 01命题逻辑的基本概念
  • 鲜花:记梦4
  • 第26天(简单题中等题 二分查找、贪心算法)
  • invalid literal for int() with base 10: abc中的base 10是什么意思? 另外它是怎么知道abc的?
  • byd秘钥 - MKT
  • NSubstitute之Substitute.ForT
  • DAY1 JAVA PreLearning
  • 【服务器】服务器被攻击植入了挖矿病毒,CPU一直占用100%,@monthly /root/.cfg/./dealer病毒清除 - 实践
  • 动态规划实践:数字三角形问题分析
  • 第4章 AI项目管理新范式:从交付功能到交付价值
  • 牛客101:链表 - 教程
  • LNCPC 2025 游寄
  • 第3章 传统项目管理在AI中的局限
  • Python 异常处理全面详解(附丰富实例)
  • IServiceCollection和IServiceProvider
  • multisim 13 Problem: Accessing the database解决办法
  • 完整教程:Redis 事务机制:Pipeline、ACID、Lua脚本
  • Python 一维数据、二维数据及 CSV 文件操作全解析(附实例)
  • 银行核心账户体系、账务设计、会计核心(整合版)
  • 斐波那契数列相关恒等式
  • Python 文件操作全面详解:从基础到进阶(附丰富实例)
  • 银行中外汇的由来(金融产品经理必读)
  • AI元人文框架:意义世界的探索引擎
  • abc432
  • 20232310 2025-2026-1 《网络与系统攻防技术》实验五实验报告
  • 实用指南:开源 Linux 服务器与中间件(七)数据库--MySQL
  • 版本控制与GitLab完整实践指南 - 指南
  • 利用Myo臂环采集肌电信号和角速度来建立实时手势识别
  • [MySQL] 基础操控
  • 公告栏