FRP客户端与服务端配置实现内网穿透
作者:linkyang
标签:
发布时间:2025年09月11日 22:49:53
更新时间:2025年09月11日 22:49:53
什么是FRP?
FRP(Fast Reverse Proxy)是一个高性能的反向代理应用,可以帮助您轻松地将内网服务暴露到公网。无论您是想在外网访问家里的NAS,还是需要调试微信开发本地项目,FRP都能提供安全可靠的内网穿透解决方案。
基础概念
在开始配置前,先了解两个核心组件:
- FRP服务端 (frps):部署在具有公网IP的服务器上,用于接收外部请求并转发到内网客户端
- FRP客户端 (frpc):部署在内网环境中,用于注册服务并与服务端建立连接
服务端配置
1.编辑服务端配置文件(frps.toml):
sh
[common]
# 服务端监听端口
bindPort = 7000
# 认证令牌,确保客户端连接安全
token = your_secure_token_here
# 仪表板端口和认证信息
dashboardPort = 7500
dashboardPser = admin
dashboard_pwd = admin_password
# 日志设置
log_file = ./frps.log
log_level = info
log_max_days = 3
- 启动服务端
使用以下命令启动FRP服务端:
bash
./frps -c ./frps.toml
客户端配置
- 配置frpc.toml
编辑客户端配置文件:
sh
[common]
# 服务端地址和端口
serverAddr = your_server_ip
server_port = 7000
# 与服务端一致的认证令牌
token = your_secure_token_here
# 日志设置
log_file = ./frpc.log
log_level = info
log_max_days = 3
# 示例:Web服务穿透
[web]
type = tcp
localIp = 127.0.0.1
localPort = 80
remotePort = 8080
# 示例:SSH穿透
[ssh]
type = tcp
localIp = 127.0.0.1
localPort = 22
remotePort = 6000
# 示例:HTTP域名代理
[web2]
type = http
localPort = 8080
customDomains = your_domain.com
# 示例:HTTPS服务
[web3]
type = https
localPort = 443
customDomains = your_domain.com
- 启动客户端
bash
# Linux/Mac
./frpc -c ./frpc.toml
# Windows
frpc.exe -c frpc.toml
客户端每次启动太麻烦?我们可以创建一个批处理脚本文件快速启动
1.在客户端根目录创建一个run_frpc.bat的点bat文件。

2.编辑文件在文件内输入以下内容
shell
@echo off
frpc.exe -c frpc.toml
pause
下次启动直接双击此文件即可。
安全注意事项
- 使用强token:避免使用简单token,建议使用随机生成的复杂字符串
- 限制端口访问:使用防火墙只开放必要的端口
- 定期更新:保持FRP版本最新,避免已知漏洞
- 监控日志:定期检查日志文件,发现异常连接尝试
常见问题解决
Q: 客户端无法连接服务端 A:检查服务器防火墙设置,确保bindPort端口已开放
Q: 服务无法访问 A:检查客户端本地服务是否正常运行,以及端口映射是否正确
Q: 连接不稳定 A:调整心跳配置,增加超时时间
sh
[common]
# 增加心跳超时时间
heartbeatTimeout = 90
FRP是一个强大而灵活的内网穿透工具,通过本文的配置指南,您应该能够成功搭建自己的内网穿透服务。无论是个人使用还是小型团队协作,FRP都能提供稳定可靠的解决方案。
记得在实际使用中根据您的具体需求调整配置,并始终将安全放在首位!!!
注意: FRP从v0.52.0版本开始,引入了对TOML(以及YAML和JSON)配置文件的支持,并逐渐弃用了旧的INI格式.本文基于FRP v0.52.3版本,不同版本配置可能略有差异,请以官方文档为准。
登录后可查看并参与评论
Gitee 登录
目录导航
什么是FRP?
服务端配置
客户端配置
友情链接
暂无链接