切換選單
切換偏好設定選單
切換個人選單
尚未登入
若您做出任何編輯,會公開您的 IP 位址。

數據主權:在搬瓦工 VPS 上部署 Vaultwarden (Bitwarden) 密碼管理器

出自md5.pw
這是此頁面最近一次修訂;沒有已批准修訂。

數據主權:在搬瓦工 VPS 上部署 Vaultwarden (Bitwarden) 密碼管理器

在數據洩露事件頻發的今天,將密碼託管在第三方伺服器(如 LastPass)始終存在隱患。Vaultwarden 是大名鼎鼎的開源密碼管理器 Bitwarden 的輕量化服務端(基於 Rust 編寫),它完美兼容 Bitwarden 的所有官方客戶端(iOS/Android/瀏覽器插件),但資源占用極低,非常適合在搬瓦工(BandwagonHost)VPS 上運行。

本文將指導你使用 Docker 搭建一套屬於自己的、端到端加密的密碼管理系統。

為什麼選擇在搬瓦工自建?

  • 數據掌控:你的密碼資料庫加密存儲在你自己的 VPS 磁碟上,不再受制於人。
  • 極致粘性:搬瓦工提供的高 SLA 保證和自動快照(Snapshot)功能,為密碼庫的持久化存儲提供了雙重保險。
  • 完全免費:解鎖 Bitwarden 官方的高級會員功能(如 TOTP 二步驗證、附件存儲等)。

準備工作

  • 一台搬瓦工 VPS(任何套餐均可,內存 512MB 以上即可)。
  • 一個域名(解析到 VPS 的 IP)。
  • 已安裝 Docker 和 Docker Compose。

第一步:部署環境配置

為了簡化 HTTPS 證書的申請過程,我們將使用 Caddy 作為 Web 伺服器(它會自動申請並續期 SSL 證書),配合 Vaultwarden 運行。

1. 創建工作目錄

mkdir -p /opt/vaultwarden
cd /opt/vaultwarden

2. 創建 docker-compose.yml

nano docker-compose.yml

寫入以下內容(請修改域名和 ADMIN_TOKEN):

version: '3'

services:
  vaultwarden:
    image: vaultwarden/server:latest
    container_name: vaultwarden
    restart: always
    environment:
      # 开启管理后台,请生成一个复杂的随机字符串作为 Token
      # 可以在终端使用 `openssl rand -base64 48` 生成
      - ADMIN_TOKEN=请替换为你的随机长字符串
      # 允许注册 (建议搭建完成后改为 false 以关闭注册)
      - SIGNUPS_ALLOWED=true
    volumes:
      - ./vw-data:/data

  caddy:
    image: caddy:2
    container_name: caddy
    restart: always
    ports:
      - "80:80"
      - "443:443"
    volumes:
      - ./Caddyfile:/etc/caddy/Caddyfile
      - ./caddy-data:/data
      - ./caddy-config:/config
    depends_on:
      - vaultwarden

3. 配置 Caddy 自動 HTTPS

創建 Caddy 配置文件:

nano Caddyfile

寫入以下內容(將 `your-domain.com` 替換為你的真實域名):

your-domain.com {
    # 反向代理到 vaultwarden 容器的 80 端口
    reverse_proxy vaultwarden:80
}

第二步:啟動服務

在 `/opt/vaultwarden` 目錄下執行:

docker compose up -d

稍等片刻,Caddy 會自動向 Let's Encrypt 申請 SSL 證書。打開瀏覽器訪問你的域名 `https://your-domain.com`,如果看到蓝色的 Bitwarden 登錄界面,說明部署成功!

第三步:初始設置與安全加固

1. 註冊帳號

點擊「創建帳號」,註冊你的主帳號。

2. 關閉新用戶註冊(重要!)

為了防止陌生人惡意註冊占用你的資源,建議註冊完自己帳號後,立即關閉註冊功能。

修改 `docker-compose.yml`:

      - SIGNUPS_ALLOWED=false

然後重啟容器生效:

docker compose up -d

第四步:數據備份(核心)

密碼庫是核心資產,備份重於泰山。得益於搬瓦工的 KiwiVM 面板,我們可以輕鬆保護數據。

方案 A:KiwiVM 自動快照 (推薦)
進入搬瓦工 KiwiVM 後台 -> Snapshots -> 將 Automatic snapshots 設置為 "Sticky"(永久保留最新的 2 個快照)。這樣即使你誤刪了文件,也能一鍵回滾。
方案 B:手動導出
登錄你的 Vaultwarden 網頁版後台,定期在「工具」 -> 「導出密碼庫」中下載 JSON/CSV 備份。

客戶端連接方法

  • 下載 Bitwarden 官方手機 App 或瀏覽器插件。
  • 點擊登錄界面的 小齒輪圖標(設置)。
  • 自託管環境 (Self-hosted environment) -> 伺服器 URL 中填入你的域名(例如 `https://your-domain.com`)。
  • 保存後即可正常登錄使用。

常見問題 (FAQ)

Q
為什麼必須用 HTTPS?
A: Bitwarden 的加密算法依賴於 Web Crypto API,現代瀏覽器強制要求該 API 必須在 HTTPS 環境下才能運行。如果不用 HTTPS,你將無法註冊或登錄。
Q
內存占用大嗎?
A: 極小。Vaultwarden 基於 Rust 編寫,空閒時內存占用通常僅需 20MB-50MB,即便是搬瓦工最入門的套餐也能流暢運行。

Created by AlexLynn for md5.pw Community.