跳到主内容
快讯直播
AI智模界
AI 词典

SSH 隧道与端口转发:不开放公网也能连上模型服务

一句话定义:SSH 隧道(SSH tunnel)是把别的网络流量放进一条已经加密的 SSH 连接里传输;端口转发(port forwarding)是实现它的具体做法:在本机或远端打开一个端口,把连到这个端口的请求,转送到 SSH 连接另一头能访问到的某个地址。

打个比方:SSH 连接就像你办公室和机房之间挖的一条专用地下通道,进出口都要刷工牌(密钥)。端口转发就是在这条通道的两端各开一扇门,门上挂什么门牌号由你决定。别人只看到门牌号,看不到通道里走的是什么东西。

本地转发 -L:去拿

模型服务跑在 GPU 机器上,监听 127.0.0.1:8000,只有那台机器自己能访问:

```

ssh -L 8000:127.0.0.1:8000 me@gpu-box

```

之后你在本机浏览器打开 http://localhost:8000 就相当于连到了 GPU 机器上的 8000 端口。注意冒号后面的地址是“从服务器视角看的地址”,所以也能写内网另一台机器,比如 -L 5432:db-internal:5432,等于借这台跳板机去访问它内网里的数据库。特点是连接由你的机器发起,把远端的东西拉过来。

远程转发 -R:送过去

反过来,服务在你笔记本上,你想让远端的机器或同事临时看到它:

```

ssh -R 9000:127.0.0.1:9000 me@jump-host

```

别人访问 jump-host:9000,流量就顺着隧道回到你的笔记本。特点是连接由远端那台机器上的 sshd 帮你去连接你的本机,所以能穿透 NAT 和公司防火墙,常用来临时演示。

方式参数效果典型场景
本地转发-L把远端内网服务拉到本地端口调试远端模型 API
远程转发-R把本地服务临时暴露到远端内网演示、穿透 NAT
动态转发-D本地开一个 SOCKS 代理浏览器按需走远端网络

和相邻概念的区别:VPN 在工作在网络层,一旦连上,整台机器的所有流量都走它;SSH 隧道则是按端口、按需、不需要管理员权限。反向代理(如 Nginx)和 API 网关是用来对公网提供服务的,要配证书、鉴权、限流;SSH 隧道的前提是根本不给公网开门。

对从业者的实际意义:推理服务默认只监听 127.0.0.1,别图方便改成 0.0.0.0。模型端口通常没有鉴权,一旦暴露在公网,就等于把 GPU 算力无偿提供给任何人。正确姿势是:公网只留 SSH 一个入口,用密钥登录、关掉密码登录,其余全靠隧道。加 -N 表示只转发不执行命令,配合 -f 可转后台;远程转发默认只绑在远端的回环地址,想对外放开要改 GatewayPorts,一般不建议,具体以 sshd 官方文档为准。

最后提醒一句:隧道依赖那条 SSH 连接,断线即断,适合调试和临时访问;长期稳定的内网互通,还是考虑 WireGuard、专线或正规网关。

AI 生成本文由 AI 基于公开信息自动生成,仅供参考。