自建 Bitwarden 与自动化加密备份全攻略
自建 Bitwarden 服务器不推荐使用官方版本,占用较大,推荐使用 Vaultwarden 版本(原 Bitwarden_RS),它是用 Rust 编写的 Bitwarden 服务器非官方实现,极其轻量,完美适配 Docker,且解锁了官方版需要付费才能使用的功能(如 TOTP 二步验证、附件上传等)。
更重要的是,只有服务的自建是不完整的,没有备份的自建是危险的。本文将通过 docker-compose 一键部署 Vaultwarden,并挂载自动化备份容器,将密码库加密打包上传到云端。
准备工作
一台安装了 Docker 和 Docker Compose 的服务器(VPS 或 NAS)。
一个域名(用于配置 HTTPS,Bitwarden 强制要求 HTTPS)。
部署步骤
配置 Rclone
通过下面的命令创建 Rclone 配置卷,根据实际配置存储端。建议将远程名称设置为 BitwardenBackup,否则你需要指定环境变量 RCLONE_REMOTE_NAME 为你设置的远程名称。
docker run --rm -it \
--mount type=volume,source=vaultwarden-rclone-data,target=/config/ \
ttionya/vaultwarden-backup:latest \
rclone config编写 docker-compose.yml
在你的项目目录下创建 docker-compose.yml 文件,填入以下内容:
services:
vaultwarden:
image: vaultwarden/server:latest
container_name: vaultwarden
restart: always
environment:
# 替换为你自己的域名
DOMAIN: "https://password.abc.com"
volumes:
- ./data/:/data/
ports:
- 10080:80
backup:
image: ttionya/vaultwarden-backup:latest
restart: always
environment:
RCLONE_REMOTE_NAME: 'BitwardenBackup'
# 远程存储的具体路径
RCLONE_REMOTE_DIR: '/BitwardenBackup/'
# 定时任务:每天凌晨 0 点执行
CRON: '0 0 * * *'
# 开启压缩
ZIP_ENABLE: 'TRUE'
# 压缩包加密密码
ZIP_PASSWORD: '123456'
# 压缩格式
ZIP_TYPE: 'zip'
# 备份文件名后缀,例如:backup-20231027.zip
BACKUP_FILE_SUFFIX: '%Y%m%d'
# 本地保留备份天数
BACKUP_KEEP_DAYS: 7
# 时区设置
TIMEZONE: 'Asia/Shanghai'
volumes:
- ./data:/bitwarden/data/
- vaultwarden-rclone-data:/config/
volumes:
vaultwarden-rclone-data:
external: true
name: vaultwarden-rclone-data
启动服务
在目录下执行:
docker compose up -d启动后,访问 http://IP:10080 即可看到界面。Bitwarden 必须要 HTTPS 才能使用,需要配合 Nginx Proxy Manager 或 Caddy 进行反向代理并申请 SSL 证书。
- 感谢你赐予我前进的力量
赞赏者名单
因为你们的支持让我意识到写文章的价值🙏
本文是原创文章,采用 CC BY-NC-ND 4.0 协议,完整转载请注明来自 Zephyr's Blog
评论
匿名评论
隐私政策
你无需删除空行,直接评论以获取最佳展示效果
