Ricky Hao

使用frp配置内网穿透

0x00 缘由

最近Oray的花生壳需要实名才能使用(就很难受)。然后在网上搜了一波发现一挺好用的工具frp

0x01 获得frp服务端

从Github上frp的Release下载最新的版本Release
其中的frps就是服务端本体,frps_full.ini是完全版本的服务端配置。(感觉在linux服务器上看到.ini文件瞬间出戏233)

0x02 配置frp服务端

在这里,frps_full.ini配置文件以及写的很清楚了,只有以下几项需要注意下:
* dashboard: 配置里,user和password最好都改一下
* log_file: 这项若是被注释掉,那么将会将所有日志直接输出在控制台里
* privilege_token: 这项是密钥,只有相同密钥的frp才能连接。
* privilege_allow_ports: 允许使用的端口,可以按照现有形式来自定义下。
* subdomain_host: 服务器使用的域名,其他web服务可以设置二级域名。

0x03 配置frp客户端

首先,是客户端的通用配置

server_addr = 服务器ip
server_port = 服务器端口
privilege_token = 服务器密钥
user = 客户端名称
protocol = 服务器协议(tcp或者kcp)
login_fail_exit = false表示自动重试
start = 启动的配置

接下来是最简单的配置(例如RDP)

[rdp]   #不要使用common
type = tcp  #使用的协议
local_ip = 127.0.0.1    #本地ip,可以是本机,也可以是局域网内其他ip
local_port = 3389   #RDP端口
use_encryption = true   #使用加密
use_compression = true  #使用压缩

对于一些内网web服务,可以这样配置

[web]
type = http #Web服务类型,可以是https
local_port = 80 #http端口,https为443
subdomain = web #可以使用web.servername.com直接访问内网服务

0x04 总结

frp的潜力还很大,准备用其将自己的各个设备串联在一起(例如树莓派什么的)。相对于ngrok,开源的1.x版本和frp比起来还是没有这么方便。当然,希望frp能够提供更多的流量加密算法,以及TLS?

点赞

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据