简述:

现在反爬层数不穷, 目前很多大厂app, 无法完全破解, 都是基于hook来获取加密参数, 涉及到一个主动调用,就需要起一个http服务, 或者tcp服务来进行调用加密函数,返回加密结果, 这个服务有个前提就是需要有一台真机, 可以是模拟器, 或者是一台手机, 本篇讲的主要是,通过frp 进行内网穿透指向linux 服务端,进行外网访问,并配置nginx,后台维护,这些真机设备,并实现负载均衡, 可以直接访问 frp服务端地址,来进行加密。

frp:

frp 是一个高性能的反向代理应用,可以帮助您轻松地进行内网穿透,对外网提供服务,支持 tcp, http, https 等协议类型,并且 web 服务支持根据域名进行路由转发。

frp作用

  • 利用处于内网或防火墙后的机器,对外网环境提供 http 或 https 服务。
  • 对于 http 服务支持基于域名的虚拟主机,支持自定义域名绑定,使多个域名可以共用一个80端口。
  • 利用处于内网或防火墙后的机器,对外网环境提供 tcp 服务,例如在家里通过 ssh 访问处于公司内网环境内的主机。

架构

android frp机制 frp android客户端_小程序

frp安装(centos7) 服务端:

下载frp可执行包:

wget https:///fatedier/frp/releases/download/v0.27.0/frp_0.27.0_linux_amd64.tar.gz

解压
tar zxf frp_0.27.0_linux_amd64.tar.gz

进入文件
cd frp_0.27.0_linux_amd64/

在服务端可以把frpc 和frpc.ini 文件删除。用处不大。
rm frpc, frpc.ini

打开配置文件
vim frps,ini

配置如下, bind_addr 填写对应的外网ip,如果是内网访问的,也可以写内网ip。 token, 客户端验证的时候需要填的信息,dashboard_user 是frp后台的账号和密码。

android frp机制 frp android客户端_web app_02

启动服务
./frps -c ./frps.ini

frp的后台界面, 当然现在客户端现在还没有配置,所以也没有什么服务。

android frp机制 frp android客户端_http_03

frp安装(centos7) 客户端:

客户端和服务端一样,只不过要启动的服务不一样和执行的配置文件不一样。

  • 客户端配置文件
server_addr = 服务端ip, 
server_port = 服务端端口,
token 就是上面服务端 里的哪个token

ssh tcp 是对外连接的端口和ip, 
local_ip 是本机ip 127.0.0.1, 剩下两个port可以随意写。
后期nginx 会监听local_port端口。

web http连接
local_port  xposed 在真机起的服务端口。
custom_domains = 服务域名,或者ip。


客户端启动服务
./frpc -c ./frpc.ini

登录frp后台,就可以看到客户端了,

android frp机制 frp android客户端_android_04

某加密网站,基本到这一步,已经实现了转发, 可以直接请求服务端ip,映射到这个手机上去, 如果有多台手机,就需要配置一下nginx,来进行转发, 并实现负载均衡, nginx,本篇就不讲了,网上傻瓜是教程, 一步步的,然后配置一个负载均衡,如果是云手机,就是多个ip内网ip就好了。如

android frp机制 frp android客户端_android frp机制_05