FRP初体验
背景
FRP (Fast Reverse Proxy)是一款内网穿透工具。其使用Go语言开发,支持TCP、UDP、HTTP、HTTPS等协议,并且支持根据域名进行路由转发。
初体验
下载安装包
在frp@github上下载对应的安装包。此处下载了frp_0.32.0_linux_amd64
包。
启动最小服务端
直接启动
[node@abeffect frp_0.32.0_linux_amd64]$ ./frps -c ./frps.ini
2020/03/19 10:29:34 [I] [service.go:157] frps tcp listen on 0.0.0.0:7000
2020/03/19 10:29:34 [I] [root.go:209] start frps success
启动最小客户端
修改配置文件frpc.ini
中的ip地址
1 [common]
2 server_addr = xx.xx.xx.xx
3 server_port = 7000
启动客户端
[note@localhost frp_0.32.0_linux_amd64]$ ./frpc -c ./frpc.ini
使用TCP访问内网机器
默认已经,有了使用TCP访问ssh服务的相关配置。使用如下:连接服务端的端口,即可。
ssh xx.xx.xx.xx -p 6000
使用较安全服务端
修改配置文件,替换掉默认端口,增加 token 认证,强制使用TLS。
[common]
bind_port = 6666
authentication_method = token
token = af240fb68fe73f8521afc95f07f2cb9f679808e2
tls_enable = true
tls_only = true
使用较安全客户端
修改配置文件,替换掉默认端口,增加和服务端同样的token 认证。打开ssh压缩(snappy压缩)。
[common]
server_addr = xx.xx.xx.xx
server_port = 6666
authentication_method = token
token = af240fb68fe73f8521afc95f07f2cb9f679808e2
tls_enable = true
tls_only = true
[ssh]
type = tcp
local_ip = 127.0.0.1
local_port = 22
remote_port = 8022
use_compression = true
其它高级用法
这里略,请参考本文末尾的参考系列。