关于Joggle平台
Joggle是一款基于Java的开源的内网穿透Web管理工具。使用Websocket实现了Joggle内网穿透控制协议,控制Ngrok客户端实现完全Web界面管理端口映射。 使用golang语言实现客户端与节点服务的内网穿透、NAT打洞等。
注意:本项目对Ngrok1.7源码定制化的修改以满足安全性、功能性等需求,所以客户端需要使用作者提供的Ngrok客户端,请使用百度网盘编译好的ngrokd & ngrok命令。
项目 | 类型 | 开源协议 | 说明 |
---|---|---|---|
joggle-server | java | Apache License | 100%开源项目 |
joggle-ngrok | golang | Apache License | 100%开源项目 |
Joggle 特点
- 开源、灵活配置、多用户支持、多协议支持;
- 支持Http+Https、Http、Https、TCP、UDP、P2P协议;
- 支持自定义私有域名&私有域名https配置;
- TLS实现数据的安全传输;
- 断连重试机制;
- 反向代理请求;
- 远程网络唤醒(v1.2.3开始支持);
- 支持多CPU平台docker容器镜像;
- 任意门支持,提供文件传输服务 (设计中...)(v1.2.15开始支持)
- 支持P2P(NAT打洞)管理,不消耗公网付费流量;(v1.2.15开始支持)
- go-proxy代理支持
- 流量监控 (v1.3.6开始支持)
Joggle的管理界面
目前实现了Mac、linux、window全环境适配.支持32位64位系统,也支持ARM架构CPU。
在ARM 32CPU 晶晨S805芯片测试
Joggle 逻辑架构
Joggle 项目结构
目录 | 说明 |
---|---|
build | 构建使用的目录接口,用户DevOps流水线发布产品 |
joggle-common | 公共模块,包含加密、日志配置、Joggle协议 |
joggle-client | Joggle客户端代理程序,主要控制Ngrok客户端协同操作 (已废弃:采用golang开发客户端) |
joggle-server | Server端为服务端主控程序,提供系列接口供Web前端页面调用,控制Client操作Ngrok客户端 |
databases | sql相关的(历史原因部分字段的设计采用驼峰) |
JoggleServer占用的默认端口说明:
端口 | 说明 |
---|---|
8083 | Ngrok通道端口 |
80 | 代理的http端口(固定) |
443 | 代理的https端口(固定) |
8081 | Joggle WEB管理服务(默认端口,可通过环境变量修改) |
Joggle Client 快速体验
首先您需要登录到平台注册一个账号,激活后您将获得一个雪花域名(激活账号后才有哦)。
如果您安装有docker环境,推荐您执行使用docker 运行,启动后将注册到joggle公网平台
docker run --rm wuweiit/bullet-client
没有docker环境就继续往下看了
1、 下载系统对应的客户端
joggle-client的部署非常简单,百度网盘下载对应的client包
下载地址:https://pan.baidu.com/s/1dy2qzPtN3CmftuHGm3BJgA
密码: h9hf
2、解压客户端
tar -xvf joggle-client-linux.tar.gz
树形结构如下
.
├── bin
│ ├── bullet
│ ├── bullet.bat
│ └── ngrok
├── conf
│ ├── cert
│ │ ├── ca.crt
│ │ └── readme.md
│ ├── config.json
│ └── ngrok.yml
├── doc
│ ├── bullet.service
│ └── http\345\215\217\350\256\256.md
└──
3、执行 ./bin/bullet 启动客户端
- linux/Mac 进入joggle-client目录 执行
./bin/bullet
- windows 双击
./bin/bullet.bat
- 可以通
ngrok service install
安装系统服务 - 可以通
ngrok service uninstall
卸载服务
输出日志有客户端编号(这里可以利用平台设备发现功能绑定)
================================================
================ Device NO =====================
=== 5s4jmygyox6o ===
================================================