VSCode怎么使用SSH端口转发功能_VSCode如何远程开发时映射服务器端口到本地【攻略】

轻敏酱_3246

轻敏酱_3246

2026-03-20

244人浏览

原创

vscode ssh端口转发失效主因是配置未被正确读取,需在ssh配置文件中显式添加localforward并重启连接;remote.ssh.port与localforward作用域不同但位置错则失效;服务监听地址、防火墙、ssh保活等服务器侧配置才是关键排查点。

vscode怎么使用ssh端口转发功能_vscode如何远程开发时映射服务器端口到本地【攻略】

VSCode SSH远程开发时,portForwarding 不生效怎么办

端口转发没反应,最常见原因是 VSCode 没读到正确的配置——它不自动继承 SSH config 里的 LocalForward,也不识别手动写的 ForwardAgent yes。必须显式在 VSCode 的远程连接设置里声明。

  • 打开 VSCode 远程窗口(Ctrl+Shift+P → Remote-SSH: Connect to Host...),选中目标主机后,右键 → Open Configuration File...,编辑对应 ~/.ssh/config 或 VSCode 自建的 config 文件
  • 在该 host 块内添加:
    LocalForward 5432 localhost:5432
    (把服务器的 5432 映射到本地 5432)
  • 保存后必须重启远程连接:断开 → 再次 Connect to Host,否则旧连接不会加载新配置
  • 验证是否成功:连上后打开命令面板(Ctrl+Shift+P),搜 Remote-SSH: Open SSH Configuration File,再看左下角状态栏是否有「Port forwarding」图标;或终端执行 netstat -an | grep 5432 看本地端口是否监听

用 remote.SSH.port 和 LocalForward 混用会冲突吗

会。VSCode 的 remote.SSH.port 是控制 SSH 连接本身用的端口(比如服务器改了 SSH 端口为 2222),而 LocalForward 是应用层端口映射,两者作用域不同,但写错位置就失效。

VSCode
VSCode

避免常见的 VSCode 错误——设置冲突、调试器配置和扩展冲突。

下载
  • remote.SSH.port 是 VSCode 扩展级配置,写在 VSCode 设置(settings.json)里,只影响建立 SSH 连接的端口,不影响转发
  • LocalForward 必须写在 ~/.ssh/config 或 VSCode 的 SSH 配置文件里,且格式严格:LocalForward [bind_address:]port host:hostport,中间不能有等号或引号
  • 常见错误:把 LocalForward 8080 127.0.0.1:8080 写成 LocalForward=8080:127.0.0.1:8080(多了等号)→ 直接被忽略,无报错也无日志提示
  • 如果服务器开了防火墙(如 ufw),还需确认 localhost:8080 能被 SSH 进程访问(不是所有服务都绑定 127.0.0.1,有些默认只监听 0.0.0.0)

转发 PostgreSQL / Redis 等服务端口时连不上,Connection refused

错误信息是 Connection refused,说明本地端口已监听,但 VSCode 没把请求正确转给服务器上的服务——本质是服务没在服务器本地回环地址上监听,或权限限制。

  • 先在服务器上确认服务是否运行且监听 127.0.0.1:ss -tlnp | grep :5432,输出里要有 127.0.0.1:5432 或 *:5432;若只有 192.168.x.x:5432,则转发失败
  • PostgreSQL 默认 pg_hba.conf 只允许 local 和 host 的 127.0.0.1 连接,确保有类似这行:
    host    all             all             127.0.0.1/32            md5
  • Redis 若启用了 bind 127.0.0.1 但没配 protected-mode no,SSH 转发过来的连接会被拒绝——因为转发流量对 Redis 来说是“远程”,即使来源是本机 SSH 进程
  • 别用 localhost 当 bind 地址:某些系统(macOS、WSL)下 localhost 解析走 IPv6,而服务可能只监听 IPv4 的 127.0.0.1,统一写 127.0.0.1 更稳

为什么 VSCode 端口转发有时延迟高、偶发断连

