Vaultwarden_rs开源自托管密码


Vaultwarden_rs 是一个用于本地搭建 Bitwarden 服务器的第三方 Docker 项目。兼容 Bitwarden 官方客户端,仅在部署的时候使用 Bitwarden_rs 镜像,桌面端、移动端、浏览器扩展等客户端均使用 Bitwarden 官方的客户端。

Bitwarden_rs 很轻量,对于不希望使用官方的占用大量资源的自托管部署而言,它是理想的选择。

为了区分Bitwarden_rs已更名vaultwarden

Bitwarden_rs

建议docker环境下安装,浏览debian安装docker与docker compose
本文适用于docker

创建存储目录并在目录下新建docker-compose.yml文件
配置文件如下

version: '3'

services:
  vaultwarden:
    image: vaultwarden/server:latest
    container_name: vaultwarden
    restart: always
    ports:
        - 8087:80
        - 3012:3012
    environment:
      - WEBSOCKET_ENABLED=true
      - WEB_VAULT_ENABLED=true
      - SIGNUPS_ALLOWED=false
      - ADMIN_TOKEN=YouRandomTokenHere
      - DISABLE_ADMIN_TOKEN=false
      - SMTP_HOST=HOST
      - SMTP_PORT=PORT
      - SMTP_SSL=true
      - SMTP_EXPLICIT_TLS=true
      - SMTP_USERNAME=USERNAME
      - SMTP_PASSWORD=PASSWORD
    volumes:
      - ./vw-data:/data

docker compose up -d拉取镜像并启动容器

可能会用到的命令

docker ps                  容器运行状态
docker compose pull        更新镜像
docker compose stop        停止容器
docker compose restart     重启容器
docker compose down        停止并删除容器

配置文件释义

ports
端口映射
WEBSOCKET_ENABLED
WebSocket 通知
WEB_VAULT_ENABLED
web面板访问
SIGNUPS_ALLOWED=true
允许注册(首次必开启)
ADMIN_TOKEN
后台管理面板TOKEN(管理密码)访问,运行openssl rand -base64 48随机生成字符串
DISABLE_ADMIN_TOKEN
关闭TOKEN访问管理面板
SMTP
SMTP邮箱设置
volumes
容器内文件挂载宿主机

更多参数配置参考Bitwarden_rs WIKI


没错,到这里Bitwarden_rs已经在运行了
用户界面访问http://YOUR_IP:8087
如错误请放行8087端口
管理面板访问添加/admin
管理密码为ADMIN_TOKEN
数据存储在docker-compose.yml文件平级目录

域名访问

Nginx(反向代理),添加到域名配置文件中

#PROXY-START/
location  ~* \.(gif|png|jpg|css|js|woff|woff2)$
{
    proxy_pass http://127.0.0.1:8087;
    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 REMOTE-HOST $remote_addr;
    expires 12h;
}
location /
{
    proxy_pass http://127.0.0.1:8087;
    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 REMOTE-HOST $remote_addr;
    
    add_header X-Cache $upstream_cache_status;
    
    #Set Nginx Cache
    
        add_header Cache-Control no-cache;
}

  location /notifications/hub {
    proxy_pass http://127.0.0.1:3012;
    proxy_set_header Upgrade $http_upgrade;
    proxy_set_header Connection "upgrade";
  }
  
  location /notifications/hub/negotiate {
    proxy_pass http://127.0.0.1:8087;
  }

#PROXY-END/

域名访问还需为域名配置SSL证书,否则客户端可能会出现奇怪的问题。

SSL证书可参考本文Let’s encrypt 通配证书申请

每更改docker-compose.yml内容都需执行
docker compose up -d
使配置生效

因数据、参数都保存在本地/home/Bitwarden/文件夹里,所以千万不要删除这个文件夹,删除就啥也没有了。

参考文档

Vaultwarden Wiki 中文版
Bitwarden 帮助中心中文版

声明:吃蛋的小子|版权所有,违者必究|如未注明,均为原创|本网站采用BY-NC-SA协议进行授权

转载:转载请注明原文链接 - Vaultwarden_rs开源自托管密码


我,俺床,咱手机。