Vaultwarden:开源轻量的1Password替代,自托管密码管理方案

发布时间:2026/5/22 0:49:03

Vaultwarden:开源轻量的1Password替代,自托管密码管理方案 Vaultwarden开源轻量的1Password替代自托管密码管理方案背景在互联网时代密码安全是每个人都面临的问题密码太多记不住不同平台用同一个密码又不安全各大密码泄露事件频发LastPass 多次被黑、Twitter 密码明文存储商业密码管理器要么收费要么数据存储在第三方想找一个免费、开源、可以自托管的解决方案今天介绍一款开源的密码管理服务器——Vaultwarden它是 Bitwarden 的轻量级替代在 GitHub 上已获得40K Star。什么是 VaultwardenVaultwarden 是一个用 Rust 编写的 Bitwarden 客户端 API 的替代服务器实现兼容官方 Bitwarden 客户端。核心理念“Lightweight Bitwarden server, written in Rust”——用 Rust 编写的轻量级 Bitwarden 服务器。核心特性特性说明完整 API 兼容兼容 Bitwarden 全平台客户端开源免费MIT 许可证完全免费轻量高效Rust 编写资源占用极低自托管数据完全自主支持 Docker 部署TOTP 支持内置两步验证器功能组织共享支持团队密码共享多因素认证Email、FIDO2、YubiKey、DuoGitHub 地址https://github.com/dani-garcia/vaultwarden官网https://vaultwarden.zed.devVaultwarden vs Bitwarden vs 1Password对比项VaultwardenBitwarden1Password价格免费免费/付费$36/年开源✅ 完全开源✅ 客户端开源❌ 闭源自托管✅ 完全支持✅ 付费版❌ 不支持资源占用~50MB 内存~500MB 内存云服务部署难度简单复杂不适用TOTP✅ 支持✅ 支持✅ 支持密码共享✅ 支持✅ 支持✅ 支持Vaultwarden 的独特优势资源占用极低最低 50MB 内存完全兼容官方 Bitwarden 客户端自托管数据完全自主支持几乎所有 Bitwarden 高级功能快速上手方式一Docker 部署推荐# 创建目录mkdir-p/opt/vaultwardencd/opt/vaultwarden# 创建 docker-compose.ymlcatdocker-compose.ymlEOF version: 3.8 services: vaultwarden: image: vaultwarden/server:latest container_name: vaultwarden restart: unless-stopped environment: DOMAIN: https://vw.yourdomain.com SIGNUPS_ALLOWED: true WEB_VAULT_ENABLED: true volumes: - ./vw-data:/data ports: - 127.0.0.1:8080:80 volumes: vw-data: EOF# 启动服务dockercompose up-d# 访问 Web Vault# http://localhost:8080方式二Docker 命令直接启动dockerrun-d\--namevaultwarden\--restartunless-stopped\-eDOMAINhttps://vw.yourdomain.com\-eSIGNUPS_ALLOWEDtrue\-v/opt/vw-data:/data\-p127.0.0.1:8080:80\vaultwarden/server:latest方式三非 Docker 安装Ubuntu/Debian# 添加仓库并安装curl-fsSLhttps://pgp.mit.edu/pks/lookup?opgetsearch0x6E385E2D5C6D3F0B|gpg--dearmor|sudotee/usr/share/keyrings/vaultwarden-archive-keyring.gpg/dev/nullechodeb [signed-by/usr/share/keyrings/vaultwarden-archive-keyring.gpg] https://apt.vaultwarden.org stable main|sudotee/etc/apt/sources.list.d/vaultwarden.listsudoaptupdatesudoaptinstallvaultwarden添加 HTTPS推荐Vaultwarden 需要 HTTPS 才能正常使用 Web Vault。建议使用反向代理Nginx 配置server { listen 80; server_name vw.yourdomain.com; return 301 https://$server_name$request_uri; } server { listen 443 ssl http2; server_name vw.yourdomain.com; ssl_certificate /path/to/cert.pem; ssl_certificate_key /path/to/key.pem; client_max_body_size 128M; location / { proxy_pass http://127.0.0.1:8080; proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection upgrade; 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; proxy_set_header X-Forwarded-Host $host; } }Traefik 配置services:vaultwarden:image:vaultwarden/server:latestcontainer_name:vaultwardenrestart:unless-stoppedenvironment:DOMAIN:https://vw.yourdomain.comvolumes:-./vw-data:/datalabels:-traefik.enabletrue-traefik.http.routers.vaultwarden.ruleHost(vw.yourdomain.com)-traefik.http.routers.vaultwarden.tlstrue-traefik.http.services.vaultwarden.loadbalancer.server.port80官方客户端使用Vaultwarden 完全兼容官方 Bitwarden 客户端桌面客户端支持平台WindowsmacOSLinux配置步骤下载并安装 Bitwarden 桌面客户端点击右上角设置图标选择 “Settings” → “Self-hosted”输入你的 Vaultwarden 服务器地址https://vw.yourdomain.com保存并登录浏览器扩展支持的浏览器ChromeFirefoxSafariEdgeBrave配置步骤安装 Bitwarden 浏览器扩展点击扩展图标 → 设置选择 “Self-hosted” 并输入服务器地址保存并登录移动端支持平台iOSAndroid配置步骤安装 Bitwarden App进入设置 → 选择 Self-hosted输入服务器地址登录Web VaultVaultwarden 内置 Web Vaulthttps://vw.yourdomain.com可以直接在浏览器中访问和管理密码。核心功能详解1. 密码管理Vaultwarden 提供完整的密码管理功能密码库项目类型类型说明Login登录信息用户名、密码、URLSecure Note安全笔记Card银行卡信息Identity身份信息姓名、地址、电话等密码生成器// 内置密码生成器长度:16-64位包含:大小写字母、数字、特殊字符选项:避免歧义字符(0,O,l,1)选项:生成易记密码2. TOTP 两步验证Vaultwarden 内置 TOTP基于时间的一次性密码添加 TOTP1. 进入任意登录项 2. 点击 Add Attachment 或编辑 3. 选择 Authenticator Key 或 TOTP URI 4. 保存后自动显示 6 位验证码TOTP 自动填充登录时会自动显示当前验证码可设置自动复制验证码到剪贴板支持自动填充功能3. 组织与共享Vaultwarden 支持创建组织来共享密码组织功能创建团队金库设置成员角色Owner、Admin、User创建集合Collection管理密码事件日志审计密码共享流程1. 创建组织 设置 → Organizations → Create Organization 2. 创建集合 组织设置 → Collections → New Collection 3. 添加成员 组织设置 → Members → Invite Member 4. 共享密码 选择密码项 → 移动到集合4. 紧急访问Vaultwarden 支持紧急访问功能紧急访问设置1. 用户 A 设置紧急联系人 设置 → Emergency Access → Add Emergency Contact 2. 指定信任级别 - View Passwords: 可查看密码 - Accept-Only: 仅接受访问请求 3. 用户 B 处理请求 用户 A 出事后用户 B 可申请紧急访问5. 发送功能SendVaultwarden 支持安全发送文本或文件Send 功能创建加密的文本/文件发送设置过期时间设置最大访问次数密码保护使用示例1. 点击 Send → Create Send 2. 选择类型Text 或 File 3. 输入内容或上传文件 4. 设置过期时间和访问限制 5. 生成分享链接安全配置禁用注册推荐生产环境environment:SIGNUPS_ALLOWED:false# 禁用新用户注册INVITATIONS_ALLOWED:false# 禁用邀请功能设置管理员令牌environment:ADMIN_TOKEN:your-admin-token# 设置管理员面板访问令牌日志配置environment:LOG_FILE:/data/vaultwarden.logLOG_LEVEL:info# debug, info, warn, errorEXTENDED_LOGGING:true# 详细日志备份与恢复备份数据# 备份 vaultwarden 数据目录tar-czvfbackup-$(date%Y%m%d).tar.gz /opt/vaultwarden/vw-data/# 或使用 dockerdockercpvaultwarden:/data ./vw-data-backuptar-czvfbackup-$(date%Y%m%d).tar.gz ./vw-data-backup/恢复数据# 解压备份tar-xzvfbackup-20240101.tar.gz# 恢复数据目录cp-rbackup-data/* /opt/vaultwarden/vw-data/# 或使用 dockerdockercp./vw-data-backup vaultwarden:/data常见问题QVaultwarden 和官方 Bitwarden 有什么区别AVaultwarden 是轻量级替代实现用 Rust 编写官方 Bitwarden 服务器功能更全但资源占用大Vaultwarden 资源占用约 50MB官方版约 500MB两者 API 兼容客户端可以互换Q数据存储在哪里A数据存储在你自己的服务器上SQLite 数据库默认支持外部 PostgreSQL文件存储在挂载的 volume 中Q如何确保安全A务必使用 HTTPS设置强主密码启用两步验证定期备份数据禁用新用户注册生产环境Q支持导入导出吗A支持从 Bitwarden 导入支持从 LastPass、1Password 等导入支持导出为 JSON 或 CSVQ如何更新 VaultwardenA# Docker 部署dockerpull vaultwarden/server:latestdockercompose downdockercompose up-d适用场景推荐使用个人密码管理家庭密码共享小团队密码管理对数据隐私有要求有 NAS 或服务器资源不推荐使用超大规模企业建议官方 Bitwarden Enterprise需要 SSO 集成的场景没有服务器运维能力总结Vaultwarden 用轻量 兼容 开源的组合成为了自托管密码管理的最佳选择。核心优势回顾轻量高效Rust 编写仅需 50MB 内存完整兼容100% 兼容官方 Bitwarden 客户端开源免费MIT 许可无使用限制自托管数据完全自主满足隐私要求功能完备TOTP、组织共享、紧急访问易于部署Docker 一键部署对于追求密码安全、数据自主、免费解决方案的个人和团队Vaultwarden 是最佳选择。本文由无边界科技技术团队分享专注软件开发与技术解决方案。官网wubianj.com© 版权归无边界科技所有版权所有。

相关新闻