
treg生产备份指南为什么丢失Fernet密钥等于所有密钥不可恢复【免费下载链接】tregOpenRouter for agent tools. Join community here: https://discord.gg/6mQYYfFMAn项目地址: https://gitcode.com/GitHub_Trending/treg/treg先说结论备份清单只有两项如果你正在自托管 treg一个 Agent 工具注册表定位类似Agent 工具的 OpenRouter生产环境最重要的备份只有两样Fernet 密钥TREG_SECRET_KEY环境变量的值数据库生产是 Postgres本地是treg.dbREADME 里有明确警告丢失 Fernet 密钥所有已存储的密钥都不可恢复。下面解释为什么以及该怎么做。treg 到底替你保管哪些密钥treg 是代理模式你的 Agent 只持有一个 treg 令牌真正的上游凭证全部由 treg 保管在调用时解密注入、用完即弃从不返回给客户端。典型的两类保管物粘贴型 API 密钥——例如 Hunter、Apollo、Moz 这类服务的 key粘贴一次之后所有调用免 keyOAuth 令牌——连接 Google、Meta、LinkedIn 后拿到的 access_token / refresh_token 加密 blob此外treg 自己的 API 密钥反而不以密文存储只存 SHA-256 哈希见 auth-secrets 架构文档真正依赖 Fernet 的正是上面两类上游凭证。Fernet 加密一把钥匙永久有效treg 的静态加密逻辑非常薄核心就在 src/treg/crypto.pyencrypt()/decrypt()用TREG_SECRET_KEY这把 Fernet 密钥对密文做对称加解密Fernet 是对称加密加密和解密用同一把钥匙密文不提供任何无钥匙恢复通道这就是问题所在数据库里存的是密文钥匙只存在于TREG_SECRET_KEY这一个地方。没有备份的钥匙数据库再完整也没有意义——所有密文变成一堆永远解不开的字节用户只能挨个重新粘贴、重新走 OAuth 授权。三种场景下的密钥行为场景密钥行为风险生产未设置TREG_SECRET_KEY启动即拒绝启动非 SQLite 库无静默风险deploy 文档 要求大声失败本地开发未设置每进程生成临时密钥重启后旧密文失效这是刻意的响亮的信号提醒你去设真钥匙生产设置了密钥密文长期可解密密钥本身成为最高价值资产本地模式不需要你操心selfhost.sh安装脚本会自动生成一把密钥并写入~/.treg/.env文件权限设为 600见 src/treg/web/selfhost.shscripts/dev-local.sh 的up命令同样会自动生成。生产环境四步操作第一步生成密钥uv run python -m treg keygen # 打印一把新的 Fernet 密钥第二步注入环境变量。参考 deploy/render.example.yamlTREG_SECRET_KEY与TREG_SESSION_SECRET都应设为不随仓库同步的密文变量sync: false并填入真实值。第三步备份两项资产。密钥值存密码管理器 / 密钥服务如 1Password、Vault与数据库备份分开保管Postgres 走常规备份pg_dump或托管数据库快照本地 SQLite 直接拷贝treg.db。第四步定期演练恢复。换一台机器用备份的密钥 恢复的数据库起服务验证已有连接能正常调用。没演练过的备份等于没有备份。密钥泄露了怎么办Fernet 是单向依赖泄露的密钥无法轮换出旧密文——更换TREG_SECRET_KEY后所有既有密文立即失效。正确流程是换新密钥 → 通知团队重新粘贴 API key / 重新走 OAuth 连接treg 的连接流程支持一键重连凭证健康检查见 docs/context/interface。所以日常保管纪律比事后补救重要得多密钥文件权限 600不进 git、不进镜像层密钥与数据库备份分渠道、分权限存放谁有权接触TREG_SECRET_KEY就该视为谁有权接触所有用户的上游凭证一句话总结treg 把保管密钥做成了产品的核心卖点而静态加密的最后一道门就是那把 Fernet 钥匙。迁移、重建、扩容之前先确认钥匙和数据库都在——否则等待你的不是故障而是全员重连。更多部署细节见 docs/context/ops/deploy.md 与 README。【免费下载链接】tregOpenRouter for agent tools. Join community here: https://discord.gg/6mQYYfFMAn项目地址: https://gitcode.com/GitHub_Trending/treg/treg创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考