VSCode的Remote Tunnels:将你的本地服务安全暴露到公网
发布时间 - 2026-01-06 00:00:00 点击率:次VSCode Remote Tunnels可安全共享本地Web服务。需安装tunnel CLI、登录微软账户;绑定端口创建命名隧道获取公网URL;支持密码保护或匿名访问;可通过CLI或VSCode图形界面管理;遇故障可用tunnel log排查。
如果您希望在没有公网IP或复杂网络配置的情况下,将本地运行的Web服务安全地分享给他人访问,则VSCode的Remote Tunnels功能可直接建立加密隧道,绕过路由器端口映射与防火墙限制。以下是实现该功能的具体步骤:
本文运行环境:MacBook Air,macOS Sequoia。
一、安装并登录VSCode Remote Tunnels CLI
Remote Tunnels依赖独立的命令行工具,需先在本地系统中安装并完成微软账户认证,以获取隧道身份凭证和端点权限。
1、打开终端,执行命令安装tunnel CLI:curl -fsSL https://aka.ms/install-tunnel-linux | sh(macOS用户请替换为https://aka.ms/install-tunnel-darwin)。
2、运行tunnel login,终端将输出一个一次性登录链接,用浏览器打开并使用微软账户完成授权。
3、授权成功后,CLI自动保存访问令牌,后续所有隧道操作均无需重复登录。
二、启动本地服务并创建命名隧道
隧道需绑定正在运行的服务端口,且支持为每个端口分配唯一可读名称,便于远程用户识别用途,同时避免端口冲突。
1、确保本地服务已启动,例如运行python3 -m http.server 8000开启静态文件服务器。
2、执行命令创建命名隧道:tunnel --name my-web-app --port 8000。
3、命令返回类似https://my-web-app-12345abcdef.tunnels.api.visualstudio.com的公网URL,该地址即为可共享的访问入口。
三、配置访问权限与身份验证
默认情况下,隧道仅允许登录同一微软账户的用户访问;可通过参数显式设置公开性与密码保护,控制未授权访问风险。
1、添加密码保护:在启动命令中加入--password参数,例如tunnel --name api-dev --port 30。
01 --password "secr3t!"
2、启用完全公开访问(不推荐生产环境):添加--allow-anonymous标志,此时任意持有URL者均可连接。
3、查看当前活跃隧道列表及状态:运行tunnel list,输出包含隧道名、端口、URL、访问策略等字段。
四、通过VSCode桌面客户端管理隧道
除CLI外,VSCode桌面版内置Remote Tunnels界面,提供图形化操作路径,适合不熟悉终端的用户快速启停与重命名隧道。
1、在VSCode中按下Cmd+Shift+P(macOS)调出命令面板,输入Remote-Tunnels: Create Tunnel并回车。
2、选择“From port”选项,在弹出输入框中键入本地服务端口号(如8080),再输入隧道名称(如demo-server)。
3、创建完成后,状态栏右下角显示隧道图标,点击可复制URL、查看日志或执行Stop Tunnel操作。
五、调试与日志排查连接失败问题
当远程用户无法加载页面时,需检查本地隧道进程是否存活、端口是否被占用、以及网络出口是否拦截了tunnel流量。
1、在终端中运行tunnel log,实时查看隧道握手、认证、HTTP请求转发等事件流。
2、若提示Failed to connect to tunnel service,尝试重启tunnel daemon:tunnel daemon stop && tunnel daemon start。
3、确认本地防火墙未阻止tunnel进程出站连接,macOS用户可在“系统设置 > 隐私与安全性 > 防火墙 > 防火墙选项”中检查其放行状态。
# linux
# word
# python
# vscode
# 防火墙
# 浏览器
# app
# 路由器
# 端口
# macbook
# 工具
# ssl
# cURL
# 事件
# macos
# visualstudio
# http
# https
# 微软
# 可通过
# 绑定
# 情况下
# 运行环境
# 如果您
# 令牌
# 可在
# 均可
# 按下
相关栏目:
【
网站优化151355 】
【
网络推广146373 】
【
网络技术251813 】
【
AI营销90571 】
相关推荐:
微信小程序制作网站有哪些,微信小程序需要做网站吗?
WEB开发之注册页面验证码倒计时代码的实现
如何在腾讯云服务器快速搭建个人网站?
香港服务器网站卡顿?如何解决网络延迟与负载问题?
Laravel怎么使用Markdown渲染文档_Laravel将Markdown内容转HTML页面展示【实战】
LinuxCD持续部署教程_自动发布与回滚机制
jQuery 常见小例汇总
Laravel PHP版本要求一览_Laravel各版本环境要求对照
php后缀怎么变mp4格式错误_修改扩展名提示格式不对怎么办【技巧】
,怎么在广州志愿者网站注册?
高端建站如何打造兼具美学与转化的品牌官网?
如何快速生成专业多端适配建站电话?
大连企业网站制作公司,大连2025企业社保缴费网上缴费流程?
网站制作壁纸教程视频,电脑壁纸网站?
网页制作模板网站推荐,网页设计海报之类的素材哪里好?
如何登录建站主机?访问步骤全解析
如何正确下载安装西数主机建站助手?
什么是JavaScript解构赋值_解构赋值有哪些实用技巧
HTML 中动态设置元素 name 属性的正确语法详解
如何在七牛云存储上搭建网站并设置自定义域名?
Python文件操作最佳实践_稳定性说明【指导】
如何用手机制作网站和网页,手机移动端的网站能制作成中英双语的吗?
为什么php本地部署后css不生效_静态资源加载失败修复技巧【技巧】
Laravel distinct去重查询_Laravel Eloquent去重方法
Laravel如何创建和注册中间件_Laravel中间件编写与应用流程
Laravel如何处理JSON字段的查询和更新_Laravel JSON列操作与查询技巧
桂林网站制作公司有哪些,桂林马拉松怎么报名?
Laravel怎么导出Excel文件_Laravel Excel插件使用教程
laravel怎么配置Redis作为缓存驱动_laravel Redis缓存配置教程
HTML透明颜色代码在Angular里怎么设置_Angular透明颜色使用指南【详解】
悟空识字怎么关闭自动续费_悟空识字取消会员自动扣费步骤
如何在云指建站中生成FTP站点?
laravel怎么配置和使用PHP-FPM来优化性能_laravel PHP-FPM配置与性能优化方法
JavaScript Ajax实现异步通信
高配服务器限时抢购:企业级配置与回收服务一站式优惠方案
网站制作大概要多少钱一个,做一个平台网站大概多少钱?
Laravel如何将应用部署到生产服务器_Laravel生产环境部署流程
如何用VPS主机快速搭建个人网站?
Laravel如何使用Facades(门面)及其工作原理_Laravel门面模式与底层机制
购物网站制作费用多少,开办网上购物网站,需要办理哪些手续?
Java类加载基本过程详细介绍
详解阿里云nginx服务器多站点的配置
Laravel如何使用Vite进行前端资源打包?(配置示例)
Laravel如何配置任务调度?(Cron Job示例)
Laravel如何与Vue.js集成_Laravel + Vue前后端分离项目搭建指南
成都网站制作公司哪家好,四川省职工服务网是做什么用?
油猴 教程,油猴搜脚本为什么会网页无法显示?
如何快速搭建FTP站点实现文件共享?
Laravel事件和监听器如何实现_Laravel Events & Listeners解耦应用的实战教程
如何确认建站备案号应放置的具体位置?

