FRP初体验

  |   0 评论   |   0 浏览

背景

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

其它高级用法

这里略,请参考本文末尾的参考系列。

参考