这不是 VSCode 的 bug,而是底层 SSH 连接保活机制缺失导致的——SSH 通道空闲超时后被服务器或中间网络设备关闭,VSCode 不会自动重连转发端口。

  • 在 SSH 配置里加两行:
    ServerAliveInterval 60<br>ServerAliveCountMax 3
    ,让客户端每 60 秒发一次心跳,连续 3 次无响应才断开
  • 避免使用 ControlMaster auto + ControlPersist 组合:VSCode 的 SSH 扩展对复用连接支持不稳定,容易导致转发端口卡死或映射丢失
  • 转发大量小请求(如 WebSocket、DevTools 调试)时,建议关掉 VSCode 的 remote.SSH.useLocalServer(设为 false),强制走标准 SSH 通道,减少本地代理层开销
  • 真正难排查的是 NAT 环境:如果服务器在企业内网或云厂商私有子网里,某些安全组策略会静默丢弃非初始 SYN 包,此时必须联系运维确认转发路径上所有中间节点允许 ESTABLISHED 连接回流
端口转发看着简单,实际卡点全在服务器侧配置和网络路径上;VSCode 只负责搭桥,桥那头通不通,得自己去敲 ss、journalctl -u ssh、tcpdump -i lo port 5432 看。

相关专题

更多
json数据格式
json数据格式

JSON是一种轻量级的数据交换格式。本专题为大家带来json数据格式相关文章,帮助大家解决问题。

2023.08.07

2135

5

json是什么
json是什么

JSON是一种轻量级的数据交换格式,具有简洁、易读、跨平台和语言的特点,JSON数据是通过键值对的方式进行组织,其中键是字符串,值可以是字符串、数值、布尔值、数组、对象或者null,在Web开发、数据交换和配置文件等方面得到广泛应用。本专题为大家提供json相关的文章、下载、课程内容,供大家免费下载体验。

2023.08.23

3262

1

jquery怎么操作json
jquery怎么操作json

操作的方法有:1、“$.parseJSON(jsonString)”2、“$.getJSON(url, data, success)”;3、“$.each(obj, callback)”;4、“$.ajax()”。更多jquery怎么操作json的详细内容,可以访问本专题下面的文章。

2023.10.13

1096

3

go语言处理json数据方法
go语言处理json数据方法

本专题整合了go语言中处理json数据方法,阅读专题下面的文章了解更多详细内容。

2025.09.10

3739

7

vscode是什么_vscode怎么安装配置
vscode是什么_vscode怎么安装配置

VS Code(Visual Studio Code)是一款免费、开源的跨平台代码编辑器,由微软开发和维护。它被广泛用于软件开发和编程,支持多种编程语言和框架。VS Code 同时提供了丰富的功能和扩展性,使开发者可以高效地编写、编辑和调试代码。

2023.06.30

1395

18

vscode怎么运行代码
vscode怎么运行代码

vscode是一个运行于MacOS X、Windows和Linux之上的,针对于编写现代Web和云应用的跨平台源代码编辑器;vscode免费而且功能强大,对JavaScript和NodeJS的支持非常好,自带很多功能,例如代码格式化,代码智能提示补全、Emmet插件等。php中文网给大家带来了相关的教程以及文章,欢迎大家前来阅读学习。

2023.07.21

2932

3

vscode使用的框架介绍
vscode使用的框架介绍

VSCode是一款跨平台代码编辑器,它基于Electron框架和Monaco Editor构建。想了解更多vscode的相关内容,可以阅读本专题下面的文章。

2024.03.14

1989

12

vscode一般用来写什么语言
vscode一般用来写什么语言

VSCode是一款功能强大的代码编辑器,支持多种编程语言和文件格式。它内置对 JavaScript、Python、Java、C++、TypeScript、HTML/CSS、Go 等语言的支持。想了解更多vscode的相关内容,可以阅读本专题下面的文章。

2024.03.14

1727

8

vscode可以写什么语言
vscode可以写什么语言

vscode是一款强大的代码编辑器,支持多种编程语言的开发。通过安装扩展,可以为 JavaScript/TypeScript、Python、Java、C#、PHP、Go、Ruby、Rust、HTML/CSS 等语言提供智能代码补全、调试和格式化等功能。想了解更多vscode的相关内容,可以阅读本专题下面的文章。

2024.03.15

2607

12

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程