使用docker安装vaultwarden
您是否常常为了密码管理而烦恼?有时为了省事,把所有账户设为统一密码;有时记在小本子上;或者干脆交给浏览器保存并同步到云端。但这样做,非常的不安全。
本文将介绍一种更安全的方式 —— 如何将密码保存在本地。
什么是vaultwarden
vaultwarden
是一个使用Rust
编写的轻量级的Bitwarden
服务端实现,提供了自托管密码管理服务,兼容官方Bitwarden
客户端,占用资源极低,甚至于可以将其部署到树莓派上,所以vaultwarden
主要是面向个人、家庭和小型组织为主。
Docker
:https://hub.docker.com/r/vaultwarden/server
Github
:https://github.com/dani-garcia/vaultwarden
使用Docker
安装vaultwarden
建议不要直接使用
-p
进行端口映射,因为vaultwarden
的web
界面默认仅允许本机访问或通过https
协议访问,其他网络请求将被拒绝。因此,推荐配置一个https
转发代理。
vaultwarden
安装
为了保障数据安全,在使用 docker
安装vaultwarden
时,需要进行目录映射。可以创建并使用 /vwdata
目录来存储持久化数据。
Bash | |
---|---|
接下来,就可以使用 docker
安装并运行 vaultwarden
了:
Bash | |
---|---|
这里不需要进行端口映射,因为完全没必要。
可以使用 docker inspect
搭配 jq
命令查看vaultwarden
容器的 ip
地址,例如:
上述 vaultwarden
容器的 IP
地址为:172.80.0.2
。
SSL
证书生成
如前所述,vaultwarden
的 web
界面默认仅支持本机访问或通过 https
协议进行访问,这一限制是由前端逻辑所决定的,因此这里使用 https
协议进行访问。
如果没有自己的域名,可以使用 openssl
自行签发一个 https
证书。本文将通过 nginx
实现站点的转发和访问,nginx
的安装过程在此不再赘述。
首先切换到 nginx
的主目录,然后使用 openssl
生成自签名证书:
Bash | |
---|---|
在接下来交互输入中,在 Common Name (CN)
中输入invaultwarden20250507.com
,假装我们拥有invaultwarden20250507.com
域名。
接下来,创建 Vaultwarden 的配置文件:
Bash | |
---|---|
上述内容中,172.80.0.2
是容器vaultwarden
的ip
地址。
由于域名并不属于我们,所以 其他机器想要访问该站点的话,需要创建hosts
映射。
vaultwarden
最基本的使用
使用浏览器访问 https://invaultwarden20250507.com
时,会弹出证书无效的提示,直接选择忽略该警告即可。
首次登录时,需要先创建一个用户,创建完成后即可登录。
登录完成后,选择【安装浏览器扩展】:
安装插件完毕后,选择【自托管】:
输入服务器URL
,点击保存:
然后就可以登录刚刚创建好的帐号了。
后续使用中,如果登录了网站,会提示是否保存密码,选择保存即可。
如果想要保存如MFA
动态验证码,需要将验证器密钥填写进去。
上述是最基本的使用了。
数据库备份
vaultwarden
默认使用sqlite3
,只需要将/vwdata
给打包压缩即可,不过需要注意存放到安全的地方,必要的时候,可以使用第三方数据加密工具进行加密,比如:gpg
。
最简单的备份脚本如下:
Bash | |
---|---|
总结
vaultwarden
提供了自托管密码管理服务,使得密码能够安全地存储在本地数据库中,有效防止因使用相同密码而遭遇撞库攻击的风险。它不仅支持存储动态验证码,还具备其他实用功能,如密码生成器、Send
分享信息等,是一款功能丰富且非常实用的工具。
另外,vaultwarden
的 web
界面默认仅允许本机访问或通过 https
协议进行访问,其他网络请求将被拒绝。除了部署 https
访问外,还可以通过本地端口映射来完成请求。
使用docker安装vaultwarden
https://wangli2025.github.io/2025/05/11/vaultwarden_usage.html
本站均为原创文章,采用 CC BY-NC-ND 4.0 协议。转载请注明出处,不得用于商业用途。