跳到主要内容
极客日志极客日志面向AI+效率的开发者社区
首页博客GitHub 精选镜像AI 生图工具UI配色美学隐私政策关于联系
搜索内容 / 工具 / 仓库 / 镜像...⌘K搜索
注册
博客列表
Shell / BashSaaS

Windows 下使用 VSCode 结合 WSL 实现远程开发及公网访问配置

通过 VSCode 与 WSL 在 Windows 系统构建 Linux 开发环境,解决本地编译与部署不一致问题。利用内网穿透工具将 WSL SSH 服务映射至公网,配合 Remote-SSH 插件实现跨设备远程连接与协作,支持固定公网地址配置以保障长期稳定访问。

片刻发布于 2026/2/9更新于 2026/7/2348 浏览
Windows 下使用 VSCode 结合 WSL 实现远程开发及公网访问配置

Windows 下使用 VSCode 结合 WSL 实现远程开发及公网访问配置

VSCode 结合 WSL(Windows 的 Linux 子系统),能在 Windows 系统上无缝运行完整的 Linux 开发工具链。它的功能核心是实现双系统的高效协同 —— 开发者既能用 Windows 的图形界面优势,又能调用 Ubuntu 等 Linux 发行版的命令行工具,适合需要跨系统开发的程序员、学生或技术团队。优点是比虚拟机轻便,性能接近原生,还支持 SSH 远程连接 WSL 环境。

使用这段时间,最大的感受是开发环境统一了。以前在 Windows 上写 Linux 相关代码,总担心兼容性问题,现在直接在 WSL 里编译、运行,和实际部署环境一致,减少了很多'本地能跑线上报错'的麻烦。不过要注意,WSL 的网络设置需要偶尔检查,确保服务正常启动。

但它有个明显局限:默认只能在局域网内访问。比如家里的电脑部署了环境,出差时想改代码,就只能远程操控电脑,操作繁琐;团队协作时,同事不在同一网络也无法共享开发环境,效率受影响。

而搭配内网穿透工具后,这个问题就解决了。该工具能把 WSL 的 SSH 服务映射到公网,相当于给开发环境开了个'全球通道'。现在无论是在咖啡厅、机场,只要有网络,就能用另一台设备通过 VSCode 远程连接回家中的环境,继续写代码、调试程序,团队成员也能通过公网地址共享同一环境,协作更顺畅。

1. WSL 环境下网络诊断

首先搜索 Ubuntu,打开终端。

查看你的 IP 地址:

ip addr

检查是否可以从当前机器访问目标 IP 为 172.20.54.177 的服务器上的 SSH 服务(端口 22):

telnet 172.20.54.177 22

使用 SSH 协议,以用户名 michael 尝试连接到 IP 地址为 172.20.54.177 的服务器,并且指定使用端口 22 进行连接:

ssh [email protected] -p22

如何在 Ubuntu 上启用 SSH?

sudo apt install openssh-server

2. 安装内网穿透工具

内网穿透工具可以将你本地电脑中的服务(如 SSH、Web、数据库)映射到公网。即使你在家里或外出时,也可以通过公网地址连接回本地运行的开发环境。配合 VSCode 的 Remote-SSH 插件,你可以从任何设备访问自己的完整开发环境。

登录管理后台并下载最新版本的内网穿透工具到本地并安装。

安装成功后,在浏览器上访问 http://localhost:9200,使用账号登录,即可看到 Web 配置界面。

3. 配置公网地址

通过配置,你可以在本地 WSL 或 Linux 系统上运行 SSH 服务,并通过隧道工具将其映射到公网,从而实现从任意设备远程连接开发环境的目的。

  • 隧道名称:可自定义,本例使用了 VsCode,注意不要与已有的隧道名称重复
  • 协议:tcp
  • 本地地址:172.20.54.177:22
  • 端口类型:随机临时 TCP 端口
  • 地区:China Vip

创建成功后,打开在线隧道列表,可以看到刚刚通过创建隧道生成了公网地址,接下来就可以在其他电脑或者移动端设备(异地)上,使用任意一个地址在终端中访问即可。

  • tcp 表示使用的协议类型
  • example-tunnel.com 是提供的域名
  • 12825 是随机分配的公网端口号

通过提供的公网地址和端口,使用 SSH 协议从本地 Windows 系统连接到远程的 Ubuntu WSL2 环境,并成功登录。

ssh [email protected] -p12825

4. VSCode 远程连接开发环境

无论你是在 Windows、macOS 还是 Linux 上工作,Remote-SSH 让你可以连接到任何支持 SSH 的系统(Linux 或 macOS),提供了一致的开发环境。通过在相同环境中开发和部署,可以减少'在我的机器上能运行'的问题。

打开 VS Code,按下 Ctrl + Shift + X(或点击左侧活动栏中的扩展图标),进入扩展市场。在搜索栏中输入关键词'Remote-SSH',在搜索结果中找到'Remote-SSH'插件,点击 Install 按钮进行安装。

安装完成后,左侧资源管理器下方会出现一个新的远程资源管理器图标(或直接使用快捷键 Ctrl+Shift+P 输入'Remote-SSH'相关命令),即可开始配置并连接远程服务器。点击小加号就可以连接远程服务器。

点击小加号后,输入框会弹出一个输入框,这个输入框用于输入 SSH 的连接命令。

ssh [email protected] -p12825

然后软件的右下角会出现提示信息,点击'打开配置'打开配置文件。

  • Host:这是一个用户定义的别名,用于指代远程主机。
  • HostName:指定远程主机的实际地址或主机名。
  • User:指定连接到远程主机时使用的用户名。
  • Port:指定 SSH 连接使用的端口号。

