FRP GUI Client
September 9, 2026 · View on GitHub
FRP GUI Client
A simple, cross-platform desktop client for frp, built for Windows and macOS.
FRP GUI Client makes it easier to connect your computer to an frp relay server without manually editing configuration files. Set your relay server, port, authentication token, and proxy mappings in a graphical interface, then start or stop the connection with one click.
Features
- Works on Windows and macOS
- Custom relay server address and server port
- Optional authentication token and client user name
- TLS enabled by default
- Multiple TCP, UDP, HTTP, and HTTPS mappings
- Connection test before starting
- Generated
frpc.tomlpreview - Start, stop, saved settings, and real-time logs
- Built-in official frpc packages for supported platforms
Downloads
| Platform | Package | How to start |
|---|---|---|
| Windows | FRP-GUI客户端 folder | Double-click 启动客户端.bat |
| macOS (Apple Silicon / Intel) | FRP-GUI客户端-macOS.zip | Double-click 首次运行.command after extracting |
Before you start
You need access to an frp server (frps). This app is the client (frpc) and does not create a relay server by itself.
Ask your server administrator for:
- Relay server address (IP address or domain)
- Relay server port (usually
7000, but it can be different) - Authentication token, if enabled
- The external port or domain assigned to you
Quick start
- Open the application for your platform.
- Enter the relay server address and server port.
- Enter the authentication token when your server uses one.
- Click Add to create a mapping.
- For a TCP or UDP mapping, enter your local service port and the assigned remote port.
- Click Test connection to make sure the relay server is reachable.
- Click Start connection.
Example: share a local web service
If a website is running locally at 127.0.0.1:8080 and your server administrator assigned remote port 18080:
| Field | Value |
|---|---|
| Type | TCP |
| Local address | 127.0.0.1 |
| Local port | 8080 |
| Remote port | 18080 |
After starting the connection, visitors can access it through your-relay-server:18080.
Mapping types
| Type | Use it for |
|---|---|
| TCP | Websites, SSH, game servers, databases, and other TCP services |
| UDP | DNS, games, and other UDP services |
| HTTP | Websites exposed through a domain name |
| HTTPS | Secure websites exposed through a domain name |
For HTTP and HTTPS, your frp server must have the relevant virtual-host settings enabled and your domain must point to that server.
Platform notes
Windows
The Windows version uses the Python installation already available on the computer. If it does not open, install Python 3 from python.org and run 启动客户端.bat again.
macOS
The macOS package contains official frpc archives for both Apple Silicon and Intel Macs. On first launch, 首次运行.command verifies the archive checksum and extracts only the correct version. macOS may ask for confirmation when opening a downloaded script; right-click the script and choose Open if necessary.
Install Python 3 from python.org if the app reports that Python or Tkinter is missing.
Where settings are stored
- Windows:
%LOCALAPPDATA%\FrpGuiClient - macOS:
~/Library/Application Support/FrpGuiClient
The saved profile includes the token in plain text. Keep your computer account secure and do not share the profile file.
Security
- Only expose services you are authorized to publish.
- Do not expose databases, remote desktop, or administration panels directly to the public internet unless they are protected with strong authentication and firewall rules.
- Use a unique token and keep TLS enabled whenever your frp server supports it.
- Stop mappings you no longer need.
Credits
This project is a graphical launcher for fatedier/frp. frp is distributed under the Apache License 2.0.
Related Projects
https://moonproxy.app — A cross-platform FRP desktop client built with Tauri v2 + Vue 3 + Rust for non-technical users, featuring traffic monitoring and automatic updates for the frpc engine.
中文说明
FRP GUI Client 是一个适用于 Windows 与 macOS 的 frp 图形化客户端。它把常用的 frpc 配置放进一个清晰的桌面界面中:填写中继服务器地址、端口和 Token,添加映射,然后一键启动、停止或查看日志。你不需要手动编写 frpc.toml,但仍然可以在界面中预览程序生成的配置。
这是什么?
frp 由两部分组成:部署在公网服务器上的 frps 中继服务端,以及运行在你电脑上的 frpc 客户端。本项目只提供客户端图形界面,不会自动购买服务器、搭建中继服务端或分配公网端口。
开始前,请向服务器管理员取得以下信息:
- 中继服务器地址:IP 地址或域名,例如
frp.example.com。 - 中继服务器端口:通常为
7000,实际以管理员给出的值为准。 - 认证 Token:服务端启用 Token 认证时必填。
- 可使用的公网端口,或已解析到中继服务器的访问域名。
Windows 使用方法
- 打开 Windows 版本文件夹,双击
启动客户端.bat。 - 在“中继服务器”区域填写服务器地址、服务器端口和 Token。
- 点击“添加”创建一条映射。
- 点击“测试连接”,确认电脑能连上中继服务器。
- 点击“启动连接”。下方日志会显示连接状态与错误信息。
如果程序无法打开,请安装 Python 3,再重新双击启动脚本。Windows 版本使用文件夹内附带的官方 frpc.exe,也可以在界面中选择自己下载的其他版本。
macOS 使用方法
- 将 macOS ZIP 解压到本地文件夹。
- 首次运行请双击
首次运行.command;它会检查下载包、选择 Apple 芯片或 Intel Mac 对应的 frpc,并准备运行环境。 - 如果系统阻止启动,请右键该文件并选择“打开”,再按系统提示确认。
- 以后可直接双击
启动客户端.command。
如果提示缺少 Python 或 Tkinter,建议从 python.org 安装官方 Python 3 后再运行。
如何添加映射
每条映射表示“把你电脑上的一个服务,通过中继服务器提供给外部访问者”。常见字段含义如下:
| 字段 | 说明 |
|---|---|
| 映射名称 | 给这条映射起一个便于识别的名字,例如 home-web 或 ssh |
| 协议类型 | TCP、UDP、HTTP 或 HTTPS |
| 本地地址 | 本机服务监听地址;大多数情况下填写 127.0.0.1 |
| 本地端口 | 本机服务实际使用的端口,例如网站常用 80、3000、8080 |
| 远程端口 | TCP/UDP 映射对外开放的端口,需要由服务器管理员允许 |
| 访问域名 | HTTP/HTTPS 映射使用的域名,需要解析到中继服务器 |
示例:公开本机网站
假设你的电脑上有一个网站运行在 127.0.0.1:8080,管理员分配给你的公网端口是 18080。添加一条 TCP 映射:
| 字段 | 填写内容 |
|---|---|
| 映射名称 | my-web |
| 协议类型 | TCP |
| 本地地址 | 127.0.0.1 |
| 本地端口 | 8080 |
| 远程端口 | 18080 |
连接成功后,访问者可以通过 中继服务器地址:18080 访问该网站。
什么时候用 HTTP 或 HTTPS?
当你希望通过域名访问网站、并且 frp 服务端已经配置了 HTTP/HTTPS 虚拟主机端口时,选择 HTTP 或 HTTPS。此时不填写远程端口,而是填写如 app.example.com 的访问域名。请确认这个域名的 DNS 记录已指向中继服务器。
配置与日志保存在哪里?
- Windows:
%LOCALAPPDATA%\FrpGuiClient - macOS:
~/Library/Application Support/FrpGuiClient
程序会保存服务器设置、映射列表以及生成的 frpc.toml,下次打开后可继续使用。Token 会以明文形式保存到当前系统用户的本地配置文件中;请不要把该配置文件上传到公开网站或发送给无关人员。
常见问题
测试连接失败怎么办?
先检查服务器地址和端口是否正确,再确认本机网络、防火墙和服务端防火墙是否允许该端口。测试连接成功仅表示能够连接到服务器端口;如果启动后仍失败,请查看运行日志中的认证或端口占用提示。
为什么连接成功但外部仍无法访问?
确认本机服务已经在填写的本地地址和端口上运行;确认远程端口没有被其他映射占用;还要检查中继服务器的防火墙、安全组和 frps 端口权限设置。
Token 可以不填吗?
只有服务端未启用 Token 认证时才可以留空。若管理员提供了 Token,必须原样填写。
可以同时运行多条映射吗?
可以。每条映射使用不同的名称,TCP/UDP 映射还必须使用不同的远程端口。
安全建议
- 只公开你有权对外提供的服务。
- 不要在缺少强密码、多因素认证、访问控制或防火墙规则的情况下,直接公开数据库、远程桌面和后台管理页面。
- 建议为每个服务设置独立认证,并定期检查不再使用的映射后将其停止或删除。
- 默认保持 TLS 开启,并使用随机且不重复的 Token。
相关项目
https://moonproxy.app — 基于 Tauri v2 + Vue 3 + Rust 构建的跨平台 FRP 桌面客户端(Windows / macOS),面向非技术用户,支持流量监控和 frpc 引擎自动更新。