Kapitola 7 · 7.2
Vaultwarden: Váš vlastní trezor na hesla
Vaultwarden je odlehčený server pro aplikace a rozšíření prohlížeče od Bitwardenu. Vaše hesla jsou pak uložena na Vašem vlastním VPS. Vyžaduje to ovšem péči: pokud se Váš server porouchá nebo Vám chybí záloha, o svá hesla přijdete.
Každý návod navazuje na pracovní adresář /srv/diensten s Caddy z článku Váš pracovní adresář s compose.yaml, .env a Caddy. Přidáte službu do compose.yaml, blok do Caddyfile a záznam A a AAAA pro daný název (viz Záznam A a AAAA v sekci Moje domény).
1. DNS
Vytvořte záznam A a AAAA pro kluis.example.com.
2. compose.yaml
vaultwarden:
image: vaultwarden/server:1.37.5
restart: unless-stopped
environment:
DOMAIN: "https://kluis.example.com"
SIGNUPS_ALLOWED: "true"
ADMIN_TOKEN: ${VW_ADMIN_TOKEN}
volumes:
- ./vw-data:/data
Na stránce s vydáními Vaultwardenu zjistěte, která verze je nejnovější, a uveďte ji v tagu.
3. Caddyfile a spuštění
kluis.example.com {
reverse_proxy vaultwarden:80
}
anna@web1:/srv/diensten$ sudo docker compose up -d
anna@web1:/srv/diensten$ sudo docker compose exec -w /etc/caddy caddy caddy reload
4. Token pro správu v .env
Stránku pro správu /admin zabezpečíte tokenem. Nezadávejte do něj čitelné heslo, ale hash. Tento hash vytvoříte přímo pomocí Vaultwardenu, když kontejner běží:
anna@web1:/srv/diensten$ sudo docker compose exec vaultwarden /vaultwarden hash
Password:
Confirm Password:
ADMIN_TOKEN='$argon2id$v=19$m=65540,t=3,p=4$...'
Do .env vložte řádek VW_ADMIN_TOKEN='$argon2id$...' s jednoduchými uvozovkami. Restartujte kontejner pomocí sudo docker compose up -d. Na /admin se přihlásíte heslem, které jste zadali, nikoli hashem.
5. Uzavření registrace
- Otevřete
https://kluis.example.coma vytvořte svůj vlastní účet a také účty své rodiny nebo kolegů. - Do
compose.yamlnastavteSIGNUPS_ALLOWED: "false". - Spusťte
sudo docker compose up -d.
Nové uživatele pak pozvete přes stránku pro správu. Pokud chcete, aby se pozvánky posílaly e-mailem, nastavte SMTP přes e-mailovou schránku na portu 587 (viz Reverzní DNS a odesílání e-mailů z Vašeho VPS).
Záloha
Vše je uloženo v adresáři /srv/diensten/vw-data: databáze, přílohy a klíče. Zahrňte jej do své zálohy restic (viz Správné zálohování databází a svazků Dockeru) a vyzkoušejte obnovení. Wiki Vaultwardenu popisuje, jak databázi bezpečně zkopírovat za běhu.
Tip: Vaše aplikace a rozšíření prohlížeče uchovávají kopii Vašeho trezoru. Pokud Váš server na chvíli vypadne, můžete svá hesla stále číst, ale ne měnit.
