POST

Vaultwarden:在飞牛上自建密码库,安全怎么把关

密码都放第三方云端不放心?自建一个,但自建意味着安全责任全在自己身上。

主流密码管理器都是云服务,账号密码一次性放在别人服务器上。Vaultwarden(Bitwarden 的轻量兼容实现)可以跑在 NAS 上,数据自己管。

轻是它的优点:单容器,几百兆内存,SQLite 就够。

部署

services:
  vaultwarden:
    image: vaultwarden/server:latest
    ports:
      - "8080:80"
    volumes:
      - /mnt/存储空间/应用数据/vaultwarden:/data
    environment:
      - SIGNUPS_ALLOWED=false
      - ADMIN_TOKEN=换成一串随机字符
    restart: unless-stopped

SIGNUPS_ALLOWED=false 是重点:部署完、建好账号之后,把它关掉,否则谁都能注册。

必须上 HTTPS

这是最容易被忽略、也最危险的一点。

密码管理器客户端要求 HTTPS,而且自建服务暴露在公网时,明文 HTTP 等于把主密码摆在马路上。

做法:

  • 局域网内可以用自签证书;
  • 外网访问必须用正经证书,通过反向代理 + 自动签发;
  • 别图省事直接开 HTTP 端口到公网。

客户端怎么连

  • 浏览器插件:设置里把服务器地址改成你自己的;
  • 手机 App:登录界面点「设置服务器 URL」;
  • 桌面端同理。

地址填 https://你的域名 或者局域网 IP(自签证书要信任一下)。

安全清单

  • 主密码足够强,别和别处复用;
  • 关掉注册;
  • 开双重验证(TOTP 也行);
  • 定期导出备份,但导出文件本身要加密保存;
  • 反向代理只暴露必要端口;
  • 容器保持更新,但别在没备份的情况下贸然升级。

备份

数据全在 /data 里:

  • db.sqlite3:账号和密码条目(加密的);
  • attachments、sends:附件;
  • rsa_key.*:服务端密钥。

停容器复制整个目录最稳。恢复时把目录放回去,容器启动即可。

备份文件泄露也不是末日——里面的密码是用你的主密码加密的。但主密码泄露就是末日。

常见的坑

忘了关注册:公网上被人注册,你的实例成了别人的密码库。

只开了 HTTP:客户端连不上,或者数据明文传输。

主密码丢了:没人能帮你找回,这是设计使然。

没备份 db 就升级:版本升级有时会改表结构,回退困难。

反向代理没传对头信息:客户端提示「服务器地址不安全」。

值不值得自建

  • 在意隐私、有 NAS、愿意维护:值得;
  • 不熟悉运维、没有 HTTPS 条件:用官方云服务更稳妥;
  • 团队用:自建要额外考虑审计和权限。

小结

自建密码库的核心矛盾是:你把控制权拿回来了,也把责任拿回来了。

能保证 HTTPS、强主密码和定期备份,再考虑自建。

👁 - 次浏览

留言

← 返回首页