我把1Password换成Vaultwarden后,密码不再归别人管

我从未想过要自己托管密码管理器

不是因为不信任,而是我一直觉得把密码放在自己的服务器上会惹出我没预料到的麻烦。但当我环顾家里已经运行的各种服务时,我发现自己早就习惯了为每一项服务承担责任——服务器维护、备份、更新,没有一样是外包的。邮件服务器我自己管,密码管理器又凭什么不能自己管?

于是我把1Password换成了Vaultwarden。真正让我意外的是,迁移之后几乎感受不到任何变化。

导出一次,带走所有密码

整个过程的核心就是一个导出按钮。

我在1Password里点击导出,选个格式,做几项安全确认,拿到一个未加密的文件。里面装着我这些年攒下的所有登录信息、安全笔记,还有一些早已忘记的软件许可证。前后不到两分钟。

然后把文件复制到一台断网的笔记本上,导入Vaultwarden服务器,最后删掉明文导出文件。就这样。

导入完成后,登录记录完整保留,1Password里的文件夹结构也原封不动。更让我意外的是TOTP双因素认证的密钥也一起带过来了——之前我还以为要逐个扫描二维码重新绑定。

当然也有小遗憾。部分安全笔记的格式在迁移后丢失了,原来有排版和标记,迁移后变成纯文本。但核心功能不受影响。

Vaultwarden是什么

Vaultwarden是一个用Rust写的开源项目,实现了Bitwarden的客户端API。你可以把它理解为”另一个能跑Bitwarden客户端的服务器”。

官方Bitwarden客户端、浏览器扩展、手机App,全部可以直接连Vaultwarden,不需要额外配置。这意味着我之前用的所有Bitwarden客户端工具都可以无缝接管。

有趣的是,你表面上在用Bitwarden,实际上数据完全在自己手里。

控制权回来了,代价是什么

1Password时代,一切都是服务商打理:服务器运维、安全更新、数据备份。Vaultwarden时代,这些变成了你的责任。

项目 1Password Vaultwarden
服务器 服务商托管 你自己托管
更新维护 服务商负责 你自己负责
数据备份 服务商负责 你自己负责
在线状态 服务商保障 你自己的服务器
客户端 1Password客户端 Bitwarden客户端

这种切换并不复杂。我自己的家庭服务器上本来就在跑Docker,Vaultwarden以一个容器的形式挂上去,配置文件只有几行。定时备份脚本每周跑一次,把数据库同步到远程存储。工作量比我想象中小得多。

为什么值得做

核心原因不是对1Password的不信任,而是我已经在家里运行了足够多的自托管服务,对这份责任感到舒适。

如果你也在管理家庭服务器,或者愿意承担这个责任,Vaultwarden是一个门槛很低的选择。迁移几乎无感,日常使用体验几乎没有差别,而你得到的是对自己数据的完整控制权。

当然,如果你不愿意承担运维成本,Bitwarden官方云版本或者其他商业密码管理器依然是可靠的选择。自托管是一种生活方式的选择,不是唯一正确的方式。

唯一需要记住的是:你自己就是自己的服务商。服务器宕机、硬盘损坏、备份丢失——这些风险不再有人替你承担。但反过来说,这份数据真正属于你。