核心用法
Duplicati Skill 是一个面向服务器备份管理的 API 封装工具,通过 RESTful 接口与 Duplicati 备份服务交互。用户需配置 DUPLICATI_URL 和 DUPLICATI_TOKEN 环境变量后,即可执行四类核心操作:
1. 服务器状态查询 —— 实时获取备份进程所处阶段(如 Backup_PreBackupVerify、Backup_ProcessingFiles 等)
2. 备份任务枚举 —— 列出所有备份作业及其 ID,支持名称模糊匹配
3. 备份任务触发 —— 通过 POST 请求启动指定 ID 的备份作业
4. 日志检索 —— 获取指定备份任务的最近执行日志,默认返回 5 条
该工具将 Duplicati 的底层 API 调用抽象为自然语言指令,降低了服务器运维门槛。
显著优点
- 安全认证机制:采用 10 年期 Bearer Token 长期认证,避免频繁更新密码
- 状态语义化:将技术状态码转换为人类可读描述(如 "Verifying existing files")
- 存储感知:自动报告目标存储剩余空间,预防备份失败
- 无状态设计:纯 API 调用,不持久化任何数据
潜在缺点与局限性
- 依赖外部服务:需 Duplicati 服务持续运行,网络中断即失效
- Token 泄露风险:长期有效的 Token 一旦泄露,攻击者可长期操控备份
- 无加密传输提示:文档示例使用 HTTP 而非 HTTPS,存在中间人攻击可能
- ID 需预解析:用户通过名称指代备份时,需先执行列表查询匹配 ID
- 日志分页固定:仅支持固定 5 条日志查询,缺乏灵活分页参数
- 无恢复操作:仅支持备份触发,不支持备份恢复或文件级还原
适合人群
- 自建 NAS / Homelab 管理员
- 需要远程监控 Duplicati 备份状态的运维人员
- 希望通过自然语言快速查看备份进度的非技术用户
常规风险
| 风险类型 | 说明 |
|---------|------|
| 认证泄露 | Token 硬编码或日志泄露可导致未授权访问 |
| 误操作触发 | 自然语言指令可能误识别备份名称,导致错误任务启动 |
| 网络暴露 | Duplicati 若暴露于公网且使用 HTTP,存在窃听风险 |
| 资源竞争 | 并发备份请求可能导致存储 I/O 过载 |