搭建 Vaultwarden 服务端使用 Bitwarden 开源密码管理器

✨ 本文介绍了如何搭建 Vaultwarden 服务端,该服务端能够兼容使用开源密码管理器 Bitwarden。Vaultwarden 是一款轻量级的非官方 Bitwarden 服务器实现,适合个人或小型组织自托管使用,与官方 Bitwarden 客户端兼容,提供安全稳定的密码管理方案。文章还提供了通过 Docker Compose 快速启动 Vaultwarden 的方法,确保用户可以高效、安全地管理密码。

TOC

背景

Bitwarden 这一开源密码管理器的之前在论坛帖子和回复中经常看到,但一直以来并没有将其提上优先级,也就没有搭建深入使用了。

Google Chrome 自带的密码管理实证不安全,1password / lastpass 等类型产品也或多或少的存在问题,迁移到 Bitwarden 似乎是最合适的选择。

https://www.v2ex.com/t/1014605

介绍

https://bitwarden.com/
Bitwarden 是一款开源密码管理器,旨在帮助用户安全地存储和管理他们的密码及其他敏感信息。它的用户界面简洁直观,适合各类用户,无论是个人还是团队,均可轻松上手。Bitwarden 提供端到端加密,确保用户的数据在传输和存储过程中都得到高度保护,只有用户本人可以访问和解锁这些信息。
此外,Bitwarden 支持多平台同步,用户可以在桌面、移动设备及浏览器扩展中访问他们的密码库,这种灵活性极大地方便了日常使用。同时,Bitwarden 还提供了多种安全功能,如密码生成工具、密码安全评估和双重认证,进一步提升了账户的安全性。

Vaultwarden

Bitwarden 官方的服务端运行起来较为吃资源,考虑到 VPS 有限的性能,这里使用 Vaultwarden 来作为服务端。

https://github.com/dani-garcia/vaultwarden
Vaultwarden 是一个用 Rust 编写的非官方 Bitwarden 服务器实现。它与官方的 Bitwarden 客户端兼容,主要面向个人、家庭和小型组织,适合想要自托管的用户,因为它比官方资源消耗较大的服务更轻量。

部署

直接通过 Docker Compose 快速启动,使用 SQLite 作为数据库。

compose.yaml

services:
  vaultwarden:
    image: vaultwarden/server:latest
    container_name: vaultwarden-server
    restart: always
    volumes:
      - ./vw-data/:/data/
    ports:
      - "8088:80"
    environment:
      - TZ:Asia/Shanghai
      # 当自己的账户创建成功后可修改为 false 以禁止其他人注册
      - SIGNUPS_ALLOWED=true      
      # 禁止邀请
      - INVITATIONS_ALLOWED=false
      # 开启 Admin page,设置 Token
      # 可通过如下命令设置密码获得 Token 字符串,可能需要安装 argon2,如 Debian 系:sudo apt install argon2
      # echo -n "SecurePassword" | argon2 "$(openssl rand -base64 32)" -e -id -k 19456 -t 2 -p 1 | sed 's#\$#\$\$#g'
      - ADMIN_TOKEN=
      # 启用 U2F 和 FIDO2 WebAuthn ,必须设置 https 域名
      - DOMAIN=https://your.vw.url
      # 请求头客户端 IP 信息,使用 Cloudflare 时设置
      - IP_HEADER=CF-Connecting-IP

更多环境变量配置请参阅项目 Wiki

https://github.com/dani-garcia/vaultwarden/wiki/Configuration-overview

然后通过 docker compose up -d 启动。

使用

打开绑定的域名,根据操作提示创建账户,创建完成后进入界面如下

导入密码

此处以导入 Chrome 浏览器中的密码为例,先从 Chrome 浏览器中导出已有密码

浏览器网址输入栏输入chrome://password-manager/settings并访问

👇 安装各个平台的 Bitwarden 应用 / 浏览器扩展插件

https://bitwarden.com/download/

以 macOS 应用为例,打开应用如下所示,选中 self-hosted ,填写绑定的域名然后登录即可。

更多配置后续补充完善……