Bitwardenをセルフホスト版Vautlwarden on Dockerに移行

2022/05/30

Android iPhone Linux Mac OracleCloud Windows

t f B! P L

パスワード管理はBitwardenが今のところ最適だと個人的には考える。

去年にBitwardenに乗り換えた記事を書きました。



現状では何ら不自由がないんだけど、

色々と調べてみたらセルフホストの互換版(Vaultwarden)だと有料機能も自由に使えるそうな。

しかもDockerに対応しているだと!?

それなら乗り換えない手はないな!、ということで

Oracle Cloud上のDockerにVaultwardenを構築しますた。


コンテナ作成

まずはdocker-compose.ymlの準備。

やり方は色々あるんだけど、俺の場合は以下。

別コンテナでnginx-proxyを使ってます。

version: '3'
services:
  vaultwarden:
    image: vaultwarden/server
    container_name: vaultwarden
    environment:
      - TZ=Asia/Tokyo
      - VIRTUAL_HOST=vaultwarden.hogehoge.com
      - VIRTUAL_PORT=80
      - CERT_NAME=default
    volumes:
      - /docker/vaultwarden/vw-data:/data
    ports:
      - 33545:80            # 適当なポート番号
    restart: always

networks:
  default:
    external:
      name: nginx-proxy_default

本来Vaultwardenは80番ポートで受け付けるので、ホストの受付ポートは適当のポート番号を定義。

実際にはnginx-proxyがいい感じにプロキシしてくれるので、他のWebサービスとポート番号が重複しなければ何でもOK。

あとは証明書を適切に設定すればHTTPS化も簡単。

本当に世の中便利になったもんだ。


あとはブラウザからWebアクセスすれば構築完了。

きちんと"Powerd by Vaultwarden"と書かれている。


現行Bitwardenからエクスポート

BitwardenからVaultwardenへは直接データ移行はできないため、

エクスポート・インポートを行う必要がある。

Bitwardenのアプリないし、Web保管庫から

「Tools」→「Export Vault」をクリックし、必要情報等を記入して「Export Vault」をクリック。

エクスポートされた.jsonファイルを保存しておく。


新Vaultwardenにインポート

あとはインポートするだけ。

VaultwardenのWeb保管庫より、「Tools」→「Import Data」から

インポートするファイルを選択して、「Import Data」をクリック。


やったぜ。


アプリでのログイン方法

アプリからのログイン方法を書きます。

以下の例はWindows版だけど、ブラウザ拡張版やスマホアプリ等もやり方は同じ。

まずはアプリのログイン画面で「設定」をクリックする。


セルフホスティング環境のサーバーURLのところに

自分のVaultwardenのURLを記入する。


その後、いつも通りログインすれば完了!!


個人利用用途ならほぼ違和感なく使える

このコンテナの詳しい使い方や設定方法等は以下のWikiをご参照あれ。

https://github.com/dani-garcia/vaultwarden/wiki


Bitwardenを使っている時は嫁さんのアカウントと共有するときに「組織」の機能も使っていたんだけど、2人までしか共有できなかった。

それが、子供らが近い将来PCを使うことになれば、3人以上が共同利用することになるので

Vaultwardenだと都合がいいよねw


更に設定追加

セルフホストにすることで、

Bitwarden公式サーバとは別のサーバでひっそりと使うことになるので、

誰にも気づかれない、という利点がある。

が、誰かにバレるのも時間の問題w

なので、ある程度設定を見直す。

※2段階認証はもちろん実施するとして、コンテナ自体の設定、という意味です。


詳しくは↑で書いたWikiなんだけど、

Dockerのenvironmentに以下を追加する。

SIGNUPS_ALLOWED=false : 新規登録を拒否(管理者からの招待は出来る)

DOMAIN=https://vaultwarden.hogehoge.com : U2F,FIDO2 WebAuthn認証有効化

SMTP_HOST= : SMTP通知機能を利用するための情報(以下同じ)

SMTP_FROM=

SMTP_PORT=587

SMTP_SSL=true

SMTP_USERNAME=

SMTP_PASSWORD=

SHOW_PASSWORD_HINT=false : パスワードヒントを無効化


以上。


最後にこれらの設定をまとめたdocker-compose.ymlを以下に書いて終わろうと思います。


version: '3'
services:
  vaultwarden:
    image: vaultwarden/server
    container_name: vaultwarden
    environment:
      - TZ=Asia/Tokyo
      - VIRTUAL_HOST=vaultwarden.hogehoge.com
      - VIRTUAL_PORT=80
      - CERT_NAME=default
      - SIGNUPS_ALLOWED=false
      - DOMAIN=https://vaultwarden.hogehoge.com
      - SMTP_HOST=smtp.hogehoge.com
      - SMTP_FROM=(省略)
      - SMTP_PORT=587
      - SMTP_SSL=true
      - SMTP_USERNAME=(省略)
      - SMTP_PASSWORD=(省略)
      - SHOW_PASSWORD_HINT=false
    volumes:
      - /docker/vaultwarden/vw-data:/data
    ports:
      - 33545:80
    restart: always

networks:
  default:
    external:
      name: nginx-proxy_default

検索

Blog Archive

Popular Posts

About Me

自分の写真
性別:男
年齢:ついに40over
趣味:Snowboard、パソコン、iPhone、子育て

仕事:ユー子の社内SEとしてサーバ、NW等のインフラ全般をやってます

日々生活していく中で思ったことなどをつらつらと書いていきます。

どうぞよろしく!

ブログランキング

ブログランキング・にほんブログ村へ

QooQ