蒙戈经理
一个安全的,自托管的MongoDB管理器在您的浏览器中,与AI代理,询问之前,它的变化 任何东西。单独或与您的团队一起使用:角色和双因素登录,备份,实时同步,副本 集合和分片集群,支持十种语言。完全离线工作。
截图,每个功能和完整的文档: github.com/mongo-manager/mongo-manager
安装
npx @mongo-manager/app # try it
npm install --global @mongo-manager/app
离线或气隙:复制发布tarball并安装它。它没有依赖关系,也不运行安装脚本。
npm install --global ./mongo-manager-<version>.tgz
需要Node.js 24或更新版本。
使用
mongo-manager # local mode on http://127.0.0.1:4321, opens your browser
mongo-manager --auth # team mode: users, roles, two-factor sign-in
mongo-manager --help # all commands and options
| 命令 | 目的 |
|---|---|
start | 启动web UI(默认命令) |
open [--no-open] | 使用新的一次性链接打开正在运行的本地模式Mongo Manager |
forget-browsers | 将每个浏览器退出本地模式(然后每个浏览器都需要一个新链接) |
user add <name> --role admin|editor|viewer | 创建用户 |
user reset-password <name> | 设置一个新密码,并在任何地方注销用户 |
user reset-2fa <name> | 删除用户的双因素方法(管理员恢复) |
user list | 用户列表 |
bans list | 列出禁止团队模式登录的地址 |
bans lift <address> / bans lift --all | 取消登录禁令(你自己的地址,没有会话),或者每个人 |
access list | 列出团队模式面板回答的地址(空列表:每个地址) |
access clear | 让每个地址再次到达面板(管理员被锁定) |
rotate-key | 用新密钥重新加密所有存储的秘密。首先停止服务器。 |
doctor | 检查安装和数据目录 |
service install | 作为与机器一起启动的系统服务运行(root或Administrator) |
service uninstall | 删除服务;保存数据、配置和密钥(root或Administrator) |
service status|logs [-f] | 显示服务状态或其日志(-f 遵循;不支持Windows) |
service open | 打印一个以本地模式(root或Admin)打开服务的一次性链接 |
backup inspect <file> | 列出备份文件所包含的内容 |
backup decrypt <file.mmbak> -o <file> | 将加密的备份解密为普通归档文件 mongorestore 可以阅读 |
backup decrypt … --key-file <kit.txt> | 对于使用备份密钥及其恢复套件密封的计划备份也是如此 |
version | 打印版本 |
每个服务器选项也有一个 MM_* 例如,环境变量 MM_WEB_PORT, MM_AUTH=1 或者 MM_DATA_DIR.
在服务器上
团队模式,背后的反向代理服务HTTPS (nginx, Caddy):
mongo-manager --auth --host 127.0.0.1 --trusted-proxies 127.0.0.1 --allowed-hosts mongo.example.com
第一个start打印一次性设置令牌;打开地址并创建第一个管理员。
现成的nginx和Caddy配置,系统服务和Docker在
部署/。使用 --base-path /mongo/
在子路径下提供。
安全笔记
-
听地址。 Mongo Manager听着
127.0.0.1默认情况下。它拒绝监听网络地址--auth. -
数据目录。 所有内容都位于数据目录(默认)中
~/.mongo-manager,模式0700):- 数据库;
- 加密密钥
secret.key(0600)模式。您可以通过MM_SECRET_KEY; - 在本地模式下,
launch.key(模式0600):一次性发射链接的秘密来源。只有打开这种链接的浏览器才能使用本地模式;在Mongo Manager停止时删除该文件,以签署每个浏览器退出。
将数据目录和密钥一起备份。如果没有密钥,保存的连接密码将无法解密。
-
命令行上的密码。 永远不要将密码作为命令行参数传递;其他用户可以在进程列表中看到它们。
user命令提示符输入密码,或使用--password-stdin.- 使用
MM_URI而不是--uri用于包含密码的连接字符串。
许可证
知识共享署名-非商业用途-相同方式共享4.0国际(CC BY-NC-SA 4.0):
免费使用,共享和改编,并注明出处,不用于商业目的,并在相同的情况下共享
许可证。捆绑的第三方组件保留自己的许可证(dist/THIRD-PARTY-NOTICES.txt)。
作者
Gokhan OZGEZER · [email protected] · GitHub · 问题