FRP(Fast Reverse Proxy) 是一个免费开源的用于内网穿透的反向代理应用,它支持 TCP、UDP 协议, 也为 http 和 https 协议提供了额外的支持。你可以粗略理解它是一个中转站, 帮你实现 公网 ←→ FRP(服务器) ←→ 内网 的连接,让内网里的设备也可以被公网访问到。GitHub 地址:https://github.com/fatedier/frp
frp有客户端和服务端,客户端放在本地电脑或服务器,服务端放在云服务器。
服务器安装
从github页面下载FRP软件包:https://github.com/fatedier/frp/releases
下载
下载对应的版本,如果不清楚处理器架构,可在终端输入arch命令来查看。
1 | 进入服务器用wget下载 |
软件包中有客户端和服务端两种程序,以frps和frpc区分。frps即为frp server,frpc即为frp client。
配置
配置文件 frps.toml
1 | # web页面 |
放行相应的端口,我这里是7000,8088,8099,7500。端口自己设置不必和我的一样
启动
1 | ./frps -c ./frps.toml |
- 启动后台运行
1 | nohup ./frps -c ./frps.toml & |
- 关闭服务
1 | 首先找到frp服务进程 |
- 进入 frp 控制面板
访问 http://domain.com:7500 (需要将域名解析到服务器)
输入用户名和密码进入控制面板,查看服务信息。
客户端安装
下载合适的安装包, frp_0.61.0_android_arm64.tar.gz
配置
和服务端类似下载后解压,放到合适的地方。删除frps相关的文件,配置frpc.toml
1 | # web页面 |
启动
1 | ./frpc -c ./frpc.toml |
测试
本地启动一个测试 springboot 服务,端口 8888 的项目。使用url访问您的本地Web服务 http://frp.domain.com:8088
常见错误
1 | 错误1(frps): Create vhost http listener error, listen tcp 0.0.0.0:80: bind: An attempt was made to access a socket in a way forbidden by its access permissions. |

