这个想法是不是很大胆 😜

5 条回复
71 次浏览

title: SSH 端口转发
date: '2026-07-03 10:48'
author: 广习习
url: >-
https://mqnu00.github.io/blog/posts/ops/ssh-port-forwarding/ssh-port-forwarding.html
discussion:
id: D_kwDOQdT3Qc4AniLU
number: 108
title: SSH 端口转发
url: ' https://github.com/mqnu00/blog/discussions/108 '
createdAt: '2026-07-03T08:06:30Z'
tags:

  • ssh
  • frp
  • nat

背景

目前家里有一台小服务器

配置

类型参数
OSUbuntu 22.04.5 LTS x86_64
Kernel6.8.0-124-generic
Shellzsh 5.8.1
CPUIntel Celeron N3150 (4) @ 2.080GHz
Memory2GB * 2 DDR3 1333 MHz
DISKTOSHIBA DT01ACA050 机械硬盘 500G
Great Wall GW600 256GB 固态硬盘 2.5 寸
Kingchuxing 256GB M.2 SATA 固态硬盘 2230 (外接移动硬盘)

网络环境

使用小区免费的网络。IP 分发只有 IPV4,没有 IPV6。

tailscale

由于需要外网访问,使用了 tailscale,但是没有自配 derp,延迟很高。

复制
> tailscale ping 100.71.186.58
pong from laptop-mqnu00 (100.71.186.58) via DERP(hkg) in 329ms
pong from laptop-mqnu00 (100.71.186.58) via DERP(hkg) in 318ms
pong from laptop-mqnu00 (100.71.186.58) via DERP(hkg) in 343ms
pong from laptop-mqnu00 (100.71.186.58) via DERP(hkg) in 291ms
pong from laptop-mqnu00 (100.71.186.58) via DERP(hkg) in 266ms
pong from laptop-mqnu00 (100.71.186.58) via DERP(hkg) in 312ms
pong from laptop-mqnu00 (100.71.186.58) via DERP(hkg) in 328ms
pong from laptop-mqnu00 (100.71.186.58) via DERP(hkg) in 317ms
pong from laptop-mqnu00 (100.71.186.58) via DERP(hkg) in 318ms
pong from laptop-mqnu00 (100.71.186.58) via DERP(hkg) in 311ms
direct connection not established

frp

寻找免费的 frp 服务,只能提供一两个端口,速率也只有 10M 左右。

出现端口不够用的情况。

SSH 端口转发

实现效果是 FRP 穿透内网服务器 22 端口的同时,通过 SSH 转发服务器的其他端口,使得外网能够访问服务器的其他端口,又不用真正打通。

复制
ssh -L 本地端口:目标地址:目标端口 -p [FRP 映射的 SSH 端口] [用户名]@[服务器公网 IP]

比如我输入命令:

复制
ssh -L 5140:192.168.10.5:5140 -p xxxxx [email protected]

我电脑本地访问 127.0.0.1:5140,会被 ssh 进程监听捕获,转发消息到内网服务器,然后消息原封不动的发送给内网的 192.168.10.5:5140。

不过整个过程是通过 FRP 的连接,某种程度上实现了端口复用。

种子用户
OP

文章还没发哈哈 😄,看看大家有什么意见再做一些补充

种子用户
OP

我住的地方,网络是免费提供的,好像是小区统一提供

发表一个评论

R保持