20250125 记:最近在 Google Play 更新 Bitwarden 客户端后,发现无法正常登录 Vaultwarden,查看官方 Discussions v1.21.0 已经更名 Bitwarden_RS 为 Vaultwarden。此外对应兼容 Vaultwarden 的 Bitwarden 手机客户端也变更了 Github 仓库,为此特地对 Vaultwarden 进行升级,并切换至最新客户端版本。
简介
Bitwarden 是一款可靠的开源密码管理服务,提供了安全和便捷的方式来存储所有您的密码和其他敏感信息。这款软件的目标就是让您的数字生活更安全、更简单,并将其加密保存在您自己的服务器上。Bitwarden 可以在所有主流的操作系统、浏览器和设备上使用,这包括:Windows、macOS、Linux、Android 和 iOS。无论您是在电脑上浏览网页,还是在手机上使用应用,Bitwarden 都能提供无缝的密码管理体验。
Bitwarden 最大的特点是它的安全性。所有的用户数据都会在本地设备上进行端到端的加密,然后再上传到服务器。这意味着,即使 Bitwarden 的服务器被黑客攻击,您的密码和其他敏感信息也不会被窃取,因为他们只能看到加密后的数据。Bitwarden 还提供了一些高级的安全功能,例如双因素认证和主密码提示。通过双因素认证,即使有人知道了您的主密码,他们也无法登录您的 Bitwarden 帐户。主密码提示则是一个安全问题,可以帮助您在忘记密码时找回您的帐户。此外,Bitwarden 还有一些方便用户使用的功能。例如:它可以自动填充网页上的用户名和密码字段,让您无需记住所有的密码。它还有一个密码生成器,可以帮助您创建复杂、难以破解的新密码。总的来说,Bitwarden 是一个强大、安全且易于使用的密码管理工具。无论您是个人用户还是企业用户,都可以考虑使用 Bitwarden 来保护您的数字资产。
官方网站参考:Best Password Manager for Business, Enterprise & Personal | Bitwarden | Bitwarden
但今天木子要聊的是 Bitwarden 的平替 Vaultwarden,简单理解 Vaultwarden 是 Bitwarden 服务器端功能的开源重新实现,但是所有客户端还是使用 Bitwarden 官方的。这与 Headscale 一样, Headscale 主要实现 Tailscale 的服务器端功能,客户端还是使用 Tailscale 官方的。
这里使用 Vaultwarden 的 Docker 发行版镜像来部署,因为它使用 Rust 重构了服务端,速度更快、资源占用更小。
Vaultwarden GitHub 地址:GitHub – dani-garcia/Vaultwarden
安装 Vaultwarden
说明: 基于前期构建的 traefik
网关,详见: DIY NAS系列12 — Traefik 出口网关配置
在 docker-compose.yaml
文件中,会对重要的配置进行说明,因个人网络环境等不同,需要根据自身实际情况调整配置。
[root@demo vaultwarden]# cat > docker-compose.yml << \EOF
version: "3"
services:
vaultwarden:
image: vaultwarden/server:1.32.7
container_name: vaultwarden
restart: unless-stopped
environment:
- SIGNUPS_ALLOWED=false # 开启注册,自己注册后改成false,再重启 Docker 服务。
- WEBSOCKET_ENABLED=false # 禁用 WebSocket
- WEB_VAULT_ENABLED=true # web客户端
- DOMAIN=https://passwd.rockylinux.cn # 设置域名,需要替换成自己申请的域名
volumes:
- /SSD/Demo/vaultwarden/data/:/data/
expose:
- 80
# - 3012 # 3012 端口为 WebSocket 通讯端口
networks:
- traefik_net
labels:
- "traefik.enable=true"
- "traefik.docker.network=traefik_net"
- "traefik.http.routers.vaultwarden.rule=Host(`passwd.rockylinux.cn`)"
- "traefik.http.routers.vaultwarden.entryPoints=websecure"
- "traefik.http.routers.vaultwarden.tls.certresolver=myresolver"
- "traefik.http.routers.vaultwarden.service=vaultwarden"
- "traefik.http.services.vaultwarden.loadbalancer.server.port=80"
- "traefik.http.services.vaultwarden.loadbalancer.server.scheme=http"
# 如果您无法理解以下相关配置,直接原样复制即可。
# - "traefik.http.routers.vaultwarden-http.rule=Host(`passwd.rockylinux.cn`)"
# - "traefik.http.routers.vaultwarden-http.entryPoints=web"
# - "traefik.http.routers.vaultwarden-http.service=vaultwarden"
# - "traefik.http.routers.bitwarden-websocket.rule=Host(`passwd.rockylinux.cn`) && Path(`/notifications/hub`)"
# - "traefik.http.routers.bitwarden-websocket.entrypoints=websecure"
# - "traefik.http.routers.bitwarden-websocket.tls.certresolver=myresolver"
# - "traefik.http.routers.bitwarden-websocket.service=bitwarden-websocket"
# - "traefik.http.services.bitwarden-websocket.loadbalancer.server.port=3012"
# - "traefik.http.routers.bitwarden-websocket-http.rule=Host(`passwd.rockylinux.cn`) && Path(`/notifications/hub`)"
# - "traefik.http.routers.bitwarden-websocket-http.entrypoints=web"
# - "traefik.http.routers.bitwarden-websocket-http.service=bitwarden-websocket"
networks:
traefik_net:
external: true
EOF
# 启动服务
[root@demo memos]# docker-compose up -d
部署完成以后,正常通过 https://passwd.rockylinux.cn 打开 Web 客户端,并设置对应登录账号、密码、MFA 认证即可。
手机客户端
由于多客户端支持的加持,使得使用体现真得非常棒,再也不需要进行密码记忆或手动管理密码了,此外,手机端还支持指纹与人脸识别解锁,非常方便。
Bitwarden Android 旧版本客户端下载:Bitwarden/mobile,支持 vaultwarden/server:1.30.5
镜像
Bitwarden Android 新版本客户端下载:Bitwarden/Android,支持 vaultwarden/server:1.32.7
镜像
当然也可以从 Google Play 或 F-Droid 直接下载安装最新版本客户端。
macOS 客户端
macOS 可以直接从 AppStore 安装,或者从 Github Bitwarden/macOS Windows Linux 下载 dmg 包手动安装即可。
macOS 客户端支持触控 ID 解锁,点击“Bitwarden” — “设置” 进行设置,具体参数下图所示。
浏览器扩展
Chrome、Firefox、Edge、Opera 等浏览器扩展,可以通过对应应用商店安装,也可以通过 Github 下载 Bitwarden 浏览器扩展 安装。
Chrome 应用商店安装地址:Chrome 应用商店 – 扩展程序
对应配置比较简单,如下图所示,配置自托管,输入服务器 URL、账号、密码即可登录。
BitWarden 自带密码生成器
密码直接根据需要搜索即可。
浏览器界面右击自动填充密码,不要太爽。
新版本会根据浏览器打开的网站自动匹配密码,然后只需要点击 “填充” 即可。
密码备份与恢复
如果您之前有在 Chrome 中存储密码,可以直接导出来,然后快速导入 Bitwarden。Bitwarden 不仅仅支持 Chrome 浏览器密码库,还支持 Firefox、LastPass、KeePass 2、1Password 等。
Chrome 导出: 依次进入设置 — 自动填充 — 密码 — 导出密码,最终会导出一个 csv 文件。
Bitwarden 导入: 打开您的 Bitwarden,文件 — 导入数据 — 文件格式(Chrome(csv) — 选择文件 -> 点击“导入数据”。
Bitwarden 导出:打开您的 Bitwarden,文件 — 导出密码库。
对于 Vaultwarden 服务器端,由于其采用的是 SQLite 数据库,所以直接备份 /SSD/Demo/vaultwarden/data/
数据目录即可。
后述
以上就是我们对 Bitwarden 密码管理工具的简单介绍。通过 Bitwarden 我们不仅可以安全地存储和管理密码,还能在各种设备和平台之间无缝同步,真正实现了密码管理的便捷与安全。Bitwarden 的出现无疑为我们的数字资产带来了一种全新的密码管理方式。
变更记录
-
2024-03-28
- 移除 docker-compose.yaml 中关于 WebSockets Traefik 配置部份。
-
2025-01-25
- 修改所有 Bitwarden_RS 至 Vaultwarden
- 更新镜像
vaultwarden/server:1.30.5
升级至vaultwarden/server:1.32.7
- 更新 Android 客户端 GitHub 仓库地址
- 更新密码备份与恢复说明
