Docker 安装 Bitwarden 密码管理器
前言
随之各大密码管理工具都开始订阅制付费,很多伙伴都转移到 Bitwarden
当然,密码敏感数据放在自己手上才是最安全的。
本教程不使用官方 Bitwarden 镜像,官方对服务器要求较高,这里使用到了 vaultwarden/server
非官方的镜像,更加的轻量。
docker hub:https://hub.docker.com/r/vaultwarden/server
github wik:https://github.com/dani-garcia/vaultwarden/wiki
什么是 Vaultwarden
2021年4月27日:bitwarden_rs 项目更名为 Vaultwarden
Vaultwarden是一个用于本地搭建Bitwarden服务器的第三方Docker项目。兼容Bitwarden官方客户端,仅在部署的时候使用Vaultwarden镜像,桌面端、移动端、浏览器扩展等客户端均使用Bitwarden官方的客户端。
Vaultwarden 很轻量,对于不希望使用官方的占用大量资源的自托管部署而言,它是理想的选择。
docker compose在Github的地址:https://github.com/docker/compose/releases
vaultwarden在Github的地址:https://github.com/dani-garcia/vaultwarden
vaultwarden在docker hub的地址:https://hub.docker.com/r/vaultwarden/server
vaulwarden官方文档:https://github.com/dani-garcia/vaultwarden/wiki
vaultwarden官方文档中文翻译版:https://rs.ppgg.in/
申请 SSL 证书
具体查看:https://www.fungs.cn/posts/167770507.html
安装 Bitwarden
自定义一些参数,加入 HTTPS 支持等
SIGNUPS_ALLOWED=false 不允许用户注册
INVITATIONS_ALLOWED=true 开启邀请注册
ADMIN_TOKEN 启用管理页面,需要设置一组身份验证令牌,运行openssl rand -base64 48
LOG_FILE 日志文件路径
LOG_LEVEL=warn -e EXTENDED_LOGGING=true 日志等级
TZ=Asia/Shanghai:设置时区
-v /data/bitwarden/data:/data 持久化数据
-p 8443:80:指定容器的 80 端口暴露在宿主机的 8443 端口上
-p 3012:3012 指定容器的 3012 端口暴露在宿主机的 3012 端口上 用于 websocket 通知
- 创建持久化目录
1 | mkdir -p /data/bitwarden/data /data/bitwarden/logs |
- 启动镜像
1 | docker run -d --name bitwarden \ |
配置 Nginx Https 反向代理
使用宝塔面板添加反向代理,创建成功后在点击配置文件,添加 websockt 3012端口的反向代理
1 | location ^~ /notifications/hub { |
参考宝塔生成的配置文件:
1 | PROXY-START/ |
重启 Nginx 服务器!!!
访问 Bitwarden Admin:https://bitwarden.fungs.cn/admin
输入之前创建的 ADMIN_TOKEN 即可登录
配置 Bitwarden
配置 SMTP 服务器
填写好 SMTP 参数后点击保存,然后使用测试功能测试邮件是否发送成功。
发送邀请邮件
通过邮件的链接进行用户注册
chrome 插件使用
https://chrome.google.com/webstore/detail/bitwarden-free-password-m/nngceckbapebfimnlniiiahkandclblb
检查 WebSocket 通知是否正常
websocket 状态 101 即正常,此时在其他端修改数据会自动同步到所有平台
如果状态在等待中,请检查 3012 端口的反向代理配置,放行 3012 端口,重启 Nginx