# 安全说明 GUKO 是自部署服务器管理 Bot。它会保存 SSH 凭据,并能触发预置的只读/测试类任务;当前定位不是通用远程命令执行工具。请按下面规则部署。 ## 必须自建 Bot - 不要使用别人提供的公共 Bot。 - 请在 Telegram BotFather 创建自己的 Bot,并把 token 写入 `.env` 的 `BOT_TOKEN`。 - 不要把 Bot Token 提交到 GitHub、截图或发到群聊。 ## 必须白名单 - `ALLOWED_USERS` 不能为空;为空时程序会拒绝启动。 - 非白名单用户只能看到“无权限”和自己的 Telegram ID。 - 建议只允许自己的 Telegram 用户 ID。 - 不建议把 Bot 加入群聊;如果一定要加群,也不要把群成员都加入白名单。 ## 管理员权限 - `ADMIN_USERS` 为空时默认等于 `ALLOWED_USERS`。 - 管理员可以添加/修改服务器、管理凭据,并触发预置测试任务。 - 普通白名单用户只能查看和运行允许的只读功能。 ## SSH 密钥和密码 - 推荐使用 SSH 密钥,不推荐密码。 - 通过 Telegram 发送私钥/密码会经过 Telegram 云端;如果介意,请手动把密钥放到服务器 `./keys` 目录,然后在配置里写路径。 - Bot 保存上传的私钥时会放到 `/data/keys/` 并设置 `0600` 权限。 - Bot 不会在回复里回显私钥或密码。 ## 远程命令 - `/run` 默认关闭。 - 这等价于远程 SSH 执行命令,风险很高,请谨慎开启。 ## 开源/备份 不要提交或公开: - `.env` - `servers.json` - `keys/` - `docker-compose.yml` 中的真实环境变量 - 任何 Bot Token、SSH 密码、私钥、真实服务器 IP 清单 仓库只应提交: - `.env.example` - `servers.example.json` - `docker-compose.example.yml`