概要
VPSでVaultwardenをセルフホストするには?
VPSでVaultwardenをセルフホストするには、vaultwarden/server イメージをDocker Composeで実行し、ご自身が所有するドメイン用の自動HTTPSのためにCaddyを前に置き、アカウントを作成してからサインアップをオフにします。GloamportのDuskプラン(1 vCPU, 2 GB RAM, 40 GB NVMe, 2 TB traffic)は、12か月契約で月額$5.25です。
Vaultwarden Composeの構成に含まれるものは?
| 項目 | 値 | 注記 |
|---|---|---|
| Vaultwardenイメージ | vaultwarden/server:latest | ./vw-data に保存されるデータは /data にマウントされます |
| リバースプロキシ | caddy:2 | ポート 80、443、443/udp を公開 |
| DOMAIN変数 | https://vault.example.com | リバースプロキシの背後では必須。添付ファイルにはHTTPSが必要です |
| 証明書 | Caddy、ACMEのHTTP-01チャレンジ | ドメインはポート80でVPSに到達する必要があります |
| サインアップ | SIGNUPS_ALLOWED | アカウントを作成するときはtrue、その後はfalse |
| 管理ページ | ADMIN_TOKEN | トークンを設定するまでは無効。Wikiはargon2ハッシュを推奨しています |
| 推奨プラン | Dusk: 1 vCPU, 2 GB RAM, 40 GB NVMe, 2 TB traffic | Gloamportのプラン一覧 |
価格確認日:
自分のパスワードマネージャーをホストするのは良い考えですか?
保守、バックアップ、パッチ適用を引き受けられる方に向いています。Vaultwardenは保管庫を暗号化して保存しますが、サーバーは誰がログインできるかを決め、他の人に複製しない限り唯一のコピーを持ちます。データを失うと、復元してくれるプロバイダーはいません。
判断を左右する事実は3つあります。どのプランにもバックアップは含まれません。失うと困るものは、必ずご自身でコピーを保管してください。保管庫は、それを載せているVPSと同じ程度にしか利用できないため、保管庫のオフラインのエクスポートも保管してください。また、そのために使うドメインはDNSと証明書の透明性ログに公開されるため、ご自身の名前を含まないものを選んでください。これらを受け入れられるなら、小さなVPSひとつで運用するのが普通です。
Docker ComposeとCaddyでVaultwardenをインストールする方法
AレコードがそのVPSを指しているドメインが必要です。コマンドはDebian 13またはUbuntu 24.04で動きます。
Docker EngineとComposeプラグインをインストール
DebianまたはUbuntuのDockerインストールページに従い、最初のコードブロックの docker-ce と docker-compose-plugin のaptインストール行を実行します。docker run hello-world で確認してください。
プロジェクトフォルダとCaddyfileを作成
vaultwarden フォルダを作成し、コードブロックから Caddyfile と docker-compose.yml を書きます。vault.example.com はご自身のドメインに、メールアドレスは証明書用のアドレスに置き換えてください。このアドレスは認証局のためのもので、Gloamportのためのものではありません。
Webポートを開く
証明書を取得するHTTP-01チャレンジのため、ポート80と443がVPSに到達する必要があります。ufwなど別のファイアウォールを使う場合は、SSHに加えて 80/tcp、443/tcp、443/udp を許可してください。
スタックを起動
フォルダで docker compose up -d を実行します。Caddyは初回起動時に証明書を要求します。https://vault.example.com を開き、アカウントを作成してください。
サインアップを閉じる
composeファイルで SIGNUPS_ALLOWED を "false" に設定し、docker compose up -d を再度実行します。その後、新しいアカウントは招待によるか、ご自身が追加する場合だけになります。
dataフォルダをバックアップ
最後のコードブロックにあるVaultwardenのバックアップ手順を定期的に使い、1つのコピーはVPSの外に保管してください。
# After adding Docker's apt repository (docs.docker.com/engine/install/debian/)
sudo apt install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
sudo docker run hello-world
mkdir -p ~/vaultwarden && cd ~/vaultwarden
# write docker-compose.yml and Caddyfile (below), then:
sudo docker compose up -dservices:
vaultwarden:
image: vaultwarden/server:latest
container_name: vaultwarden
restart: always
environment:
DOMAIN: "https://vault.example.com"
SIGNUPS_ALLOWED: "true"
volumes:
- ./vw-data:/data
caddy:
image: caddy:2
container_name: caddy
restart: always
ports:
- 80:80
- 443:443
- 443:443/udp
volumes:
- ./Caddyfile:/etc/caddy/Caddyfile:ro
- ./caddy-config:/config
- ./caddy-data:/data
environment:
DOMAIN: "https://vault.example.com"
EMAIL: "[email protected]"{$DOMAIN} {
tls {$EMAIL}
encode zstd gzip
reverse_proxy vaultwarden:80 {
header_up X-Real-IP {remote_host}
}
}# Optional admin page: hash a long random password, put the result in ADMIN_TOKEN
sudo docker exec -it vaultwarden /vaultwarden hash
# Database backup while the server runs (SQLite online backup)
sqlite3 vw-data/db.sqlite3 ".backup '/root/backups/db-$(date +%Y%m%d-%H%M).sqlite3'"
# Also copy: vw-data/attachments/, vw-data/config.json, vw-data/rsa_key*Vaultwardenサーバーからは何をバックアップすべきですか?
db.sqlite3、attachmentsフォルダ、config.json、rsa_keyファイルをバックアップしてください。Vaultwardenのバックアップページでは、db.sqlite3とattachmentsは必須、config.jsonとrsa_keyファイルは推奨、sendとアイコンキャッシュは任意とされています。ファイルを開いたままコピーするのではなく、SQLite自身の .backup コマンドを使うように書かれています。また、ファイルシステムやVMのスナップショットに頼らないようにとも書かれています。
このページはまた、config.jsonには平文の秘密情報が含まれるため、VPSの外に出す前に暗号化するよう警告しています。バックアップは毎日行い、1つのコピーは別の場所に保管し、予備のマシンで一度復元して動作を確認してください。Vaultwarden 1.32.1以降には、Wikiに記載の組み込みバックアップコマンドもあります。
どのGloamportプランでVaultwardenを動かしますか?
最初に選ぶのはDuskです。1 vCPU, 2 GB RAM, 40 GB NVMe, 2 TB trafficは12か月契約で月額$5.25、1か月契約では$10.50です。Vaultwardenのウィキには目安となる数値がなく、当社もベンチマークを行っていないため、Duskは出発点として扱ってください。同じVPSでチャットサーバーや検索エンジンも動かすなら、Gloam(2 vCPU, 4 GB RAM, 80 GB NVMe, 4 TB traffic、12か月契約で月額$8.25)がMatrixサーバー、Vaultwarden、SearXNGを一緒に向けに挙げられています。
本人確認は、今も後からも行いません。身分証のアップロード、自撮り、住所証明、カード、電話番号のいずれも求めません。Gloamportが2026年11月10日について行った調査によると、挙げられた49件のプロバイダーのうち28件が、登録時に身分証明書類を求めません。すべてのサイズはプランと契約期間のページにあります。
管理ページとサーバーはどう守りますか?
必要がなければ管理ページはオフのままにし、何よりも先にSSHを保護してください。Wikiによると、管理ページは認証トークンを設定して初めて存在し、そのトークンが管理領域のパスワードとして機能します。また、管理ページをオンにする前に、HTTPSが有効になっている必要があります。設定ファイルから簡単に読まれないよう、トークンはargon2ハッシュとして保存することを推奨しています。
ホストでは、新しいVPSでSSHを強化するには?のとおり、鍵のみのSSHとファイアウォールを使ってください。パスワード管理サーバーは主要な標的なので、イメージを再pullして docker compose up -d を実行することで更新を適用してください。同じVPSで2つ目のサービスを動かすなら、VPSでMatrixサーバーを運用するには?をご覧ください。
まとめ
- Vaultwardenは vaultwarden/server から動き、データは ./vw-data にあります。
- CaddyはHTTP-01チャレンジでHTTPSの証明書を取得します。ドメインはポート80に到達できる必要があります。
- DOMAINにhttpsのURLを設定します。Wikiによると、添付ファイルにはHTTPSが必要です。
- アカウントを作成してから、SIGNUPS_ALLOWED を false に設定します。
- 管理ページには ADMIN_TOKEN が必要です。Wikiはargon2ハッシュを推奨しています。
- db.sqlite3 を .backup で、加えて attachments、config.json、rsa_key ファイルをバックアップします。
- Dusk(12か月契約で月額$5.25)は出発点となるプランです。
Vaultwardenのセルフホスト:よくある質問
ドメイン名は必要ですか?
この構成では「はい」です。DOMAIN はhttpsのURLでなければならず、Caddyはその名前の証明書を取得します。Wikiには、パブリックにアクセスできないプライベートなインスタンス向けの、DNSチャレンジによる方法も記載されています。
VaultwardenはBitwardenと同じですか?
いいえ。Vaultwardenは、Bitwardenのクライアントと動作する別の軽量なサーバーです。Bitwardenのアプリを使い、そのアプリでご自身のサーバーのアドレスを指定します。
他の人がアカウントを作れないようにするには?
ご自身のアカウントを作成した後に SIGNUPS_ALLOWED を false に設定し、コンテナを作り直してください。登録を閉じた後も、招待によってユーザーを追加できます。
VPSが壊れたらどうなりますか?
バックアップから復元します。どのプランにもバックアップは含まれません。失うと困るものは、必ずご自身でコピーを保管してください。暗号化したバックアップはVPSの外に保管し、復元を一度テストしてください。
Gloamportはどのイメージを提供していますか?
イメージ:Debian 13、Debian 12、Ubuntu 24.04 LTS、AlmaLinux 10、Rocky Linux 10。DockerはDebian 13とUbuntu 24.04のどちらでも動きます。どちらも掲載されています。
出典 (4)
- Vaultwarden Wiki:Docker Composeの使用 — Vaultwarden project (checked 2026-11-10)
- Vaultwarden Wiki:管理ページの有効化 — Vaultwarden project (checked 2026-11-10)
- Vaultwarden Wiki:保管庫のバックアップ — Vaultwarden project (checked 2026-11-10)
- DebianへのDocker Engineのインストール — Docker Inc. (checked 2026-11-10)