-
Notifications
You must be signed in to change notification settings - Fork 1.3k
Home
Shuai edited this page Mar 28, 2026
·
1 revision
欢迎来到 NodeWarden 的项目 Wiki。
如果你是第一次接触这个项目,可以先把它理解成一句话:这是一个运行在 Cloudflare Workers 上的、兼容 Bitwarden 官方客户端的第三方服务端。它不依赖传统 VPS,不需要你自己维护数据库进程、对象存储服务或者常驻后端,只要 Cloudflare 侧资源准备好,就可以把自己的密码库服务跑起来。
如果你准备自己部署,建议按下面顺序阅读:
NodeWarden 的定位一直很明确,不是去完整复刻 Bitwarden 官方服务端的所有企业能力,而是围绕“个人可部署、长期可维护、成本尽量低、兼容官方客户端”这几个目标,把最常用、最实际的一部分能力做好。也正因为这个取舍,它特别适合以下几类使用者:
- 想自托管 Bitwarden,但不想再单独维护一台服务器的人
- 已经在用 Cloudflare,希望把密码库也迁到同一套基础设施上的人
- 需要多用户能力,但并不需要组织、SSO、企业目录这些高级企业功能的人
- 重视备份、导入导出和附件迁移,希望数据留在自己手里的人
NodeWarden 当前已经覆盖了大多数普通用户真正会用到的核心场景:
- 支持登录信息、安全笔记、银行卡、身份信息等常见密码库条目
- 兼容 Bitwarden 官方客户端同步接口,包括
/api/sync - 支持附件上传与下载,可使用 Cloudflare R2 或 KV
- 支持 Send,包括文本 Send 和文件 Send
- 支持导入与导出,覆盖 Bitwarden JSON、CSV、带附件 ZIP 等常见格式
- 支持网页端密码库管理界面
- 支持 TOTP,并额外支持
steam://这类场景 - 支持多用户与邀请码注册
- 支持云端备份中心,可定时备份到 WebDAV 或 E3
如果你来自 Bitwarden 官方服务端或 Vaultwarden,最需要先知道的是:NodeWarden 的目标不是企业替代,而是轻量、够用、兼容、可自管。
为了让系统保持简洁,NodeWarden 当前并没有覆盖以下能力:
- 组织 / 集合 / 成员权限
- SSO / SCIM / 企业目录
- 完整的登录 2FA 体系,目前以用户级 TOTP 为主
- 企业管理台、订阅、计费
这不是“缺功能”那么简单,更准确地说,这是项目有意识的边界。对于绝大多数个人自托管用户而言,这样的边界反而意味着更低的复杂度和更低的维护成本。
NodeWarden 的核心架构非常直白,理解起来不难:
- 运行时:Cloudflare Workers
- 数据库:Cloudflare D1
- 附件存储:Cloudflare R2,或退回到 KV
- 前端:Preact + Vite
- 计划任务:Cloudflare Cron Trigger
- 实时通知相关能力:Durable Objects
从仓库结构看,项目大致可以分成四块:
-
src/:Workers 后端逻辑、路由、服务层、备份与认证等核心实现 -
webapp/:网页端界面 -
migrations/:D1 初始化 SQL -
shared/:前后端共享的版本号、备份配置结构等公共定义