使用;远程SSH“;在目标计算机上仅允许入站SSH连接的VSCode中
有没有办法使用VSCode远程SSH扩展与不允许出站internet连接的远程主机进行交互 是否可以从其他系统下载vscode服务器文件并复制到主机使用;远程SSH“;在目标计算机上仅允许入站SSH连接的VSCode中,ssh,visual-studio-code,vscode-remote,Ssh,Visual Studio Code,Vscode Remote,有没有办法使用VSCode远程SSH扩展与不允许出站internet连接的远程主机进行交互 是否可以从其他系统下载vscode服务器文件并复制到主机 我读了,但无法将服务器连接到internet。当您连接到主机时,它会执行一个bash脚本,该脚本会创建或卷曲一个tarball,并将其提取到主目录中的目录中。这里有一个离线解决方法 尝试连接,让它失败 在服务器上,获取提交id $ ls ~/.vscode-server/bin 553cfb2c2205db5f15f3ee8395bbd5cf06
我读了,但无法将服务器连接到internet。当您连接到主机时,它会执行一个bash脚本,该脚本会创建或卷曲一个tarball,并将其提取到主目录中的目录中。这里有一个离线解决方法
$ ls ~/.vscode-server/bin
553cfb2c2205db5f15f3ee8395bbd5cf066d357d
$ cd ~/.vscode-server/bin/$COMMIT_ID
$ tar -xvzf vscode-server-linux-x64.tar.gz --strip-components 1
这是一种痛苦,希望他们能改进这一过程,但是如果你有一个基于网络的主目录,你只需要做一次。a解决办法我做了以下工作: 桌面
~/.ssh/config
...
Host *
RemoteForward 54321
...
远程:~/bin/wget
,其中通过.bashrc将~/bin
添加到路径中
#!/bin/bash
export LD_LIBRARY_PATH=$HOME/opt/lib/tsocks/
export TSOCKS_CONF_FILE=$HOME/opt/tsocks/tsocks.conf
$HOME/bin/tsocks /usr/bin/wget $@
远程:~/opt/tsocks/tsocks.conf
server = 127.0.0.1
server_port = 54321
server_type = 5
注tsocks
二进制文件已被压缩到~/bin/tsocks
,并且~/opt/tsocks/
已使用libtsocks创建。因此
通常存储在/usr/lib64/libtsocks中。因此
这是一种变通方法,允许我拥有wget功能,而不必干扰我的个人资料以外的任何内容即可使其正常工作(例如:不需要root…即使我有它)。正在添加一项新功能以支持脱机安装
但是,现在可以通过远程SSH扩展中的新用户设置来解决这个问题。如果启用设置remote.SSH.allowLocalServerDownload,则扩展将首先在客户端上安装VS代码服务器,然后通过SCP将其复制到服务器
注意:这目前是一项实验性功能,但在下一版本中默认情况下将启用
打开vscode->关于
Version: 1.46.1
Commit: cd9ea6488829f560dc949a8b2fb789f3cdc05f5d
Date: 2020-06-17T21:17:14.222Z
Electron: 7.3.1
Chrome: 78.0.3904.130
Node.js: 12.8.1
V8: 7.8.279.23-electron.0
OS: Darwin x64 17.7.0
$COMMIT \-ID=cd9ea6488829f560dc949a8b2fb789f3cdc05f5d当前版本的VS代码:1.48.2
我只是在服务器端终止wget进程,让客户端下载归档文件并将其传输到服务器端。这很简单,如下所示
确保在settings.json中进行了设置
执行下面的shell脚本
#查找
ps aux | grep wget | grep vscode服务器
#终止进程
杀死-9
#然后等待客户端下载和传输
#可选项:如果您想知道进度,只需
cd~/.vscode服务器/bin//
手表-n 1-d ls-rthl
连接到什么?您正在尝试在没有internet连接的情况下安装VSCode吗?请澄清您在说什么。@ifconfig抱歉我的英语不好,我想使用vscode的ssh远程扩展,客户端连接到internet,但服务器不连接vscode远程访问基于客户端和服务器计算机都连接到internet的前提。否则,他们就无法沟通。如果您的客户端设备与服务器设备位于同一网络上,则可能存在一种变通方法。服务器是armhf而不是amd64。我将url更改为服务器linux armhf/stable,但显示404@aviso您可以添加手动安装扩展的方式吗?下载vsix并将其scp到所需的服务器是一回事,但尝试从vsix手动安装会查看本地主机,而不是远程主机。请提供清晰的说明,我将更新它们。@WSLUser如果您从客户端GUI安装它们。只要把它们放在一个你可以在客户端浏览的地方。在VScode中,连接到远程主机,然后在扩展管理器中单击右上角的三个点,然后选择InstallfromVSIX。复制和安装扩展时会有延迟,但是您应该会在扩展管理器中看到它。我可以确认此方法也适用于远程Docker容器。我正在将Windows 10 Hyper-V与Linux容器一起使用,并收到下载VS code Server失败的(https://update.code.visualstudio.com/commit:$COMMIT_ID/server-linux-x64/stable):HTTP 407-authenticationrequired)
,大概是因为我的公司代理。请注意,如果您像我一样多次尝试安装,则在~/.vscode server/bin/
中会有一个文件夹,每个尝试都会附加一个时间戳。删除所有文件并留下一个只有提交ID(无时间戳)的文件夹。谢谢,即使没有解包.tar文件,也能正常工作,只需将其放在那里。这允许您使用“在SSH中安装”在远程实例上安装扩展吗?是,这使您可以安装远程扩展以及主服务器。如果您是主机上唯一使用VSCode的人,这将非常有用。这只解决了客户端有访问权限但远程主机没有访问权限的情况。上面的答案仍然是正确的解决方案。此选项现在已替换为remote.SSH.allowLocalServerDownload
将“始终”、“自动”和“关闭”作为选项
"remote.SSH.allowLocalServerDownload": true,