简介:frp主要用于隧道搭建,另外两种情况这里只写配置
目录
1.测试环境
2.访问web
服务端
客户端
3.连ssh
客户端
4.隧道搭建
服务端
客户端
效果
1.测试环境
公网:
1.vps(ip:81.70.x.x)
内网:
2.kali1(ip:192.168.117.128)
3.kali2(ip:192.168.117.137)
条件:内网主机上有frp且可控。
2.访问web
场景:内网机子192.168.117.128上有web服务但不出网,想用公网vps直接访问web资源
服务端
(vps)frps.ini配置:
[root@VM-20-13-centos frp_0.61.1_linux_amd64]# cat frps.ini
[common]
bind_port = 7000
token = 123
运行:
[root@VM-20-13-centos frp_0.61.1_linux_amd64]# ./frps -c frps.ini
客户端
(kali1)frpc.ini配置:
┌──(root㉿kali)-[~/mytools/frp_0.61.1_linux_amd64]
└─# cat frpc.ini
[common]
server_addr = 81.70.x.x //vps的ip
server_port = 7000 //vps的端口
token = 123 [web]
type = tcp
local_ip = 192.168.117.128 //自己ip
local_port = 9999 //web服务的端口
remote_port = 8000 //用于跟服务端相连的端口
运行:
┌──(root㉿kali)-[~/mytools/frp_0.61.1_linux_amd64]
└─# ./frpc -c frpc.ini
访问:
[root@VM-20-13-centos ~]# curl http://81.70.228.252:8000/frptest.txt //这里是访问的自己ip和客户端开启的端口
3.连ssh
服务端配置和2一样
客户端
[common]
server_addr = 81.70.228.252
server_port = 7000
token = 123[web]
type = tcp
local_ip = 192.168.117.128
local_port = 9999
remote_port = 8000[ssh]
type = tcp
local_ip = 192.168.117.128
local_port = 22
remote_port = 8022
访问:
ssh -p 8022 root@127.0.0.1 //端口写客户端的,然后输入密码后就ssh连上客户端了
4.隧道搭建
场景:上述两种情况都可以实现,并且可以在渗透测试时访问内网其他资源,包括访问web、ssh、smb以及利用工具进一步渗透等。
服务端
frps.ini配置:
[common]
bind_port = 7000 //和客户端连接用的端口
token = 123[socks5]
type = tcp
bind_port = 7001 //socks代理用的端口
proxychains配置:
socks5 127.0.0.1 7001 //通过proxychains访问内网
客户端
frpc.ini配置:
[common]
server_addr = 81.70.x.x //vps_ip
server_port = 7000 //连接端口
token = 123[socks5]
type = tcp
remote_port = 7001 //socks的端口
plugin = socks5 //使用socks5
此时就相当于通过128这台内网机子访问内网的其他资源和服务,
效果
查看frp启动情况:
vps:
kali1:
访问web资源
此时kali2(137)起一个web,然后在vps上通过kali1(128)访问:
可以看到kali2这里显示的是128这个ip访问的:
使用ssh
这里通过kali1ssh连到kali2上: