FRPFast Reverse Proxy确实是内网穿透工具定位和RustDesk 完全不同RustDesk 是远程桌面“成品”FRP 是底层的网络隧道“工具”。FRP 的工作原理FRP 的核心逻辑很简单只有两个角色服务端 (frps)部署在有公网 IP的机器上就是linux的云端 39.x.x.x负责接收外网请求并转发。客户端 (frpc)部署在没有公网 IP的内网机器上linux的机房服务器和 VMware主动去连接服务端。流程是这样的内网的 frpc 启动后主动连上云端的 frps告诉它“我要把本地的 22 端口映射到linux的 6000 端口”。之后linux在办公室访问39.x.x.x:6000frps 就会把流量顺着这条已经建立的“隧道”丢给内网的 frpc最终转给内网的 22 端口。为什么它比反向 shell 更适合linux -centos7之类的会有客户端兼容性问题linux之前试的 SSH 反向隧道ssh -R也是这个原理但 FRP 作为专用工具在稳定性和管理性上更强专为穿透设计自带断线重连、心跳保活机制不用像autossh那样自己拼参数。配置直观一个 TOML 文件写清楚“本地端口 - 远程端口”一目了然。无环境依赖Go 语言编写静态编译在 CentOS 7 上解压就能跑不会像 RustDesk 那样遇到 glibc 版本报错。针对linux环境的实施步骤基于linux之前提供的环境云端 39.x.x.x回头简称云端服务器公网IP内网 192.168.1.100 和 192.168.4.25如果linux决定用 FRP部署思路如下。第一步云端部署服务端 (frps)下载解压去 GitHub 下载frp_x.xx.x_linux_amd64.tar.gz解压后把frps和frps.toml放好。配置frps.toml最简单的配置只需要指定通信端口和鉴权 Token。bindPort 30000 auth.token 你的强密码开放防火墙linux现有的安全组规则里已经放行了 TCP 30000-33000刚好覆盖。确保 UDP 不需要额外开FRP 默认 TCP。设为系统服务写一个frps.service让它在后台常驻避免 SSH 一断就掉线。第二步内网机器部署客户端 (frpc)在机房服务器192.168.1.100和 VMware192.168.4.25上分别操作。下载解压同样解压包但只用frpc和frpc.toml。配置frpc.toml机房服务器的配置映射 22 端口到云端的 30001serverAddr 云端服务器公网IP serverPort 30000 auth.token 你的强密码 [[proxies]] name ssh-idc type tcp localIP 127.0.0.1 localPort 22 remotePort 30001VMware的配置类似但remotePort要换一个比如30002。启动并设为服务同样用 systemd 托管frpc保证开机自启。第三步办公室连接配置完成后linux在办公室直接用 SSH 客户端连接云端的映射端口即可# 连接机房服务器ssh-p30001你的用户名云端服务器公网IP# 连接 VMwaressh-p30002你的用户名云端服务器公网IP这样linux就在云端建立了一个永久的“SSH 入口”只要内网机器能上网隧道就不会断。