首页 > 解决方案 > 在仅允许入站 SSH 连接的目标计算机上使用 VSCode 中的“远程 SSH”

问题描述

有没有办法使用 VSCode Remote SSH 扩展与不允许出站 Internet 连接的远程主机进行交互?

是否可以从另一个系统下载 vscode-server 文件并复制到主机?

我读了这个,但我无法将服务器连接到互联网。

标签: sshvisual-studio-codevscode-remote

解决方案


当您连接到主机时,它会执行一个 bash 脚本,该脚本会 wgets 或 curl 一个 tarball 并将其解压缩到您的主目录中的一个目录中。这是一个离线解决方法。

  1. 尝试连接,让它失败

  2. 在服务器上,获取提交 ID

    $ ls ~/.vscode-server/bin
    553cfb2c2205db5f15f3ee8395bbd5cf066d357d
    
  3. 下载 tarball,将 $COMMIT_ID 替换为上一步中的提交号

稳定版

https://update.code.visualstudio.com/commit:$COMMIT_ID/server-linux-x64/stable

对于内幕版本

https://update.code.visualstudio.com/commit:$COMMIT_ID/server-linux-x64/insider

  1. 将压缩包移动到~/.vscode-server/bin/$COMMIT_ID/vscode-server-linux-x64.tar.gz

  2. 在此目录中提取 tarball

    $ cd ~/.vscode-server/bin/$COMMIT_ID
    $ tar -xvzf vscode-server-linux-x64.tar.gz --strip-components 1
    
  3. 重新连接

您仍然需要手动安装任何扩展。市场上所有扩展程序旁边都有一个下载按钮。获得 .vsix 文件后,您可以通过 GUI 使用扩展管理器中的从 VSIX 安装选项安装它们。

这有点痛苦,希望他们改进这个过程,但如果你有一个基于网络的主目录,你只需要这样做一次。


推荐阅读