Files
nexus/wiki/sources/nodewarden-把-bitwarden-搬上-cloudflare-workers-彻底告别服务器.md

88 lines
5.2 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
---
title: "NodeWarden - 把 Bitwarden 搬上 Cloudflare Workers彻底告别服务器"
type: source
tags: ["Cloudflare", "Bitwarden", "Serverless", "Password-Manager"]
date: 2026-02-27
---
## Source File
- [[raw/Home Office/NodeWarden - 把 Bitwarden 搬上 Cloudflare Workers彻底告别服务器.md]]
## Summary (用中文描述)
- **核心主题**NodeWarden 将 Bitwarden 服务器端部署到 Cloudflare Workers实现真正的无服务器Serverless密码管理
- **问题域**:传统 Bitwarden 自托管需要维护 VPS/服务器NodeWarden 彻底消除了这一需求
- **方法/机制**:通过 Cloudflare Workers 运行 Bitwarden API 兼容层,数据存储在 Cloudflare D1SQLite和 R2对象存储利用 Workers 的边缘计算能力实现全球低延迟访问
- **结论/价值**:用户只需一个 Cloudflare 账号(带域名和信用卡)和 GitHub 账号,即可零成本、零运维地运行自托管密码管理器,支持 Bitwarden 官方全平台客户端
## Key Claims (用中文描述)
- NodeWarden 通过 Cloudflare Workers 实现无服务器架构,将 Bitwarden 服务器端迁移到边缘计算平台
- Cloudflare D1边缘 SQLite和 R2对象存储替代传统 VPS 数据库,数据可靠性由 Cloudflare 保证
- NodeWarden 在核心功能上与 Bitwarden 保持兼容,同时移除企业级功能(多用户/组织/SSO以简化架构
- 通过 GitHub Actions + Cloudflare Pages 实现自动化部署,更新代码只需网页操作
- TOTP时间同步动态口令通过 `TOTP_SECRET` 环境变量免费支持,无需 Bitwarden 付费会员
## Key Quotes
> "部署 NodeWarden 之后的效果,就是在无服务器的情况下,也能在手机、电脑上使用 Bitwarden 客户端来保存密码了,支持自动登陆、二次验证之类的功能。" — Appinn
> "这个步骤需要在 Cloudflare 中绑定 GitHub 账号,根据页面提示即可。" — NodeWarden 一键部署说明
## Key Concepts
- [[Serverless Computing]]NodeWarden 的核心技术范式,代码运行在 Cloudflare Workers 边缘节点而非传统服务器
- [[Edge Computing]]Cloudflare Workers 在全球边缘节点运行,提供低延迟访问
- [[TOTP]]时间同步一次性密码算法NodeWarden 通过环境变量 `TOTP_SECRET` 免费提供,无需付费会员
- [[Passkey]]WebAuthn 无密码认证标准NodeWarden 原生支持Bitwarden 官方需付费会员)
- [[Self-Hosted Password Manager]]自托管密码管理器NodeWarden 是 Serverless 架构的变体
## Key Entities
- [[NodeWarden]]GitHub 项目,将 Bitwarden 部署到 Cloudflare Workers 的开源实现,作者 shuaiplus
- [[Bitwarden]]开源密码管理器客户端与服务端均开源NodeWarden 提供 API 兼容实现
- [[Cloudflare Workers]]边缘计算平台NodeWarden 的运行时环境,基于 V8 隔离的 Serverless 平台
- [[Cloudflare D1]]:边缘 SQLite 数据库NodeWarden 的主数据存储
- [[Cloudflare R2]]S3 兼容对象存储NodeWarden 用于存储附件
- [[Cloudflare]]:提供 Workers/D1/R2 的云平台,构成 NodeWarden 的完整基础设施
- [[shuaiplus]]NodeWarden GitHub 项目作者
- [[shenwei]]本文档原作者Appinn 作者),已部署 NodeWarden 实例
## Connections
- [[NodeWarden]] ← implements ← [[Bitwarden]]
- [[NodeWarden]] ← runs_on ← [[Cloudflare Workers]]
- [[NodeWarden]] ← uses ← [[Cloudflare D1]]
- [[NodeWarden]] ← uses ← [[Cloudflare R2]]
- [[NodeWarden]] ← deploys_via ← [[GitHub Actions]]
- [[Bitwarden]] ← alternative_to ← [[1Password]]
- [[Bitwarden]] ← alternative_to ← [[LastPass]]
## Contradictions
- 无已知冲突
## NodeWarden vs Bitwarden 功能对比
| 能力项 | Bitwarden | NodeWarden | 说明 |
| --- | --- | --- | --- |
| 单用户保管库 | ✅ | ✅ | 基于 Cloudflare D1 |
| 文件夹/收藏 | ✅ | ✅ | 常用管理能力可用 |
| 全量同步 `/api/sync` | ✅ | ✅ | 已做兼容与性能优化 |
| 附件上传/下载 | ✅ | ✅ | 基于 Cloudflare R2 |
| 导入功能 | ✅ | ✅ | 覆盖常见导入路径 |
| 网站图标代理 | ✅ | ✅ | 通过 `/icons/{hostname}/icon.png` |
| Passkey、TOTP | ❌ | ✅ | 官方需要会员NodeWarden 免费 |
| 多用户 | ✅ | ❌ | NodeWarden 定位单用户 |
| 组织/集合/成员权限 | ✅ | ❌ | 没必要实现 |
| 登录 2FATOTP/WebAuthn/Duo/Email | ✅ | ⚠️ 部分支持 | 仅支持 TOTP通过 `TOTP_SECRET` |
| SSO / SCIM / 企业目录 | ✅ | ❌ | 没必要实现 |
| Send | ✅ | ❌ | 基本没人用 |
| 紧急访问 | ✅ | ❌ | 没必要实现 |
| 管理后台/计费订阅 | ✅ | ❌ | 纯免费 |
| 推送通知完整链路 | ✅ | ❌ | 没必要实现 |
## 部署必要条件
1. Cloudflare 账号(必须有一个域名和信用卡)
2. GitHub 账号
## 部署步骤
1. Fork [NodeWarden GitHub 仓库](https://github.com/shuaiplus/NodeWarden)
2. 在 Cloudflare 页面点击"Deploy to Cloudflare"一键部署
3. 访问临时地址或绑定自定义域名
4. 通过设置页面配置JWT_SECRET、自动更新、主账号密码、TOTP 二次验证
5. 在 Bitwarden 官方客户端选择"自托管",输入服务器 URL 即可登录