1.在mac os的虚拟机里准备三台kali
三台主机ip地址分别是 192.168.1.15,192.168.1.16,192.168.1.17,
为方便描述 依次把他们暂且命名为主机A,主机B,主机C
2.在主机C 上打开终端,输入 cd /usr/local/src
然后新建一个hello.txt 文件,文件里的内容写一句话:helloworld
在/usr/local/src 目录下输入命令 python3 -m http.server 开启http服务
3.在主机 A和B 上的浏览器分别输入192.168.1.17:8000,都能够访问
4.在主机C 上的终端输入sudo iptables -A INPUT -p tcp -s 192.168.1.15 -j DROP 设置防火墙规则,禁止主机A访问主机C上的所有tcp服务,因为http是建立在tcp之上的,所以A不能访问C主机的http服务
5.在浏览器输入https://github.com/esrrhs/pingtunnel/releases,下载pingtunnel,解压压缩包后传入A,B主机
6.把主机B作为pingtunnel服务端,A主机作为pingtunnel客户端
在 B主机终端上输入: sudo ./pingtunnel -type server -key 1234 #设置密码
在A主机终端上输入:
sudo ./pingtunnel -type client -l :4455 -s 192.168.1.16 -t 192.168.1.17:8000 -tcp 1 -key 1234 #监听本地的 4455 端口,发送到本机4455端口的流量将通过 ICMP 隧道转发到 C 服务器的 8000 端口
7.最终结果是: 主机A访问 本地的4455端口就可以实现对C主机上8000端口的访问,突破了防火墙的限制
8.参考链接