自建密码管理器 Vaultwarden

zheng头像
zheng 2026-07-19 10:35
楼主

为什么要自建密码管理器?

现在谁还没有几十个账号密码?银行、邮箱、社交、购物……用同一个密码不安全,用不同密码又记不住。

市面上的密码管理器(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_here

SIGNUPS_ALLOWED=true 允许注册,等你注册完自己的账号后,记得改成 false 关闭注册。ADMIN_TOKEN 用 openssl rand -base64 48 生成一个随机 token,访问 /admin 管理面板用。

2. 启动服务

docker-compose up -d

3. 配置 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. 注册账号并使用

  1. 打开 https://vw.yourdomain.com
  2. 点击创建账户注册
  3. 登录后,在网页端添加密码,或安装 Bitwarden 客户端/浏览器插件
  4. 在客户端设置中,服务器地址填你的域名

客户端全平台支持

Vaultwarden 完全兼容 Bitwarden 官方客户端:

平台客户端
Chrome/Edge/FirefoxBitwarden 浏览器扩展
iOSBitwarden App Store
AndroidBitwarden Google Play / F-Droid
Windows/Mac/LinuxBitwarden 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 就能流畅运行,强烈推荐!

家庭影音中心 Jellyfin 搭建指南 Uptime Kuma 自建监控:网站宕机 30 秒内微信通知你

最新回复

暂无回复,来说两句吧

发表评论

站点总访问量:6139