chisel:一款快速稳定的隧道工具

下载

https://github.com/jpillora/chisel

这是一款采用Go编写的工具,支持多平台的使用。

A fast TCP/UDP tunnel over HTTP

这款工具底层采用了HTTP进行传输,将TCP/UDP链接封装在HTTP隧道中,并且还使用了SSH对通信数据进行加密。

这里先上一张我梳理过的脑图

程序只有一个二进制文件,客户端和服务端都包含在其中,通过给定参数运行客户端或服务端。

端口转发

首先我在服务器执行启动一个http服务器,并且该服务器只对本地端口开放。

python3 -m http.server –bind 127.0.0.1 8000

那么为了在其他电脑上能访问到这个http服务,我们就需要做端口转发。

正向连接
在服务器(192.168.61.128)上执行

./chisel server -p 12345

在客户端(192.168.61.129)上执行

chisel.exe client 192.168.61.128:12345 11111:127.0.0.1:8000

通过与192.168.61.128:12345建立隧道,然后本地使用1111端口,映射到目标的8000端口

然后在客户端计算机上直接打开网页即可访问到服务器上的http服务

反向连接

在客户端(192.168.61.129)上执行

chisel.exe server -p 12345 --reverse

在服务器(192.168.61.128)上执行

./chisel client 192.168.61.129:12345 R:11111:127.0.0.1:8000

通过与192.168.61.129:12345建立隧道,然后反向把目标的11111端口映射到本地的8000端口

与上面的例子类似, 可以在客户端计算机上打开对应的网页

关于Zeno Chen

本人涉及的领域较多,杂而不精 程序设计语言: Perl, Java, PHP, Python; 数据库系统: MySQL,Oracle; 偶尔做做电路板的开发,主攻STM32单片机
此条目发表在C/C++分类目录。将固定链接加入收藏夹。