解决 Vaultwarden (Bitwarden) 自托管同步延迟,实现多端秒级自动更新 (基于 1Panel) 的教程

引言

对于许多使用 Vaultwarden (Bitwarden) 进行密码管理的用户来说,同步延迟是一个常见的问题。本文将介绍如何通过配置 WebSocket 实时通讯和移动端官方推送,解决多端同步不及时的问题,实现电脑端和手机端的秒级自动更新。

原理简述

电脑/插件端

电脑端和插件端需要依赖 WebSocket 长连接,这需要反向代理(Nginx)开启 Upgrade 头支持。

手机端 (iOS/Android)

手机端依赖 Bitwarden 官方的 Push 服务,需要去官方申请一个免费的中转 Key,并配置到 Docker 环境变量中。

配置步骤

第一步:开启移动端官方推送

获取授权 Key

访问 Bitwarden 官方网站,输入任意邮箱,获取 INSTALLATION_IDINSTALLATION_KEY。建议选择 bitwarden.com (United States)

配置环境变量 (.env)

在 1Panel 应用详情页 → 点击 “环境” 标签页,在输入框的末尾追加以下内容(填入你刚才获取的 ID 和 Key):

 PUSH_ENABLED=true
 PUSH_INSTALLATION_ID=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
 PUSH_INSTALLATION_KEY=xxxxxxxxxxxxxxxxxxxx

修改容器编排 (docker-compose.yml)

切换到 “容器”-“编排” 标签页,找到 environment 部分,修改为引用刚才定义的变量:

 environment:
   - SIGNUPS_ALLOWED=false
   # --- 引用 .env 中的配置 ---
   - PUSH_ENABLED=${PUSH_ENABLED}
   - PUSH_INSTALLATION_ID=${PUSH_INSTALLATION_ID}
   - PUSH_INSTALLATION_KEY=${PUSH_INSTALLATION_KEY}

重建容器

点击右下角的 “确认” 保存编排,然后点击 “重建” 按钮使配置生效。

第二步:配置 Nginx 反代

找到正确的配置文件

在网站的配置文件中最后有一行 include,它引用了 proxy 目录下的配置。我们必须修改这个配置文件。文件路径:/opt/1panel/www/sites/你的域名/proxy/

添加 WebSocket 支持

打开文件后,在 location ^~ / { ... } 代码块中,找到 proxy_pass 这一行,在它下面添加以下配置:

 location ^~ / {
     proxy_pass http://127.0.0.1:40031;
     # ... 其他原有配置 ...

     # === 核心部分:开启 WebSocket ===
     proxy_http_version 1.1;
     proxy_set_header Upgrade $http_upgrade;

标签: none

评论已关闭