重塑密码管理体系 ——Bitwarden 服务端自部署

麻辣香锅
麻辣香锅
管理员
5
文章
0
粉丝
密码管理评论2081阅读模式

介绍

Vaultwarden 是一个用 Rust 编写的非官方 Bitwarden 服务器实现,兼容 Bitwarden 官方客户端,专为自托管用户设计,适合个人、家庭或小型团队使用。


优势

特性 描述
轻量级 相比官方服务器资源占用极低,512MB 内存即可运行
全功能 支持 MFA、TOTP、附件上传、组织共享、密码发送等,官方免费版没有的功能它也支持
跨平台兼容 支持 Windows、macOS、Linux、iOS、Android 等客户端
数据自主掌控 自托管部署,数据存储在你自己的服务器上,增强隐私安全
开源透明 基于 AGPL-3.0 协议,代码完全开源

项目官网

https://github.com/dani-garcia/vaultwarden

快速运行

docker run -d --name vaultwarden \
  -v /data/vw-data/:/data/ \
  --restart unless-stopped \
  -p 127.0.0.1:33002:80 \
  -e WEBSOCKET_ENABLED=true \
  -e SIGNUPS_ALLOWED=true \
  -e WEB_VAULT_ENABLED=true \
  -e ADMIN_TOKEN=`openssl rand -base64 48` \
  -e SHOW_PASSWORD_HINT=true \
  -e DOMAIN="https://yourdomain.tld" \
  vaultwarden/server:1.34.3
  
  # 国内镜像
  swr.cn-east-3.myhuaweicloud.com/cncr/docker.io/vaultwarden/server:1.34.3

NGINX配置

upstream bitwarden-default { server 127.0.0.1:8889; }
upstream bitwarden-ws { server 127.0.0.1:8810; }

server {
    listen 80;
    listen 443 ssl http2;
    server_name yourdomain.tld;

    ssl_certificate /path/to/cert;
    ssl_certificate_key /path/to/key;
    ssl_protocols TLSv1.2 TLSv1.3;
    ssl_prefer_server_ciphers on;
    ssl_ciphers ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384;

    if ($scheme = http){
      return 301 https://$host$request_uri;
    }

    add_header Strict-Transport-Security "max-age=31536000; includeSubDomains" always;
    add_header Content-Security-Policy upgrade-insecure-requests;
    add_header X-Frame-Options DENY;
    add_header X-Content-Type-Options nosniff;
    add_header X-XSS-Protection "1; mode=block";
    add_header Referrer-Policy "no-referrer-when-downgrade";

    client_max_body_size 128M;
    # reverse proxy
    location / {
        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_pass http://bitwarden-default;
    }

    location /notifications/hub/negotiate {
        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_pass http://bitwarden-default;
    }

    location /notifications/hub {
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection "upgrade";
        proxy_set_header X-Real-IP $remote_addr;
        proxy_pass http://bitwarden-ws;
    }
}

访问后台

  • 访问 域名 +/admin

查看管理员口令

[root@localhost ~]$ docker inspect vaultwarden | grep ADMIN_TOKEN
                "ADMIN_TOKEN=JaHlFVdiIYcoY70hDTgxTfsPUZwaGmg17D4fA4d1CIovznYvBPgs2gAwhaZYIV47",

备份

#!/bin/sh

set -e

username=xxx
password=xxx

filename="bitwarden-`date +%F`.tar.gz"
cd /path/to/your/vaultwarden-basedir/
tar czf "${filename}" bw-data/
curl -u "${username}:${password}" -T "${filename}" "https://dav.jianguoyun.com/dav/bitwarden/"

客户端

https://bitwarden.com/download/

 
麻辣香锅
  • 本文由 麻辣香锅 发表于2025年9月13日 22:57:49
  • 转载请务必保留本文链接:https://www.wtcat.com/58.html
匿名

发表评论

匿名网友
确定

拖动滑块以完成验证