项目介绍
frp(Fast Reverse Proxy)是一个专注于内网穿透的高性能反向代理应用,采用 C/S 架构。将服务端部署在具有公网 IP 的机器上,客户端部署在内网或防火墙内的机器上,通过访问暴露在服务器上的端口,即可反向代理到处于内网的服务。
🔌 🔌
全协议支持
TCP/UDP/HT
全协议支持
TCP/UDP/HT
📊 📊
Web管理面板
服务端Dashb
Web管理面板
服务端Dashb
🔒 🔒
安全加密
TLS加密 + Tok
安全加密
TLS加密 + Tok
⚡ ⚡
高性能
TCP流复用 + 连接池
高性能
TCP流复用 + 连接池
🔗 🔗
P2P直连
xtcp点对点通信,
P2P直连
xtcp点对点通信,
🔄 🔄
热重载配置
修改配置后无需重启客
热重载配置
修改配置后无需重启客
环境要求
| 要求 | 说明 |
|---|---|
| 公网服务器 | 一台有公网 IP 的服务器(用于部署 frps 服务端) |
| 内网机器 | 需要被穿透的内网机器(部署 frpc 客户端) |
| 操作系统 | 支持 Windows / macOS / Linux / FreeBSD |
| 防火墙 | 服务器需开放 frps 监听端口(默认7000) |
安装步骤
步骤 1
下载 frp
从 GitHub Release 页面下载对应系统的压缩包:
# 访问 GitHub 下载最新版本
https://github.com/fatedier/frp/releases
# Linux amd64 示例
wget https://github.com/fatedier/frp/releases/download/v0.67.0/frp_0.67.0_linux_amd64.tar.gz
tar -xzf frp_0.67.0_linux_amd64.tar.gz
cd frp_0.67.0_linux_amd64
💡
解压后目录包含:frps(服务端)、frpc(客户端)和配置文件模板
步骤 2
配置服务端 (frps)
在公网服务器上编辑 frps.toml 配置文件:
# frps 服务端配置
bindPort = 7000
# Dashboard 管理面板(可选)
webServer.addr = "0.0.0.0"
webServer.port = 7500
webServer.user = "admin"
webServer.password = "admin123"
# Token 认证(推荐设置)
auth.token = "your_secure_token"
启动服务端:
# 前台运行
./frps -c frps.toml
# 后台运行(推荐)
nohup ./frps -c frps.toml &
步骤 3
配置客户端 (frpc)
在内网机器上编辑 frpc.toml 配置文件:
# frpc 客户端配置
serverAddr = "你的服务器公网IP"
serverPort = 7000
auth.token = "your_secure_token"
# 示例1:暴露内网 Web 服务
[[proxies]]
name = "web"
type = "http"
localPort = 8080
customDomains = ["www.yourdomain.com"]
# 示例2:SSH 远程连接
[[proxies]]
name = "ssh"
type = "tcp"
localIP = "127.0.0.1"
localPort = 22
remotePort = 6000
启动客户端:
./frpc -c frpc.toml
步骤 4
验证连接
客户端启动后,可以通过以下方式访问内网服务:
# SSH 远程连接(示例2的配置)
ssh -p 6000 user@你的服务器IP
# Web 服务(示例1的配置)
# 浏览器访问 http://www.yourdomain.com
# 查看 Dashboard 管理面板
# 浏览器访问 http://服务器IP:7500
✅
如果能成功连接,说明 frp 配置正确,内网穿透已生效!
常用配置示例
🌐 暴露本地 Web 项目
适合给客户远程演示项目:
[[proxies]]
name = "my-project"
type = "http"
localPort = 3000
customDomains = ["demo.yourdomain.com"]
🖥️ 远程桌面连接
远程办公访问内网电脑:
[[proxies]]
name = "rdp"
type = "tcp"
localIP = "127.0.0.1"
localPort = 3389
remotePort = 3389
📁 文件服务器
通过插件快速共享文件:
[[proxies]]
name = "file-server"
type = "tcp"
remotePort = 9000
[proxies.plugin]
type = "static_file"
localPath = "/path/to/share"
高级功能
| 功能 | 说明 |
|---|---|
| Dashboard | 通过 Web 界面查看连接状态和流量统计 |
| P2P直连 | 使用 xtcp 类型实现点对点通信,流量不经服务器 |
| 负载均衡 | 多个 proxy 相同的 group 名称即可自动负载均衡 |
| 热重载 | 修改 frpc 配置后,执行 frpc reload 即可生效 |
| 健康检查 | 自动检测后端服务是否正常,异常时自动移除 |
| 带宽限速 | 可对每条隧道单独设置带宽限制 |
| 加密压缩 | 支持 TLS 加密传输,TOML 配置项开启压缩 |
常见问题
Q: 连接不上服务端?
- 检查服务器防火墙是否开放了
bindPort(默认7000) - 确认
auth.token客户端和服务端是否一致 - 确认服务器安全组规则是否放行了对应端口
Q: 如何设置开机自启?
# 创建 systemd 服务文件
sudo vim /etc/systemd/system/frps.service
[Unit]
Description=frps service
After=network.target
[Service]
Type=simple
ExecStart=/path/to/frps -c /path/to/frps.toml
Restart=on-failure
RestartSec=5s
[Install]
WantedBy=multi-user.target
# 启用并启动
sudo systemctl enable frps
sudo systemctl start frps
Q: frp 和 tunnelto 有什么区别?
| 对比项 | tunnelto | frp |
|---|---|---|
| Star | 5.6K | 104K |
| 协议支持 | 主要 HTTP | TCP/UDP/HTTP/HTTPS/KCP/QUIC |
| 管理界面 | 无 | Dashboard + Admin UI |
| 稳定性 | 一般 | 生产级稳定 |
| 社区 | 相对小众 | 超活跃社区 |
相关链接
- GitHub 仓库:https://github.com/fatedier/frp
- 官方文档:https://gofrp.org/zh-cn/docs/
- 最新版本:v0.67.0(2026年1月31日发布)
- 开源协议:Apache License 2.0
© 版权声明
版权与使用提示 · COPYRIGHT NOTICE
SECURE PROTOCOL / CMZ-2026
01重要使用须知
本站收集的资源仅供内部学习、研究软件设计思想与原理使用。学习研究后请自觉删除,请勿添加内容资料中的联系方式,谨防受骗;请勿传播。因未及时删除或用于其他用途所造成的任何后果,均由使用者自行承担。感谢理解与配合!
02侵权内容处理
若您认为「cmzhiku.com」发布的内容侵犯了您的合法权益,请联系站长邮箱:ksxwdyx@qq.com。我们将在核实后及时进行删除处理。
03资源失效反馈
本站资源大多存储于云盘。如发现下载链接失效或资源异常,请及时联系我们,我们会第一时间核实并更新。
THE END

















