内网穿透天花板!一款开源免费的内网穿透工具,支持Windows+macOS+Linux多端使用

简介

Frpc-desktop一款基于Electron+Vue3实现的FRP内网穿透跨平台客户端工具,可有效解决传统模式下frp命令行配置繁琐、配置无法导入导出等难题。

系统支持可视化配置、TCP/UDP/HTTP/HTTPS/STCP/XTCP多协议代理、开机自启、配置导入导出、frp版本管理等核心功能,可帮助用户简单方便实现内网穿透功能。

系统采用Electron桌面架构设计,基于Electron + Vue3 + TypeScript + TailwindCSS主流技术栈构建,支持Windows、Linux、macOS三大主流操作系统,可二次拓展和私有化部署。十分适合个人开发者远程办公、游戏服务器搭建,还是企业用户办远程办公等等场景使用。

内网穿透天花板!一款开源免费的内网穿透工具,支持Windows+macOS+Linux多端使用


功能列表

  • 可视化配置:

    • 系统采用表单化配置界面,支持本地端口、远程端口、自定义域名、子域名等字段独立填写,保存即生成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,互不影响。
  • 多语言支持:

    • 支持中英文多语言切换,海外团队和国内团队都能无缝切换。

功能截图

首页:

内网穿透天花板!一款开源免费的内网穿透工具,支持Windows+macOS+Linux多端使用(2)

配置中心:

内网穿透天花板!一款开源免费的内网穿透工具,支持Windows+macOS+Linux多端使用(3)

代理配置:

内网穿透天花板!一款开源免费的内网穿透工具,支持Windows+macOS+Linux多端使用(4)

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

内网穿透天花板!一款开源免费的内网穿透工具,支持Windows+macOS+Linux多端使用(5)

配置中心:

内网穿透天花板!一款开源免费的内网穿透工具,支持Windows+macOS+Linux多端使用(6)

日志中心:

内网穿透天花板!一款开源免费的内网穿透工具,支持Windows+macOS+Linux多端使用(7)


系统架构

架构组成:

├─ 主进程层(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


版权声明

本文仅代表作者观点,不代表本站立场。
本文系作者授权发表,未经许可,不得转载。

评论