可通过VSCode官方Tunnels、SSH反向隧道或ngrok三种方式实现跨设备访问本地VSCode:Tunnels无需配置端口,自动分配HTTPS链接;SSH反向隧道依赖跳板机,保障数据本地化;ngrok提供临时加密域名,适合快速测试。

如果您希望在不同设备上无缝访问本地VSCode开发环境,但受限于网络位置或防火墙策略,则可能是由于本地开发机未暴露可被外部直接访问的端口。以下是实现此目标的多种方法:
本文运行环境:MacBook Air,macOS Sequoia
一、通过VSCode官方Tunnels服务启用远程访问
该方法利用VSCode官方提供的云端中继服务,自动为本地工作区分配唯一HTTPS隧道URL,无需配置公网IP或端口映射,且支持身份验证与实时同步。
1、确保已安装最新版VSCode桌面客户端(v1.90+)并登录Microsoft账户。
2、打开本地项目文件夹,在命令面板(Cmd+Shift+P)中输入“Tunnel: Create Tunnel”,回车执行。
3、选择是否公开访问:若仅限个人使用,勾选“Private”;若需协作,选择“Public”并确认安全提示。
4、等待隧道建立完成,状态栏将显示绿色图标及类似https://yourname-3000.vscode.dev的访问链接。
5、在任意浏览器中打开该链接,输入Microsoft账户授权后即可加载完整VSCode Web界面。
二、使用SSH反向隧道手动搭建访问通道
该方法不依赖第三方中继服务,通过已具备公网SSH访问权限的服务器作为跳板,将本地VSCode Server端口反向映射至远程服务器的指定端口,适用于对数据驻留有严格要求的场景。
1、在本地终端中执行命令:ssh -R 2222:localhost:3000 user@public-server-ip,其中3000为本地VSCode Server默认监听端口。
2、在远程服务器上编辑sshd_config,确保AllowTcpForwarding yes与GatewayPorts clientspecified已启用。
3、重启远程服务器SSH服务:sudo systemctl restart sshd。
4、在远程服务器执行:code --host --port 2222 --without-asking-passphrase启动VSCode Server实例。
5、从外部设备访问http://public-server-ip:2222,输入本地用户凭证完成登录。
三、借助ngrok临时暴露本地VSCode Server端口
该方法适用于快速测试或短期共享,ngrok会为本地HTTP服务生成随机子域名,并提供TLS加密与请求日志查看功能,无需服务器资源投入。
1、下载ngrok CLI并解压,执行ngrok config add-authtoken YOUR_TOKEN绑定账户。
2、确认本地VSCode Server已在运行(可通过code --status检查端口占用)。
3、在终端中运行:ngrok http 3000 --domain=your-subdomain.ngrok-free.app(如已申请免费子域名)。
4、终端输出中获取类似https://your-subdomain.ngrok-free.app的转发地址。
5、将该地址粘贴至浏览器访问,系统将自动重定向至VSCode Web客户端界面。










