0x00 frp的下载及安装
下载地址:https://github.com/fatedier/frp/releases
需要下载相应的平台和架构的,免安装版。
tips:
- 不同的代理客户端frpc.ini中的代理名字(即[]中的)不可重复;
- 有不了解的代理功能,通过查看frpc_full.ini找到相应的配置
0x01 服务器端 frps
在VPS(IP为3.3.3.3)上搭建frp-server,示例的配置文件如下:
#cat frps.ini
[common]
bind_port = 9000
vhost_http_port = 80
frps的启动命令
./frps -c frps.ini
frps的配置相对较少,vhost_http_port端口用于代理web服务。相当于frps提供了一个侦听端口,具体哪个代理服务开启在哪个端口由frpc.ini指定。
0x02 客户端 frpc [web]
因为一个frps上可以注册代理多个web,它们的端口都是vhost_http_port,因此,在每个代理 frp web client上都需要做域名映射,frps通过域名区分,进而转发到不同的frpc。
- 需代理的机器2.2.2.2上机器上进行如下配置
示例的配置文件如下:
[common]
server_addr = 3.3.3.3
server_port = 9000
[web]
type = http
local_port = 80
custom_domains = j.963564449.xyz
frpc的启动命令
./frpc -c frpc.ini
- 在访问机上配置/etc/hosts
3.3.3.3 j.963564449.xyz
- 在访问机上访问http://j.963564449.xyz,即可代理到2.2.2.2上的web服务。
0x03 客户端 frpc [ssh]
在需要代理的机器上进行如下配置
示例的配置文件如下:
[common]
server_addr = 3.3.3.3
server_port = 9000
[ssh]
type = tcp
local_ip = 127.0.0.1
local_port = 22
remote_port = 9022
frpc的启动命令
./frpc -c frpc.ini
在工作机上执行如下命令:ssh root@3.3.3.3即可代理到目标机器,输入密码即可登录。
0x02 客户端 frpc [socks5]
在需代理的机器上进行如下配置:
示例的配置文件如下:
[common]
server_addr = 3.3.3.3
server_port = 9000
[socks_proxy]
type = tcp
remote_port =9888
plugin = socks5
frpc的启动命令
./frpc -c frpc.ini
在工作机上配置/etc/proxychains.conf
socks5 3.3.3.3 9888
在工作机上执行proxychains xxxx,即可使用代理进行访问。比如 proxychains firefox, proxychains mysql -u -h -p等命令。