Confidex
章节

自行运行同步服务器。

同步服务器存储已封存的对象,为每个保险库维护一个计数器,并在接受更改前检查签名。它从不持有密钥,也从不看到任何名称,因此自行运行一份代价很小。

选择它运行在何处、对象存放在何处。本页会写好配置,您只需粘贴到该放的地方。

它可以运行在三种地方。

同一套代码支持这三种方式。Cloudflare Worker 只需要您有一个账户;二进制程序或容器则需要您已有的一台机器。无论选哪种,保险库密钥都留在您的设备上。

Cloudflare Worker

免费计划足以承载一个小型服务器。索引是一个 D1 数据库,对象存放在兼容 S3 的存储桶中,因此不必保持任何东西持续运行,私人保险库也不花一分钱。

原生二进制程序

在 Linux、macOS 或 Windows 上运行一个进程。它提供纯 HTTP 服务,需要在前面放一个代理来提供 HTTPS。无论哪种方式,对象都已封存并签名,因此纯 HTTP 在这里不是弱点。

容器

同一个二进制程序,相同的设置以环境变量传入。当机器已经运行容器、且您不想从源代码构建时,可以使用这种方式。

完全不用服务器

同步是可选的。保险库可以留在一台设备上,使用本地备份,永不接触网络。之后再添加服务器也不会改变保险库内部的任何东西。

回答四个问题,复制结果。

设置在各处的形式都相同:一个 TOML 字段,或作为环境变量的同一字段。Worker 只接受 S3 存储桶;二进制程序和容器还可以写入普通目录和 Git 仓库。

下载并解压自托管ZIP文件。无需Rust编译器。

GitHub Releases · self-host ZIP

显示配置

配置已更新。

运行在何处
索引
密封盒的存储位置

随意选择多个。每个对象都会写入所有选中的位置;读取时会依次回退到下一个,并核对摘要。

监听地址
返回设置

部署前请创建数据库和存储桶,并替换所有占位符。

配置文件


        

命令


        

密钥保留在 Worker secrets 中,绝不写入文件。Worker 只写入兼容 S3 的存储。

尖括号中的值由您填写。您在此输入的任何内容都不会离开本页:文本在您的浏览器中组装完成。

让您的保险库指向它。

新保险库默认使用 sync.confidex.me。更改地址只是应用中的一项设置,保险库仍能照常工作:地址不属于保险库,也不属于其身份的一部分。

在应用中
打开保险库设置,将同步服务器地址替换为您自己的地址。客户端会自行添加 API 路径。
共用源
应用和 API 可以共用一个域名。将 API 前缀路由到服务器,其余一切路由到应用。
账户
无需创建。保险库通过上传其已签名的锁来自行注册,此后只有签名密钥的持有者才能替换它。
多个服务器
一个保险库一次只与一个服务器通信。迁移到另一个服务器只是同一项设置。

服务器所有者需要做的事。

需要做的很少,而且都不涉及密钥。服务器保存已封存的对象和指向它们的索引。备份就是两者的一份副本。

备份

将索引和对象存储一起复制。对象是不可变的,并以其摘要命名,因此在服务器运行期间制作的副本仍然有效。

升级

替换二进制程序,或重新部署 Worker。原生索引的模式在启动时应用,D1 的模式则通过模式文件应用。

访问权限

存储凭据授权服务器访问自己的存储。它们与保险库密钥毫无关系,也无法打开任何一个已封存的对象。

许可证

服务器以 GNU AGPL-3.0 授权。您为他人运行的更改必须保持开放;您为自己运行的副本不带任何义务。

服务器是最不起眼的部分,这正是它的意义所在。