
一、简介
- Chisel 是一个易于使用、高效、稳定、安全的内网穿透工具
- 可以穿透转发 TCP/UDP 协议相关的服务,通过 HTTP 传输,并通过 SSH 进行数据加密保护
- 单一可执行程序,支持多种操作系统快速安装,也提供Docker镜像
- 开源地址参考:https://github.com/jpillora/chisel
- C/S架构,需要公网服务器,工作原理与相关架构可参考下图

二、安装
1. Linux、Mac等环境可以使用命令行快速安装
curl https://i.jpillora.com/chisel! | bash

3. 使用Docker安装(推荐)
服务端和客户端都需要提前安装好Docker、docker-compose环境
服务端启动,可新建docker-compose.yml配置文件,内容如下
services:
chisel:
image: jpillora/chisel
#network_mode: host
#服务端运行模式,指定服务端口12345
command: server --port 12345 --reverse --auth admin:123456
ports:
- "12345:12345" #暴露服务端口
- "9000:9000" #暴露可以转发到内网服务的端口
- "3306:3306" #暴露服务端口
在服务器运行服务启动命令
docker-compose up -d

客户端启动,在客户端的机器上新建docker-compose.yml配置文件,内容如下
services:
chisel:
image: jpillora/chisel
# 指定授权和服务端ip与端口,设置服务端9000、3306端口转发到本机的portainer、mysql服务
command: |
client
--auth admin:123456
公网服务ip:12345
R:9000:172.17.0.1:9000
R:3306:172.17.0.1:3306
同样在客户端主机上运行服务启动命令
docker-compose up -d

三、使用示例
四、总结
- chisel 是一个安装、配置、使用都简单方便的内网穿透工具,便于一键安装使用
- 除了简单的内网穿透功能(反向端口转发),还可以让 Chisel 作为一个 SOCKS5 代理(类似正向代理),更多玩法自行探索
- 特点就是基于http(s)的长连接的Websocket传输隧道,让流量看起来就像正常的网站流量,加上ssh数据加密,实现稳定安全抗干扰审查的内网穿透服务