frp 内网穿透
frp 是一个可用于内网穿透的高性能的反向代理应用,支持 tcp, udp 协议,为 http 和 https 应用协议提供了额外的能力,且尝试性支持了点对点穿透。
目前只用到web服务, 其他用途请移步官方仓库
例如下载这个: frp_0.29.1_linux_amd64.tar.gz
wget https://github.com/fatedier/frp/releases/download/v0.29.1/frp_0.29.1_linux_amd64.tar.gz
解压
tar -zxvf frp_0.29.1_linux_amd64.tar.gz
编辑 frps.ini
[common]
bind_port = 7000
vhost_http_port = 80
token = 123456
bind_port是服务端与客户端之间通信使用的端口号,默认就可以。
token用于验证连接,只有服务端和客户端token相同的时候才能正常访问。如果不使用token,那么所有人都可以直接连接上,所以我建议大家在使用的时候还是把token加上。
v_host_http_port 设置http访问端口, 如果使用https, 改成v_host_https_port
启动指令
./frps -c ./frps.ini
编辑frpc.ini
# frpc.ini
[common]
server_addr = x.x.x.x
server_port = 7000
[web]
type = http
local_port = 80
custom_domains = www.yourdomain.com
[mysql]
type=tcp
local_ip=192.168.2.44
local_port=3306
remote_port=3399
server_addr 服务器地址
server_port 服务器启动frps所绑定的端口, 同上面的bind_port = 7000
type 协议类型: http或https
local_port 是客户端 网站所用的端口号
启动 frpc:
./frpc -c ./frpc.ini
www.yourdomain.com
的域名 A 记录解析到 IPx.x.x.x
,如果服务器已经有对应的域名,也可以将 CNAME 记录解析到服务器原先的域名。http://www.yourdomain.com
即可访问到处于内网机器上的 web 服务。