FRP 内网穿透快速部署
本项目提供一键部署脚本,帮助开发者快速搭建 FRP 内网穿透服务,用于本地开发调试企业微信、钉钉、飞书、微信公众号等需要公网回调地址的应用。 完整脚本位于项目根目录docs/frp-deploy 目录下,或者查看:https://github.com/LangChat/frp-deploy
Client端
Server端
管理页面
使用场景
在对接以下平台时,需要配置公网可访问的回调地址:- 企业微信机器人
- 钉钉机器人
- 飞书机器人
- 微信公众号
前置条件
- 一台云服务器(阿里云、腾讯云等),需要有公网 IP
- 一个域名,并已解析到云服务器 IP
- 本地开发电脑(macOS 或 Windows)
快速开始
第一步:修改配置
重要:使用前必须修改脚本中的占位符配置在两个脚本中搜索并替换以下内容:
| 占位符 | 替换为 | 说明 |
|---|---|---|
47.1.1.1 | 你的服务器公网 IP | 例如 123.45.67.89 |
example.com | 你的域名 | 例如 yourdomain.com |
frp.example.com | 你的 FRP 子域名 | 例如 frp.yourdomain.com |
第二步:部署服务端(云服务器)
将deploy-frp-server.sh 上传到云服务器并执行:
- 下载并安装 FRP 服务端
- 生成随机认证令牌(Token)
- 配置 systemd 服务(开机自启)
- 配置防火墙规则
- 生成客户端配置模板
- 服务器 IP 和端口
- 认证令牌(Token)
- 仪表盘地址和密码
第三步:配置云服务商安全组
在云服务商控制台的安全组中,添加以下入站规则:| 端口 | 协议 | 用途 |
|---|---|---|
| 17777 | TCP | FRP 客户端连接 |
| 17778 | TCP | FRP 仪表盘 |
| 18080 | TCP | HTTP 虚拟主机(或用 Nginx 反代 80 端口) |
| 10000-20000 | TCP | TCP 代理端口范围(按需开放) |
第四步:配置 DNS 解析
在域名 DNS 管理中添加 A 记录:frp.yourdomain.com 将指向你的服务器。
第五步:部署客户端(本地电脑)
macOS
Windows
- 服务器 IP
- 服务器端口(默认 17777)
- 认证令牌(从服务端获取)
- 要映射的本地端口(如 3000、8100)
- 子域名前缀(如
dev,访问地址将是dev.yourdomain.com)
日常使用
启动/停止客户端
macOS
Windows
服务端管理
访问仪表盘
浏览器打开http://<服务器IP>:17778,使用部署时生成的用户名和密码登录。
配置文件位置
服务端(云服务器)
| 文件 | 路径 |
|---|---|
| FRP 程序 | /opt/frp/server/ |
| 服务端配置 | /opt/frp/server/frps.toml |
| 客户端模板 | /opt/frp/server/frpc-template.toml |
| Nginx 配置 | /opt/frp/server/nginx-frp.conf |
| 凭据文件 | /opt/frp/.credentials |
| 日志 | /var/log/frps.log |
客户端(本地 macOS)
| 文件 | 路径 |
|---|---|
| FRP 程序 | ~/.local/frp/frpc |
| 配置文件 | ~/.config/frp/frpc.toml |
| 日志 | ~/.local/log/frp/frpc.log |
| LaunchAgent | ~/Library/LaunchAgents/com.fatedier.frpc.plist |
客户端(本地 Windows)
| 文件 | 路径 |
|---|---|
| FRP 程序 | %USERPROFILE%\.local\frp\frpc.exe |
| 配置文件 | %USERPROFILE%\.config\frp\frpc.toml |
| 日志 | %USERPROFILE%\.local\log\frp\frpc.log |
配置多个代理
编辑客户端配置~/.config/frp/frpc.toml:
常见问题
客户端连接失败
- 检查服务器安全组是否放行 17777 端口
- 检查 Token 是否正确
- 检查服务端是否正常运行:
sudo systemctl status frps
域名无法访问
- 检查 DNS 解析是否生效:
dig frp.yourdomain.com - 检查安全组是否放行 80/18080 端口
- 检查 Nginx 配置是否正确(如果使用 Nginx 反代)
本地服务访问超时
确保本地服务正在运行且监听正确的端口:安全建议
- 妥善保管 Token:认证令牌相当于密码,泄露后他人可连接你的服务端
- 限制端口范围:
allowPorts配置限制了可使用的代理端口 - 定期更新:关注 FRP 版本更新,及时修复安全漏洞
- 生产环境:内网穿透仅建议用于开发调试,生产环境请使用正规部署方案

