你是不是想搭建个网站,又迫切希望在外网朋友可以直接访问。
你是不是遇到过在家中,你要和朋友远程调试接口,但是同事在他家,无法调用你本地电脑的接口。
用这个工具你就可以通过互联网访问到你家中自己电脑上的网站,或者接口。
一.介绍
有些api的调用或者联调需要公网IP才能进行,这样一来不得不将代码部署到服务器进行访问,这样做是比较繁琐和麻烦的
内网电脑上部署得web应用,还有远程本地想和前端调试程序接口,都可以通过这个工具,远程访问自部署在内网得网站,和远程和前端同事本地调试接口。轻松实现外网访问内网。实现内网穿透
文章最后提供免费的服务器使用,避免大家去折腾搭建服务器。如果是小白,想直接使用,请直接看直接免费下载使用文章最后,下载直接使用,免费
二.安装配置
frp提供了热门平台的程序文件,所以安装也变得比较简单了,我这边的是Linux 64位平台的,其它的请自己去下——>传送门
服务端配置安装
wget https://github.com/fatedier/frp/releases/download/v0.12.0/frp_0.12.0_linux_amd64.tar.gz
tar xzf frp_0.12.0_linux_amd64.tar.gz
mv frp_*/frps /usr/bin/
mkdir /etc/frp/
rm -rf frp_*
然后根据下面配置你自己改了填到配置文件中
vi /etc/frp/frps.ini
下面是我翻译的带说明的服务端配置文件
[common]
#frp服务器监听地址,如果是IPV6地址必须用中括号包围
bind_addr = 0.0.0.0
#frp服务器监听端口
bind_port = 7000
#kcp的udp监听端口,如果不设那就不启用
#kcp_bind_port = 7000
#指定使用的协议,默认tcp,可选kcp
#protocol = kcp
#如果要使用vitual host,就必须设置
#vhost_http_port = 80
#vhost_https_port = 443
#Web后台监听端口
dashboard_port = 7500
#Web后台的用户名和密码
dashboard_user = admin
dashboard_pwd = admin
#Web后台的静态资源目录,调试用的,一般不设
#assets_dir = ./static
#日志输出,可以设置为具体的日志文件或者console
log_file = /var/log/frps.log
#日志记录等级,有trace, debug, info, warn, error
log_level = info
#日志保留时间
log_max_days = 3
#启用特权模式,从v0.10.0版本开始默认启用特权模式,且目前只能使用特权模式
#privilege_mode = true
#特权模式Token,请尽量长点且复杂
privilege_token = 12345678
#特权模式允许分配的端口范围
privilege_allow_ports = 2000-3000,3001,3003,4000-50000
#心跳超时,不用改
#heartbeat_timeout = 90
#每个代理可以设置的连接池上限
#max_pool_count = 5
#认证超时时间,一般不用改
#authentication_timeout = 900
#如果配置了这个,当你的模式为http或https时,就能设置子域名subdomain
#subdomain_host = frps.com
#是否启用tcp多路复用,默认就是true,不用管
#tcp_mux = true
在这个配置文件中老版本是可以不启用特权模式或者同时添加其它的section来在服务端配置其它的转发设置的,但是从v0.10.0版本开始后特权模式暂时是唯一可用的(因为方便,不用为了一个配置而既要改服务端又要改客户端)
在修改好服务端配置文件后,我们可以启用frp的服务端了
frps -c /etc/frp/frps.ini
客户端安装
然后服务端就OK了,下面开始配置客户端,客户端程序自己在GitHub上面下,各个平台的包里面frps是服务器,frpc就是客户端
配置文件如下,自己修改后保存为frpc.ini,这里是我已经配置好的
[common]
#这个是本人,提供的服务器不用修改。
server_addr = frp.zfcgl.com
server_port = 7000
[web01]
type = http
local_ip = 127.0.0.1
#你本地的服务启动监听的端口,比如我的tomcat端口是8080
local_port = 8080
use_encryption = false
use_compression = true
# http username and password are safety certification for http protocol
# if not set, you can access this custom_domains without certification
#http_user = admin
#http_pwd = admin
# if domain for frps is frps.com, then you can access [web01] proxy by URL http://test.frps.com
#只需要修改这里:请一定修改这个地址,避免冲突和别人的冲突 本地启动后,访问地址就是 http://myname.frp.zfcgl.com
subdomain = myname
#custom_domains = frp.zfcgl.com
# locations is only available for http type
#locations = /,/pic
#host_header_rewrite = example.com
# params with prefix "header_" will be used to update http request headers
#header_X-From-Where = frp
配置好配置文件以后
windows下启动
E:\tool\frp\frp_0.36.2_windows_amd64>frpc.exe -c frpc.ini
启动成功后是这个样子的
E:\tool\frp\frp_0.36.2_windows_amd64>frpc.exe -c frpc.ini
2021/05/10 15:14:05 [I] [service.go:304] [ca0d4a4ee390efc6] login to server success, get run id [ca0d4a4ee390efc6], server udp port [0]
2021/05/10 15:14:05 [I] [proxy_manager.go:144] [ca0d4a4ee390efc6] proxy added: [web01]
2021/05/10 15:14:05 [I] [control.go:180] [ca0d4a4ee390efc6] [web01] start proxy success
截图如下
如果不想研究服务端搭建过程,可以直接看我这个文章,下载直接使用。免费使用,内网穿透,外网访问内网个人电脑