为什么要自建密码管理器?
现在谁还没有几十个账号密码?银行、邮箱、社交、购物……用同一个密码不安全,用不同密码又记不住。
市面上的密码管理器(1Password、LastPass、Bitwarden)确实好用,但数据存在别人服务器上,心里总有点不踏实。
Vaultwarden 是 Bitwarden 的轻量级 Rust 实现,完全兼容 Bitwarden 客户端,一个 Docker 容器就能跑起来,资源占用极低(内存不到 50MB)。
系统要求
- 一台 Linux 服务器(1核512M 就够)
- 已安装 Docker 和 Docker Compose
- 一个域名(可选,但强烈建议配置 HTTPS)
部署步骤
1. 创建 docker-compose.yml
version: "3"
services:
vaultwarden:
image: vaultwarden/server:latest
container_name: vaultwarden
restart: always
ports:
- "8080:80"
volumes:
- ./data:/data
environment:
- SIGNUPS_ALLOWED=true
- WEBSOCKET_ENABLED=true
- DOMAIN=https://vw.yourdomain.com
- ADMIN_TOKEN=your_admin_token_hereSIGNUPS_ALLOWED=true 允许注册,等你注册完自己的账号后,记得改成 false 关闭注册。ADMIN_TOKEN 用 openssl rand -base64 48 生成一个随机 token,访问 /admin 管理面板用。
2. 启动服务
docker-compose up -d3. 配置 Nginx 反向代理 + SSL
server {
listen 443 ssl;
server_name vw.yourdomain.com;
ssl_certificate /path/to/cert.pem;
ssl_certificate_key /path/to/key.pem;
location / {
proxy_pass http://127.0.0.1:8080;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
}
location /notifications/hub {
proxy_pass http://127.0.0.1:8080;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
}
}4. 注册账号并使用
- 打开 https://vw.yourdomain.com
- 点击创建账户注册
- 登录后,在网页端添加密码,或安装 Bitwarden 客户端/浏览器插件
- 在客户端设置中,服务器地址填你的域名
客户端全平台支持
Vaultwarden 完全兼容 Bitwarden 官方客户端:
| 平台 | 客户端 |
|---|---|
| Chrome/Edge/Firefox | Bitwarden 浏览器扩展 |
| iOS | Bitwarden App Store |
| Android | Bitwarden Google Play / F-Droid |
| Windows/Mac/Linux | Bitwarden Desktop |
进阶配置
开启 2FA 双重认证
登录网页版,设置,两步登录,选择 Authenticator App,扫码绑定。
自动备份
#!/bin/bash
cd /path/to/vaultwarden
docker-compose stop
tar -czf /backup/vaultwarden-$(date +%Y%m%d).tar.gz data/
docker-compose start
find /backup/ -name "vaultwarden-*.tar.gz" -mtime +7 -delete加入 crontab 每日自动备份:0 3 * * * /path/to/backup_vaultwarden.sh
常见问题
Q: 和官方 Bitwarden 有什么区别?
A: Vaultwarden 是社区用 Rust 重写的版本,功能几乎一样,但更轻量。官方版需要 SQL Server + 多个容器,Vaultwarden 一个容器搞定。
Q: 免费吗?
A: 完全免费开源,没有付费墙,Bitwarden 的高级功能(TOTP、文件附件等)都免费提供。
Q: 数据安全吗?
A: 数据存在你自己的服务器上,传输使用 HTTPS 加密,数据库文件也是加密的。定期备份即可万无一失。
总结
有了 Vaultwarden,你再也不用担心密码泄露、服务关停、或者忘记续费。所有密码都在你自己的服务器上,全平台同步,安心又省心。一个 512MB 内存的 VPS 就能流畅运行,强烈推荐!