了解项目和客户端
Vaultwarden 是一个独立项目,因此请查看当前的客户端兼容性、受支持的部署指南和安全更新。资源占用小不应导致随意的维护流程。
限制入口点
使用 HTTPS、强账户保护和审慎的注册控制。在支持的情况下保护或禁用管理端点。保持主机和反向代理为最新版本,并限制可访问私有配置的人员。
保持恢复独立
在服务器之外私下存储恢复代码和备份访问权限。不要让通往备份的唯一途径依赖于仅存储在保险库内的凭据。考虑在服务器丢失和设备丢失后如何重新获得访问权限。
备份一致状态
按照受支持的流程处理数据库、附件、配置和密钥。加密异地备份并仔细测试恢复。复制的容器镜像不包含所有持久化保险库数据。
测试完整的账户恢复场景
使用一次性测试账户验证登录、第二因素、适当情况下的保险库导出以及恢复路径。将紧急信息保存在托管保险库之外。避免针对真实账户的唯一副本测试破坏性恢复操作。
每次更改代理后检查暴露情况
审查已安装版本的公共路由、管理界面、websocket 或通知要求,以及实际的 TLS 源。在一个代理后保持私有的应用配置,可能在网络或容器更改后变为公开。
将保管库服务与恢复系统分离
选择一个仍在维护的 Vaultwarden 版本,并验证与你打算使用的 Bitwarden 客户端的兼容性。准备一个稳定的 HTTPS 源、持久私有数据和独立的恢复途径。将唯一的备份密码和账户恢复材料保存在托管保险库之外。精简的服务仍可能掌握许多其他账户的密钥,因此应优先考虑经过测试的更新和恢复流程,而不是从 RAM 分配中省下一点。
- 选择审慎的注册与邀请规则。
- 独立于用户保险库访问权限,保持管理访问受限。
- 查看已安装版本的的通知和反向代理要求。
官方文档:Vaultwarden 部署示例
首次账户测试后关闭设置访问
使用项目支持的示例进行部署,持久化其数据目录,并将公共域名设置为实际的 HTTPS 源。如果使用管理界面,请遵循其令牌/哈希指引并限制可访问者;不要将难以猜测的 URL 误认为身份验证。创建预期所有者后,从已登出的浏览器验证注册/邀请设置。在添加真实机密前测试第二因素和通知行为。
官方文档:Vaultwarden 管理页面保护
使用一次性保险库数据测试每个客户端
在网页保险库、桌面客户端以及您计划支持的任何移动端/浏览器扩展中使用测试登录。更改项目后确认同步,并确认已注销用户无法读取该项目。如果只有一个客户端失败,请检查已配置的自定义服务器 URL 和证书。如果通知失败但手动同步正常,请检查当前的代理/websocket 要求。保留有记录的导出/恢复方法,并通过单独的受信任途径存储紧急代码。
恢复数据库及其配套文件
遵循受支持的数据库备份方法;粗心复制活动 SQLite 文件可能遗漏最近的预写日志状态。包含持久数据目录中所需的附件、配置和密钥材料。加密恢复副本,并在隔离环境中测试一次性用户恢复。不要依赖容器镜像作为数据备份。更新计划应在替换运行版本前确认客户端兼容性和可行的数据库恢复路径。
官方文档:Vaultwarden 备份要求