密码管理器折腾记:从 KeePass 到 Bitwarden 的对比与回归
从 LastPass 换到 KeePass 已经 5 年。作为一款老牌工具,KeePass 的优势有目共睹:开源免费、本地数据库存储、极高的定制自由度。然而,其痛点也不少:数据库需要自己同步,浏览器扩展更新停滞,自动填充也不稳定。

于是我尝试将密码管理方案迁移至 Bitwarden,并选择通过自托管 Vaultwarden 来替代官方订阅服务。Vaultwarden 是一个由社区维护的轻量级服务端实现,不仅兼容 Bitwarden 核心协议,更能完美适配官方客户端。其资源占用极低,可以部署于 NAS 或树莓派。彼时的我认为,这似乎是在“同步便利性”与“数据掌控权”之间找到的一个完美平衡点。
为什么会想用 Bitwarden
同步省心
与 1Password、LastPass 等主流方案一致,Bitwarden 采用标准的「服务端 + 客户端」架构。所有凭据由云端(或自托管服务端)统一分发,实现了真正的实时多端同步。相比 KeePass 须时刻惦记“修改后同步数据库文件”的繁琐,Bitwarden 彻底抹平了这一认知负担。
自带安全检查
Bitwarden 内置了完善的密码健康度分析、弱密码预警及泄露检测功能。它将分散的账户风险通过仪表盘集中呈现,方便用户及时处置潜在隐患。

现代化的一致体验
无论是在浏览器扩展、桌面端还是移动 App,Bitwarden 都保持了高度统一的 UI 设计与交互逻辑。相较于 KeePass 浓重的“极客工具感”,Bitwarden 的操作路径更为清晰直观,即便是非技术用户也能迅速上手。

深入使用后的“水土不服”
尽管纸面参数看似无懈可击,但在高频使用的真实场景中,一系列体验落差开始显现。
排序逻辑僵化
Bitwarden 的条目与文件夹强制依赖名称(A-Z)排序,完全缺失了 KeePass 中灵活的“自由拖拽排序”功能。若想将高频账号置顶,或按照个人习惯组织列表顺序,只能通过极其笨拙的重命名方式变相实现。
数据库管理受限
Bitwarden 的安全策略相对固化,例如对主密码复杂度的强制校验及繁琐的修改流程。相比之下,KeePass 赋予了用户对数据库加密算法、迭代次数及密钥文件组合的完全控制权,这种“丰俭由人”的开放性是 Bitwarden 难以企及的。
自托管的稳定性隐忧
选择自托管 Vaultwarden,就意味着你得自己抗下服务器运维的苦活。相比之下,KeePass 搭配坚果云、OneDrive 等成熟的 WebDAV 服务,稳定性反而更有保障。毕竟个人的 NAS 或服务器难免遇到断电、断网或者硬盘故障。

最终选择:回归 KeePass
折腾一圈之后,两者优劣已十分清晰:
| 维度 | Bitwarden | KeePass |
|---|---|---|
| 同步机制 | 服务端自动同步 | 需自行配置 WebDAV/Syncthing |
| 界面体验 | 现代、统一 | 传统、按需美化 |
| 灵活性 | 功能相对固定 | 插件生态极度丰富 |
| 数据掌控 | 依赖服务端状态 | 完全本地化掌控 |
我最后还是回到了 KeePass:密码库放本地,什么时候能用、怎么备份、同步到哪里,都由我自己决定。同步依然需要额外配置(比如 WebDAV、Syncthing),但这一步的可控性也更高。
附录:从 KeePass 到 Bitwarden 的迁移指南
如果你仍希望尝试 Bitwarden,可参考以下迁移流程。
1. 准备工作
- 备份数据:操作前务必备份
.kdbx数据库文件。 - 使用原版导出:虽然 KeePassXC 也能导出,但原版 KeePass 的 XML 兼容性更佳。建议临时下载 KeePass 原版 执行操作。
2. 导出 XML
- 打开 KeePass,点击
File->Export。 - 格式选择
KeePass 2.x (XML),保存为keepass_export.xml。
导出的 XML 文件包含所有明文密码!迁移完成后请务必立即删除。
3. 导入数据
- 登录 Vaultwarden 网页版(如
https://vw.yourdomain.com)。 - 进入
Tools->Import data。 - 配置导入选项:
- 导入目标(Import destination):选择个人密码库。
- 文件夹或集合(Folder or Collection):你可以把所有条目导入到新文件夹,也可以保持原结构(通常用默认即可)。
- 文件格式(File format):从下拉菜单选择
KeePass (XML)。
- 上传
keepass_export.xml并导入。

4. 后续整理
- 核对数据:检查条目、笔记及目录结构是否完整。
- 迁移附件:附件无法自动迁移,需手动搬运。
- 彻底清理:确认无误后,彻底删除明文 XML 导出文件。
- 手动修正:密码修改历史与自定义图标无法导入;TOTP 密钥可能会以
otpauth://...的形式写入笔记,需要你手动填到 Bitwarden 的验证器密钥(Authenticator Key)字段。