VS Code Remote Tunnels 通过出站 HTTPS 连接微软中继服务建立加密反向隧道,无需公网 IP 或防火墙配置,依赖设备 OAuth 令牌、短期证书及签名时效 URL 实现安全免配;支持跨设备开发、教学协作与远程调试,但仅限 HTTP/HTTPS 和 VS Code 协议,不支持 TCP 转发。

VS Code Remote Tunnels 不是把本地端口直接暴露给公网,而是通过微软托管的中继服务建立加密反向隧道——你的机器主动连接云端中继节点,所有流量经 TLS 加密、双向认证,不开放任何入站端口,也不依赖你配路由器或防火墙。
它怎么做到“安全又免配置”?
核心机制是“出站优先”:本地 VS Code 启动后,会通过 HTTPS(443 端口)主动连接微软的 tunnel relay 服务,握手时使用设备级 OAuth 令牌和短期证书。公网用户(比如协作同事)拿到的是一个带签名的、有时效的 tunnel URL(形如 https://abcd1234-5678.vsc.tun01.vscode-cdn.net),该 URL 只能访问你明确共享的端口或远程开发环境,且默认 24 小时自动过期。
- 没有公网 IP?没关系,NAT 或企业内网下也能连
- 不用开 22、3000、5000 这类端口,防火墙零改动
- 每次连接都需你本地确认(弹窗授权),防静默接入
- 支持细粒度权限控制:可限制只允许打开文件、不允许终端或调试
谁在用?适合什么场景?
典型用户不是想搭个人博客或 API 服务,而是需要临时、可控、低门槛的远程协作或跨设备开发:
- 学生交作业前请助教快速看一眼本地运行效果(比如 React 预览页)
- 在家调试公司内网无法直连的测试服务,用隧道把本地 dev server “透出去”给 QA 验收
- 用 iPad 或 Chromebook 连自己笔记本上的完整 VS Code 环境,写代码不卡顿
- 面试时共享一个干净的编码环境,对方只能看到你开的文件夹和允许的端口
几个关键注意事项
它很轻量,但不是万能代理,用之前看清边界:
- 免费账户最多同时开启 4 个隧道;付费 GitHub / Microsoft 账户可升到 10 个
- 不支持 TCP 端口转发(比如数据库、SSH、自定义协议),只支持 HTTP/HTTPS 和 VS Code Remote 协议
- 中继节点目前主要部署在美东、西欧、日本等区域,亚洲用户可能有轻微延迟(通常
- 本地机器必须在线且 VS Code 正在运行——关机、休眠或退出客户端,隧道就断了
基本上就这些。它不复杂,但容易忽略“它是 VS Code 的延伸,不是 ngrok 替代品”。用对场景,就是一把安静又可靠的钥匙。










