目 录CONTENT

文章目录

Cloudflare Workers 搭建 NodeWarden 自托管密码管理系统

 

Bitwarden 是少数客户端与服务器端都开源的密码管理系统,支持完整自托管部署。@Appinn

但有人更进一步:直接把服务器端运行在 Cloudflare Workers 上——也就是说,你连 VPS 都可以省了。

NodeWarden - 把 Bitwarden 搬上 Cloudflare Workers,彻底告别服务器 1

部署 NodeWarden 之后的效果,就是在无服务器的情况下,也能在手机、电脑上使用 Bitwarden 客户端来保存密码了,支持自动登陆、二次验证之类的功能。

 

目录

  • • NodeWarden 与 Bitwarden 区别

  • • 必要条件

  • • 具体部署步骤

    • • fork

    • • 一键部署

    • • 设置 NodeWarden

  • • 在客户端登录

  • *  关于密码安全

 

NodeWarden 与 Bitwarden 区别

能力项

Bitwarden

NodeWarden

说明

单用户保管库(登录/笔记/卡片/身份)

基于Cloudflare D1

文件夹 / 收藏

常用管理能力可用

全量同步 /api/sync

已做兼容与性能优化

附件上传/下载

基于 Cloudflare R2

导入功能

覆盖常见导入路径

网站图标代理

通过 /icons/{hostname}/icon.png

passkey、TOTP

官方需要会员,我们的不需要

多用户

NodeWarden 定位单用户

组织/集合/成员权限

没必要实现

登录 2FA(TOTP/WebAuthn/Duo/Email)

⚠️ 部分支持

仅支持 TOTP(通过 TOTP_SECRET

SSO / SCIM / 企业目录

没必要实现

Send

基本没人用

紧急访问

没必要实现

管理后台 / 计费订阅

纯免费

推送通知完整链路

没必要实现

必要条件

  1. 1. 你需要有一个 Cloudflare 账号(必须有一个域名和信用卡)

  2. 2. 一个 GitHub 账号

具体部署步骤

fork

  • • GitHub:https://github.com/shuaiplus/NodeWarden

NodeWarden - 把 Bitwarden 搬上 Cloudflare Workers,彻底告别服务器 2

一键部署

在你自己的 GitHub 页面上,有一个按钮:

NodeWarden - 把 Bitwarden 搬上 Cloudflare Workers,彻底告别服务器 3

这个步骤需要在 Cloudflare 中绑定 GitHub 账号,根据页面提示即可。

设置 NodeWarden

部署成功之后,Cloudflare 会提供一个临时地址,类似 1nodewarden.apipnn.workers.dev,用浏览器打开它,如果打不开,就绑定一个你自己的二级域名。

NodeWarden - 把 Bitwarden 搬上 Cloudflare Workers,彻底告别服务器 4

根据页面提示,一步一步进行即可。

这个步骤主要有:

  1. 1. 设置 JWT_SECRET

  2. 2. 设置自动更新 GitHub

  3. 3. 设置主账号与密码

  4. 4. 设置启用主账号的二次验证

NodeWarden - 把 Bitwarden 搬上 Cloudflare Workers,彻底告别服务器 5

最后一步成功之后,还能选择彻底隐藏这个设置页面:

NodeWarden - 把 Bitwarden 搬上 Cloudflare Workers,彻底告别服务器 6

设置完成。

注意:设置完成之后,如果忘了用户名密码,只能全部删除重新来一次...

别问我为什么知道这个。

在客户端登录

打开你的 Bitwarden 官方客户端,在登录的地方选择自托管,并输入 服务器 URL

NodeWarden - 把 Bitwarden 搬上 Cloudflare Workers,彻底告别服务器 7
NodeWarden - 把 Bitwarden 搬上 Cloudflare Workers,彻底告别服务器 8

之后,在使用刚刚设置页面设置的用户名和密码(如果设置了二次验证,还会要求输入验证码),就可以正常登录啦:

NodeWarden - 把 Bitwarden 搬上 Cloudflare Workers,彻底告别服务器 9

趁假期最后一天,快去试试吧。


最后,关于密码安全:

Bitwarden 的设计是这样的:密码在本地加密,服务器只存储加密后的密文,主密码不上传服务器(服务器只保存验证值)。

所以,理论上服务器无法解密你的数据。而部署在 Cloudflare 上是相同的,只要最开始的代码没有恶意,就没有问题,所以开源很重要,如果有恶意代码,会很快被人发现。

0

评论区