【首发】极简 + 批量多机单向执行命令 + 单机交互式命令行, 一个浏览器就可以愉快玩机

60天前,我为论坛的机友制作了一个玩机工具 post-233023-1,当时功能较为粗糙。

今天,在 AI 的加持下,我带来了全新的 0.2.0 版本!一行命令即可通过 Docker 部署到你的服务器上,轻松使用。


🚀 快速部署

只需运行以下命令即可完成部署:

docker run -d --network host hochenggang/managi:0.2.0

部署完成后,访问 http://:18001 即可开始使用。

提示: 你还可以进一步配置反向代理或绑定域名,提升使用体验。


🌐 在线体验

只想围观?可以直接在线看看效果:
https://managi.imhcg.cn/


🛠 核心特性

  • 数据安全:所有数据存储在你的浏览器本地,支持随时导入导出。
  • 轻量化设计:核心功能完全在浏览器端实现。
  • 隐私保护:Docker 内的 Python 程序仅提供协议转换(ws 转 ssh),不记录任何用户数据。
  • 开源项目:后端代码仅为一个 .py 文件,前端代码仅为一个 .html 文件,简单易懂。

🎯 使用场景

  • 简易跳板机:你可以将此工具用作简单的跳板机,方便管理多台远程服务器。
  • 自定义认证:通过反向代理配置,可以轻松添加身份认证功能,增强安全性。
  • 灵活扩展:由于项目开源且结构简单,你可以根据需求进行二次开发或功能扩展。

📸 功能展示

以下是工具的部分界面截图:


图1:单机交互式 SSH


图2:批量多机单向执行命令


🌱 开源地址

如果你对该项目感兴趣,欢迎访问 GitHub 仓库并点个星标支持我!
github.com/hochenggang/managi-backend


🙏 感谢支持

希望这个工具能为大家带来便利!如果有任何问题或建议,欢迎在评论区留言交流。


🚨 注意事项

  • IPv6 支持:如果你需要通过此工具连接 IPv6 地址的服务器,请确保部署该工具的机器本身支持 IPv6,否则可能无法正常访问目标服务器。

📌 工作说明

以下是一个简单的连接流程示意图,帮助你更好地理解工具的工作原理:

 -------------------        WebSocket (ws)        ------------------- 
|                   |   -----------------------> |                   |
|  用户浏览器        |                           |  Managi 工具      |
|                   |    ssh)  ------------------- 
                                                         |
                                 |                SSH 连接
                                                         v
 -------------------        SSH 隧道           ------------------- 
|                   |   -----------------------> |                   |
|  用户浏览器       |                           |  目标服务器       |
|                   |   <----------------------- |                   |
 -------------------                             ------------------- 

📝 流程说明

  1. 用户操作

    • 用户通过浏览器访问部署好的 Managi 工具(http://:18001)。
    • 在工具中输入目标服务器的 SSH 信息(如 IP 地址、端口、用户名和密钥等)。
  2. WebSocket 通信

    • 用户浏览器与 Managi 工具之间通过 WebSocket (ws) 协议进行通信。
    • 用户的操作指令(如键盘输入、终端命令等)会通过 WebSocket 发送到 Managi 工具。
  3. Managi 工具作为跳板机

    • Managi 工具接收到用户的 WebSocket 数据后,将其转换为标准的 SSH 协议数据。
    • Managi 工具以跳板机的身份,通过 SSH 协议直接连接到目标服务器。
  4. SSH 隧道建立

    • Managi 工具与目标服务器之间建立了 SSH 隧道。
    • 所有用户的终端操作都会通过这个 SSH 隧道传递到目标服务器。
  5. 返回结果

    • 目标服务器的输出结果会通过 SSH 隧道返回到 Managi 工具。
    • Managi 工具再将结果通过 WebSocket 发送回用户的浏览器。

点赞
  1. lily说道:

    可以的

  2. 丁巳说道:

    @imhcg #8 ok.好了,牛逼

  3. affji说道:

    哇,支持,试用一把看看效果!

发表回复

电子邮件地址不会被公开。必填项已用 * 标注

×
订阅图标按钮