此时,你应该能在左侧资源管理器的 SSH 目标列表中看到新增的 Ubuntu 主机项。如果未自动显示,可以点击上方的刷新按钮进行手动更新。确认出现目标主机后,点击主机名右侧的连接按钮,即可开始远程连接到该 Ubuntu 系统。

点击连接后,选择 Linux。

然后输入远程的主机密码,按下回车。

连接成功后,出现的字样。

点击右下角的小三角,再点击'TERMINAL(终端)',可以看到 Ubuntu 的终端界面,在这里可以使用命令行操作 Ubuntu。

输入:

code .

新弹出的页,再次输入主机密码。

这样就可以随时随地编写代码啦。

5. 保留固定 TCP 公网地址

使用工具为其配置 TCP 地址,该地址为固定地址,不会随机变化。

选择区域和描述:有一个下拉菜单,当前选择的是'China VIP'。右侧输入框,用于填写描述信息。保留按钮:在右侧有一个橙色的'保留'按钮,点击该按钮可以保留所选的 TCP 地址。列表中显示了一条已保留的 TCP 地址记录。

  • 地区:显示为'China VIP'。
  • 地址:显示为 20.tcp.vip.example.com:14220。

登录 Web UI 管理界面,点击左侧仪表盘的隧道管理——隧道列表,找到所要配置的隧道 VsCode,点击右侧的编辑。

修改隧道信息,将保留成功的 TCP 端口配置到隧道中。

  • 端口类型:选择固定 TCP 端口
  • 预留的 TCP 地址:填写保留成功的 TCP 地址

点击更新。

创建完成后,打开在线隧道列表,此时可以看到随机的公网地址已经发生变化,地址名称也变成了保留和固定的 TCP 地址。

最后测试一下固定的地址是否好用,测试命令:

ssh [email protected] -p14220

这样,你可以把这个地址发给你的朋友们,这样他们就可以随时随地使用工具来共享开发,即使在家里或外出时,也可以通过公网地址连接回本地运行的开发环境。配合 VSCode 的 Remote-SSH 插件,可以从任何设备访问自己的完整开发环境。

总结

VSCode+WSL 本就为跨系统开发提供了便利,加上内网穿透突破网络限制,让开发环境真正'随身带',无论是个人移动办公还是团队协作,都更高效灵活。

目录

  1. Windows 下使用 VSCode 结合 WSL 实现远程开发及公网访问配置
  2. 1. WSL 环境下网络诊断
  3. 2. 安装内网穿透工具
  4. 3. 配置公网地址
  5. 4. VSCode 远程连接开发环境
  6. 5. 保留固定 TCP 公网地址
  7. 总结
  • 免费图片AI生成工具免费生成了解详情
  • Magick API 一键接入全球大模型注册送1000万token查看
  • 免费图片视频在线生成30秒,将你的创意变成现实开始设计
  • X/Twitter免费视频下载器免登陆无限额度免费视频解析下载了解详情
  • 100+免费在线小游戏爽一把
极客日志微信公众号二维码

微信扫一扫,关注极客日志

微信公众号「极客日志V2」,在微信中扫描左侧二维码关注。展示文案:极客日志V2 zeeklog

更多推荐文章

查看全部
  • 使用 Playwright 封装 Web 爬虫并隐藏自动化特征
  • 从冯诺依曼体系结构到进程管理详解
  • 使用 Python 将 CSV 数据导入 Neo4j 图数据库
  • 达梦数据库 JAVA 外部函数使用指南
  • 服务器端 VS Code Copilot 加载超时排查与优化指南
  • Python 安全有效地处理配置的最佳实践
  • 讯飞 Astron Agent 企业级智能体平台部署与功能详解
  • Figma 搭配 Claude 与 Weavy AI:从原型到素材的完整工作流
  • AI 代码助手深度对比:CodeGeex、RooCode 与 GitHub Copilot
  • C++ 算法刷题实战:重组偶数、排队方案与二叉树路径和
  • JDK 17 安装与环境配置实战指南
  • AI 产品开发:工程化挑战与底层逻辑
  • Clawdbot Web Chat 搭建:Qwen3-32B 模型加载、API 路由与 UI 定制
  • Vibe Coding 实战:如何用 AI 生成完整可交付产品
  • OpenClaw 多端交互实测指南:Web、TUI 与钉钉集成详解
  • Linux 下基于策略模式的手写高性能日志模块实现
  • 2026 年 AI 编程工具对比:GitHub Copilot、Cursor 与 Codeium 选型指南
  • Python 3.12.0 在 Windows 下的安装与配置指南
  • LLM 存储记忆功能:BaseChatMemory 详解与子类实战
  • AI 与传统方法处理历史观看数据的效率对比

相关免费在线工具

  • Base64 字符串编码/解码

    将字符串编码和解码为其 Base64 格式表示形式即可。 在线工具,Base64 字符串编码/解码在线工具,online

  • Base64 文件转换器

    将字符串、文件或图像转换为其 Base64 表示形式。 在线工具,Base64 文件转换器在线工具,online

  • Markdown转HTML

    将 Markdown(GFM)转为 HTML 片段,浏览器内 marked 解析;与 HTML转Markdown 互为补充。 在线工具,Markdown转HTML在线工具,online

  • HTML转Markdown

    将 HTML 片段转为 GitHub Flavored Markdown,支持标题、列表、链接、代码块与表格等;浏览器内处理,可链接预填。 在线工具,HTML转Markdown在线工具,online

  • JSON 压缩

    通过删除不必要的空白来缩小和压缩JSON。 在线工具,JSON 压缩在线工具,online

  • JSON美化和格式化

    将JSON字符串修饰为友好的可读格式。 在线工具,JSON美化和格式化在线工具,online