VS Code Remote Tunnels可安全暴露本地服务至公网,无需复杂网络配置。通过命令面板创建隧道,选择端口后生成唯一URL,支持身份验证与TLS加密,确保仅授权用户访问且数据安全,适用于展示项目、调试webhook等场景,兼顾便捷与安全。

你是否曾遇到需要让同事访问你本地运行的服务,或是想从外部网络连接到家里的开发环境?Visual Studio Code 的 Remote Tunnels 功能正是为此而生。它允许你安全地将本地开发服务器暴露到公网,同时无需手动配置路由器或启用不安全的端口转发。
什么是 VS Code Remote Tunnels?
Remote Tunnels 是 Visual Studio Code 内置的一项功能(自 v1.76 起默认集成),基于开源项目 code-server 和微软的隧道服务实现。它通过微软的安全中继服务器,在公网生成一个唯一 URL,将流量反向代理到你的本地机器,而无需开放防火墙端口或设置 DDNS。
这项功能特别适合以下场景:
- 展示本地运行的 Web 应用给远程团队成员
- 调试 webhook 回调(如支付、GitHub 钩子)
- 在没有公网 IP 的网络环境中提供临时访问
- 避免使用 ngrok 等第三方工具时的数据隐私顾虑
如何启用和使用 Remote Tunnels
使用过程非常简单,前提是已安装最新版 VS Code 并登录 Microsoft 或 GitHub 账号。
- 打开命令面板(Ctrl+Shift+P),输入 “Remote-Tunnels: Create Tunnel”
- 选择要暴露的本地端口(例如 3000、5173、8080)
- VS Code 会自动生成类似 https://yourname-3000.app.github.dev 的公网地址
- 将该链接分享给他人,他们即可访问你本地的服务
你可以随时关闭隧道,或设置为“仅限本地认证访问”以增强安全性。每个隧道都有独立权限控制,支持密码保护(即将推出)和访问日志查看。
安全机制如何保障本地环境?
Remote Tunnels 并非简单地开放端口,而是构建在多重安全设计之上:
- 反向连接机制:连接由本地客户端主动发起,不依赖入站端口开放,天然穿透 NAT 和防火墙
- 身份验证:只有登录相同账号的用户才能管理隧道,他人无法随意创建或关闭
- 加密传输:所有数据通过 TLS 加密,中继服务器无法窥探内容
- 最小权限原则:暴露的是指定端口,而非整个系统;不会赋予远程执行代码权限
相比传统 SSH 反向隧道或 ngrok,它减少了配置复杂度,同时由微软基础设施支撑,稳定性更高。
注意事项与最佳实践
虽然 Remote Tunnels 很方便,但仍需注意合理使用:
- 不要长期暴露敏感服务(如数据库、管理后台)
- 在共享链接时确认接收方可信,尤其是未启用密码保护前
- 企业环境中需遵守 IT 安全策略,避免绕过内部网络管控
- 免费版可能有连接数或带宽限制,高负载场景建议自建中继
基本上就这些。VS Code Remote Tunnels 把原本复杂的网络问题变得像分享文件一样简单,又不失安全底线。对于开发者日常协作来说,是个值得加入工具箱的功能。










