Vaultwarden:优秀的私人密码管理器

FOXBALL-ONE Lv1

前言

现在互联网时代,越来越多的服务需要注册账号,然后就密码管理器就来了。能有效管理各种乱七八的账号密码和一些重要的隐私信息。我是从1password那里转过来的,好用确实是好用,但是价格嘛,比较美丽。再加上私有化需求,bitwarden就成了首选。

Vaultwarden 是一个使用 Rust 编写的非官方 Bitwarden 服务器实现,它与官方 Bitwarden 客户端兼容,非常适合不希望运行官方资源密集型服务的自托管部署。(简述来自中文WIKI)

相关链接:

看到不懂的地方去看中文WIKI或者官方文档。

部署方式

推荐使用Docker的方式部署,快捷命令中 /vw-data/ 的路径请自行修改:

1
docker run -d --name vaultwarden -v /vw-data/:/data/ -p 80:80 vaultwarden/server:latest

环境变量配置

然后修改环境变量,用于配置Vaultwarden的行为和功能。

关键的变量:

  • DOMAIN: 服务器的域名。
  • ADMIN_TOKEN: 管理员令牌,用于访问管理页面。(后续可以用管理页面来进一步配置和管理Vaultwarden)
  • DATABASE_URL : 数据库连接字符串,用于保存用户数据。

注意事项:

DATABASE_URL 的语法:

  • MYSQL: mysql://[[user]:[password]@]host[:port][/database]
  • POSTGRES: postgresql://[[user]:[password]@]host[:port][/database]

DATABASE_URL 中,如果密码包含特殊字符,则需要使用百分号编码。例如 # 要替换成 %23@ 要替换成 %40 等。

配置方式

有三种配置方式:

  • 环境变量
  • config.json(不推荐,可以通过管理页面生成和管理)
  • ENV_FILE

环境变量和ENV_FILE的优先级高于config.json。

参考资料:

配置文件示例

我自己是使用配置文件的方式,配置文件路径为 /vw-data/config.json(推荐使用环境变量的方式)

配置文件内容如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
{
"domain": "",
"sends_allowed": true,
"incomplete_2fa_time_limit": 3,
"disable_icon_download": false,
"signups_allowed": false,
"signups_verify": true,
"signups_verify_resend_time": 3600,
"signups_verify_resend_limit": 6,
"invitations_allowed": true,
"emergency_access_allowed": true,
"email_change_allowed": true,
"password_iterations": 600000,
"password_hints_allowed": true,
"show_password_hint": false,
"admin_token": "",
"invitation_org_name": "Vaultwarden",
"ip_header": "X-Real-IP",
"icon_redirect_code": 302,
"icon_cache_ttl": 2592000,
"icon_cache_negttl": 259200,
"icon_download_timeout": 10,
"http_request_block_non_global_ips": true,
"disable_2fa_remember": false,
"authenticator_disable_time_drift": false,
"require_device_email": false,
"reload_templates": false,
"log_timestamp_format": "%Y-%m-%d %H:%M:%S.%3f",
"admin_session_lifetime": 20,
"increase_note_size_limit": false,
"_enable_yubico": true,
"_enable_duo": true,
"_enable_smtp": true,
"use_sendmail": false,
"smtp_host": "",
"smtp_security": "starttls",
"smtp_port": 587,
"smtp_from": "",
"smtp_from_name": "Vaultwarden",
"smtp_username": "",
"smtp_password": "",
"smtp_timeout": 15,
"smtp_embed_images": true,
"smtp_accept_invalid_certs": false,
"smtp_accept_invalid_hostnames": false,
"_enable_email_2fa": true,
"email_token_size": 6,
"email_expiration_time": 600,
"email_attempts_limit": 3,
"email_2fa_enforce_on_verified_invite": false,
"email_2fa_auto_fallback": false
}

请根据上文的参考文档来修改配置文件中的内容,尤其是 admin_tokensmtp 相关的配置项。

启动与使用

访问管理页面

启动服务后,访问 /admin 路径即可进入管理页面,使用上文配置的 admin_token 登录。

客户端配置

Vaultwarden 部署完成后,需要在 Bitwarden 客户端进行以下设置:

  1. 打开 Bitwarden 客户端,在登录页面下方找到「正在访问」选项
  2. 将其修改为「自托管」
  3. 在服务器 URL 中填入上文配置的 DOMAIN
  4. 保存后即可正常登录使用
  • 标题: Vaultwarden:优秀的私人密码管理器
  • 作者: FOXBALL-ONE
  • 创建于 : 2026-01-02 20:48:40
  • 更新于 : 2026-04-01 10:49:10
  • 链接: https://blog.utf-8.fun/2026/01/02/vaultwarden-优秀的私人密码管理器/
  • 版权声明: 本文章采用 CC BY-NC-SA 4.0 进行许可。
评论