简介
Frpc-desktop一款基于Electron+Vue3实现的FRP内网穿透跨平台客户端工具,可有效解决传统模式下frp命令行配置繁琐、配置无法导入导出等难题。
系统支持可视化配置、TCP/UDP/HTTP/HTTPS/STCP/XTCP多协议代理、开机自启、配置导入导出、frp版本管理等核心功能,可帮助用户简单方便实现内网穿透功能。
系统采用Electron桌面架构设计,基于Electron + Vue3 + TypeScript + TailwindCSS主流技术栈构建,支持Windows、Linux、macOS三大主流操作系统,可二次拓展和私有化部署。十分适合个人开发者远程办公、游戏服务器搭建,还是企业用户办远程办公等等场景使用。

功能列表
可视化配置:
系统采用表单化配置界面,支持本地端口、远程端口、自定义域名、子域名等字段独立填写,保存即生成frpc.toml配置,无需再手写配置文件。 多协议代理:
支持TCP、UDP、HTTP、HTTPS、STCP、XTCP六种代理类型,覆盖远程SSH、NAS访问、Web服务暴露、P2P穿透等全部场景,一套客户端搞定所有内网穿透需求。 代理开关:
每条代理独立配置独立启停,临时关掉某条隧道不用改全局配置,其他代理不受影响。 批量端口代理:
TCP和UDP协议支持批量端口配置,一条代理规则可映射多个连续端口。 配置导入导出:
支持所有配置一键导出成文件,也支持一键导入frpc.toml文件自动识别解析,可节约大量配置时间。 开机自启:
支持设置开机自动启动并静默连接,服务器重启或电脑开机后frpc-desktop自动拉起所有代理,无需再手动启动。 frp版本管理:
内置frp版本管理模块,支持下载、切换、删除不同frp版本。支持采用镜像站下载解决GitHub限流问题,新版本出现问题也可以一键回滚。 基础认证:
支配置持HTTP代理的Basic认证和子域名,暴露到公网的Web服务可加密码保护,一个frps端口可承载多个子域名服务,节省大量公网端口资源。 多用户适配:
适配frp多用户插件,支持user与meta_token配置,企业自建frps给多部门共用时,可为每个部门独立账号独立Token,互不影响。 多语言支持:
支持中英文多语言切换,海外团队和国内团队都能无缝切换。
功能截图
首页:

配置中心:

代理配置:

frp版本管理: 内置frp版本管理模块,支持下载、切换、删除不同frp版本,通过镜像站下载解决GitHub限流问题。

配置中心:

日志中心:

系统架构
架构组成:
├─ 主进程层(electron-main)
│ ├─ frpc 进程管理(启动/停止/重启)
│ ├─ 系统托盘常驻
│ ├─ 开机自启配置
│ └─ 文件系统读写(配置导入导出)
│
├─ 配置管理层(config-manager)
│ ├─ 代理配置表单解析
│ ├─ frpc.toml 生成与识别
│ ├─ 配置批量导入导出
│ └─ SQLite 持久化存储
│
├─ 代理协议层(proxy-protocol)
│ ├─ TCP / UDP 代理(含批量端口)
│ ├─ HTTP / HTTPS 代理(Basic认证/子域名)
│ ├─ STCP / XTCP 代理(P2P穿透)
│ └─ 多用户 user & meta_token 适配
│
├─ frp引擎层(frp-engine)
│ ├─ frp 版本下载与切换
│ ├─ 镜像站下载(解决GitHub限流)
│ ├─ 下载代理配置
│ └─ 版本删除与回滚
│
└─ 渲染层(renderer)
├─ Vue3 + TypeScript 界面
├─ TailwindCSS 样式
├─ 代理列表与状态展示
└─ 多语言切换(中/英)
技术栈:
开发语言:TypeScript、Vue
桌面框架:Electron
前端框架:Vue3 + TailwindCSS
构建工具:Vite
数据存储:SQLite(配置持久化)
代理协议:TCP / UDP / HTTP / HTTPS / STCP / XTCP
frp版本:支持所有frp版本(镜像站下载)
多语言:中文 / English
快速开始
1、环境准备:
Windows 10+ / macOS 10.15+ / Linux
frps 服务端已部署(需有公网IP的云服务器)
frps 的 bindPort 与 auth.token
2、下载客户端: 文后获取
# Windows
Frpc-Desktop-1.2.6-x64-setup.exe
# macOS(Apple Silicon)
Frpc-Desktop-1.2.6-arm64.dmg
# macOS(Intel)
Frpc-Desktop-1.2.6-x64.dmg
# Linux
Frpc-Desktop-1.2.6-arm64.AppImage
3、安装客户端:
sudo xattr -cr Frpc-Desktop.app
# Linux 赋予执行权限
chmod +x Frpc-Desktop-1.2.6-arm64.AppImage
./Frpc-Desktop-1.2.6-arm64.AppImage
4、配置frps服务端: 在客户端中填入frps服务端地址、端口与Token信息,与frps.toml中的bindPort和auth.token保持一致。
# frps.toml 服务端配置
bindPort = 7000
auth.token = "your-secret-token"
# 客户端填写
服务端地址:your-server-ip
bindPort:7000
Token:your-secret-token
5、下载frp版本: 在frp版本管理页下载对应frp版本。
# frp版本管理 → 下载
- 选择frp版本(如v0.69.1)
- 国内服务器建议使用镜像站下载
- 或配置下载代理
6、添加代理规则: 在代理配置页新增代理,选择协议类型、填写本地端口与远程端口,HTTP代理可配置自定义域名与Basic认证。
# TCP代理(远程SSH)
协议:tcp
本地端口:22
远程端口:6000
# HTTP代理(本地Web服务)
协议:http
本地端口:8080
自定义域名:myapp.yourdomain.com
7、启动并验证: 点击启动按钮,frpc-desktop启动frpc进程。
# 验证SSH
ssh -p 6000 user@your-server-ip
# 验证Web
curl http://your-server-ip:6000
评论