- Lehká implementace v Rustu, plně kompatibilní s oficiálními klienty Bitwardenu.
- Zjednodušené nasazení pomocí kontejnerů Docker pro úplnou kontrolu soukromí.
- Ideální minimální hardwarové požadavky pro skromné servery nebo Raspberry Pi.
Vaultwarden vám umožňuje hostovat správce hesel kompatibilní s klienty Bitwarden na vašem vlastním serveru. Tímto způsobem si můžete rozhodnout, kde budou informace uloženy, kdo bude mít přístup k službě a jak budou prováděny zálohy.
Je důležité si hned na začátku ujasnit, že Vaultwarden není oficiálním serverem BitwardenJedná se o nezávislou, komunitou řízenou implementaci napsanou v Rustu, která replikuje velkou část API Bitwardenu. Díky tomu ji lze používat s oficiálními mobilními aplikacemi, desktopovými programy a rozšířeními Bitwardenu.
Samostatné hostování služby poskytuje větší kontrolu, ale To automaticky nezaručuje větší bezpečnostOd tohoto okamžiku jste zodpovědní za instalaci aktualizací, zabezpečení přístupu, kontrolu protokolů, údržbu HTTPS a zajištění možnosti obnovení záloh.
Co potřebujete k instalaci Vaultwardenu s Dockerem

Než začnete, budete potřebovat systém kompatibilní s Dockerem, který zůstane zapnutý, i když chcete synchronizovat hesla. Může se jednat o server s Linuxem, NAS, mini PC nebo Raspberry Pi s architekturou podporovanou obrazem.
Budete také potřebovat:
- Docker Engine nainstalováno a funkční.
- Aktuální doplněk pro Docker Compose.
- Složka, kam lze data trvale uložit.
- Přístup k terminálu s oprávněními pro správu Dockeru.
- Bezpečná metoda přístupu, pokud budete službu používat z jiných zařízení.
Neexistuje univerzální požadavek na paměť nebo úložiště pro všechny instalace. Spotřeba závisí na počtu uživatelů, přílohách, velikosti úložiště a dalších službách spuštěných na stejném počítači. Pro domácí použití se obvykle jedná o nenáročnou aplikaci, ale měli byste si rezervovat dostatek místa pro… data a jejich zálohy.
Zkontrolujte instalaci pomocí:
docker --version
docker compose version
Pokud oba příkazy zobrazují verzi, můžete pokračovat.
Jak nainstalovat Vaultwarden pomocí Docker Compose
Vytvořte si vyhrazenou složku a zadejte do ní:
mkdir vaultwarden
cd vaultwarden
Uvnitř složky vytvořte soubor s názvem compose.yml s touto počáteční konfigurací:
services:
vaultwarden:
image: vaultwarden/server:latest
container_name: vaultwarden
restart: unless-stopped
environment:
SIGNUPS_ALLOWED: "true"
volumes:
- ./vw-data:/data
ports:
- "127.0.0.1:8080:80"
Shromáždění ./vw-data:/data Je to nezbytné. Složka /data Obsahuje databázi, přílohy, konfiguraci a klíče používané serverem. Pokud kontejner odstraníte bez zachování této složky, ztratíte uložené informace.
Adresa 127.0.0.1 Tato počáteční instalace reaguje pouze na samotném serveru. Je to vhodná konfigurace pro testování Vaultwardenu bez nutnosti zpřístupnění portu síti.
Spusťte kontejner:
docker compose up -d
Zkontrolujte jeho stav:
docker compose ps
docker compose logs --tail=100 vaultwarden
Ze stejného zařízení můžete otevřít:
http://localhost:8080
Přístup přes localhost Toto se používá k dokončení počátečního nastavení. Pro připojení z jiného počítače, mobilní aplikace nebo rozšíření budete muset nastavit zabezpečenou adresu pomocí HTTPS.
Jak si vytvořit první účet a ukončit registraci
Otevřete webové rozhraní, vytvořte si svůj první účet a ověřte, že se můžete přihlásit. Použijte dlouhé, jedinečné a snadno zapamatovatelné hlavní heslo, protože chrání přístup do celého skladu.
Po vytvoření potřebných účtů upravte compose.yml a změny:
SIGNUPS_ALLOWED: "true"
podle:
SIGNUPS_ALLOWED: "false"
Změnu aplikujte opětovným vytvořením kontejneru:
docker compose up -d
Vaultwarden ve výchozím nastavení umožňuje anonymním uživatelům vytvářet si účty. Zbytečné ponechání registrace otevřené usnadňuje třetím stranám zabírat místo nebo používat váš server bez povolení.
Pokud později povolíte administrační panel, budete moci odesílat pozvánky i s vypnutou veřejnou registrací.
Proč Vaultwarden potřebuje HTTPS
Internetový obchod používá rozhraní Web Crypto API prohlížeče. Tyto kryptografické funkce jsou obvykle dostupné pouze v zabezpečené kontexty, jako je HTTPS nebo localhost.
Z tohoto důvodu otevření http://192.168.1.50:8080 Z jiného počítače se mohou chyby zobrazovat, i když je kontejner spuštěný. Publikování portu v síti nenahrazuje konfiguraci HTTPS.
Existují tři běžné způsoby, jak používat Vaultwardena:
- Pouze server: přístup přes
localhost, užitečné pro testování. - V privátní síti nebo VPN: omezený přístup, ale se zachováním platného HTTPS certifikátu.
- Z internetu: doména, reverzní proxy, platný certifikát a správně nakonfigurovaný firewall.
Abyste mohli Vaultwarden používat mimo domov, nemusíte jej otevírat veřejně. VPN může omezit přístup k vašim autorizovaným zařízením, ale adresa používaná klienty musí mít stále certifikát, který uznávají.
Jak nakonfigurovat HTTPS s Caddy
Caddy je jednou z nejjednodušších možností, protože dokáže automaticky vyžádat a obnovovat certifikáty prostřednictvím ACME. Pro použití veřejného certifikátu musí být doména přeložena na váš server a potřebné porty musí být přístupné.
Tento soubor může být použit společnou konfigurací Vaultwarden a Caddy. compose.yml:
services:
vaultwarden:
image: vaultwarden/server:latest
container_name: vaultwarden
restart: unless-stopped
environment:
DOMAIN: "https://vault.example.com"
SIGNUPS_ALLOWED: "false"
volumes:
- ./vw-data:/data
caddy:
image: caddy:2
container_name: vaultwarden-caddy
restart: unless-stopped
depends_on:
- vaultwarden
ports:
- "80:80"
- "443:443"
- "443:443/udp"
volumes:
- ./Caddyfile:/etc/caddy/Caddyfile:ro
- ./caddy-data:/data
- ./caddy-config:/config
Nahrazuje vault.example.com pro vaši skutečnou doménu. Poté vytvořte soubor s názvem Caddyfile:
vault.example.com {
reverse_proxy vaultwarden:80 {
header_up X-Real-IP {remote_host}
}
}
Aktivace služeb:
docker compose up -d
Caddy bude odesílat požadavky do kontejneru přes interní síť vytvořenou nástrojem Compose. Aktuální konfigurace zvládá také oznámení WebSocketu prostřednictvím stejné destinace, takže není třeba publikovat další port Vaultwarden.
Proměnná DOMAIN musí obsahovat přesnou externí URL adresu, včetně https://Nesprávná adresa může způsobit problémy s přílohami, odkazy, ověřováním nebo klienty.
Jak se připojit k oficiálním aplikacím Bitwarden
Na přihlašovací obrazovce rozšíření, v mobilní aplikaci nebo desktopové aplikaci otevřete selektor serveru a vyberte možnost Vlastní hostování.
Zadejte celou adresu:
https://vault.example.com
Před přihlášením uložte nastavení. Aby se změny správně synchronizovaly, musí být každý klient připojen ke stejnému serveru.
Pokud používáte certifikát vydaný soukromou autoritou, je nutné tuto autoritu správně nainstalovat a důvěřovat jí na všech zařízeních. Abyste se vyhnuli problémům s kompatibilitou, je vhodnější použít platný veřejný certifikát nebo soukromé řešení, jehož řetězec důvěryhodnosti můžete řádně kontrolovat.
Jakmile je klient připojen, můžete Importovat hesla z Chromu do Vaultwardenu a zkontrolujte, zda se zobrazují na všech vašich zařízeních.
Jak chránit administrační panel
Vaultwarden nabízí volitelný panel v /adminOdtud si můžete prohlédnout uživatele, organizace, diagnostiku a určité možnosti serveru.
Pokud panel nepotřebujete, nejbezpečnější je nechte to vypnutéChcete-li to povolit, musíte nakonfigurovat ADMIN_TOKENMísto ukládání hesla v prostém textu generuje hash Argon2id:
docker run --rm -it vaultwarden/server /vaultwarden hash
Příkaz dvakrát vyzve k zadání hesla a vrátí řetězec začínající na $argon2id$.
Pohodlný způsob, jak se vyhnout problémům se znaky dolaru, je uložit jej do souboru .env nachází se vedle compose.yml:
VAULTWARDEN_ADMIN_TOKEN='$argon2id$v=19$m=...'
Pak přidejte do služby:
environment:
ADMIN_TOKEN: "${VAULTWARDEN_ADMIN_TOKEN}"
Pokud napíšete hash přímo dovnitř compose.yml, musíte zdvojnásobit každý znak dolaru jako $$ aby se zabránilo tomu, aby se Docker Compose pokusil interpretovat jej jako proměnnou.
Zkontrolujte zpracovanou konfiguraci pomocí:
docker compose config
K panelu by měl být přístup pouze přes HTTPS. Pokud je to možné, omezte jeho cestu na lokální síť, VPN nebo konkrétní IP adresy.
Vezměte prosím na vědomí, že po uložení možností z /adminSprávce trezoru vytváří config.jsonJeho hodnoty mají přednost před ekvivalentními proměnnými prostředí. Tato přednost vysvětluje mnoho případů, kdy úprava příkazu Compose zdánlivě nevede k žádné změně.
Základní opatření k ochraně Vaultwardena
Zabezpečení nekončí povolením HTTPS. Minimálně použijte tato opatření:
- Zakažte otevřený registr pomocí
SIGNUPS_ALLOWED=false. - Používejte jedinečné a silné hlavní heslo.
- Aktivní dvoufázové ověřování pro všechny účty.
- Uložte si kód pro obnovení ověření na jiné bezpečné místo.
- Pravidelně aktualizujte obraz a hostitelský systém.
- Nepřipojujte nepotřebné složky ani Docker socket uvnitř kontejneru.
- Omezte pomocí firewallu porty, které jsou skutečně nezbytné.
- Nezveřejňujte databázi ani složku veřejně.
vw-data.
Fail2ban může blokovat adresy, které hromadí neúspěšné pokusy o přihlášení, ale musí být pečlivě nakonfigurován, pokud je přítomna reverzní proxy. Caddy nebo Nginx musí přenášet skutečnou IP adresu, jinak by Fail2ban mohl blokovat vlastní adresu proxy.
Můžete také zakázat zobrazování nápověd k heslu. Tyto nápovědy mohou usnadnit útoky typu „hádání“, pokud je server veřejně přístupný.
Chcete-li se o těchto postupech dozvědět více, můžete se podívat na to, jak bezpečně používejte správce hesel.
Jak nastavit e-mailová oznámení
Konfigurace SMTP vám umožňuje odesílat pozvánky, ověření a oznámení. Budete muset zadat server, odesílatele, port, metodu zabezpečení a přihlašovací údaje poskytnuté vaší e-mailovou službou.
Nezaměňujte SMTP e-maily se zálohou trezoru. Ani byste se na ně neměli spoléhat jako na jediný způsob obnovení účtu. Pokud zapomenete hlavní heslo a nemáte nastavenou jinou metodu obnovení, můžete ztratit přístup ke svým šifrovaným datům.
Po uložení nastavení odešlete testovací zprávu a pokud nedorazí, zkontrolujte protokoly. Zkontrolujte také složky s nevyžádanou poštou a omezení poskytovatele SMTP.
Jak vytvořit úplnou zálohu hry Vaultwarden
Databáze SQLite ukládá uživatele, položky, zařízení a organizace, ale Neobsahuje všechny souboryPřílohy a některé podání jsou uloženy v samostatných adresářích.
Úplná kopie by měla obsahovat:
db.sqlite3nebo konzistentní kopii databáze.- Složka
attachments. - Složka
sends, pokud si chcete tyto soubory ponechat. - Soubor
config.json, pokud používáte panel. - Soubory
rsa_key*. - Soubory Compose, Caddy a jejich proměnné.
Pro jednoduché a konzistentní zálohování můžete dočasně zastavit Vaultwarden a archivovat složku:
docker compose stop vaultwarden
tar -czf vaultwarden-backup-$(date +%F).tar.gz vw-data compose.yml Caddyfile .env
docker compose start vaultwarden
Soubor může obsahovat administrátorský token a přihlašovací údaje SMTP. Před kopírováním jej zašifrujte do jiného počítače nebo vzdáleného úložiště.
Pokud nechcete službu zastavit, Vaultwarden obsahuje příkaz, který používá mechanismus kopírování SQLite:
docker exec vaultwarden /vaultwarden backup
Tento příkaz chrání databázi, ale i tak byste měli zálohovat přílohy, konfigurační soubory a klíče. Automatizujte zálohy, udržujte alespoň jednu zálohu mimo server a pravidelně testujte obnovení.
Jak aktualizovat Vaultwarden pomocí Dockeru
Před aktualizací si vytvořte ověřenou kopii. Poté spusťte:
docker compose pull
docker compose up -d
Zkontrolujte stav a nejnovější zprávy:
docker compose ps
docker compose logs --tail=100 vaultwarden
Docker stáhne obraz a znovu vytvoří kontejner, přičemž zachová vw-dataNepoužívejte příkazy pro globální čištění, aniž byste nejprve zkontrolovali, které kontejnery, obrazy a sítě odstraní.
V instalacích, kde je stabilita kritická, můžete opravit konkrétní verzi obrazu namísto neustálého používání výchozí verze. latestTakto si můžete prohlédnout poznámky k verzi a rozhodnout se, kdy jednotlivé aktualizace použít.
Časté chyby při instalaci Vaultwardenu pomocí Dockeru
Rozhraní funguje na localhostu, ale ne z jiného počítače.
Port je omezen na 127.0.0.1 Nebo prohlížeč odmítá kryptografické funkce při přístupu přes HTTP. Před použitím služby z jiných zařízení nakonfigurujte adresu HTTPS.
Oficiální klient se nemůže připojit k serveru
Vyberte prostředí Vlastní hostování a zadejte přesnou adresu pomocí https://Zkontrolujte certifikát, DNS, proxy a proměnnou DOMAIN.
Kontejner se spustí, ale data zmizí po jeho opětovném vytvoření.
Ovládání hlasitosti není správně nainstalováno. Zkontrolujte prosím, zda ./vw-data:/data se v nastavení zobrazí a že spouštíte aplikaci Compose z očekávané složky.
Nemohu si vytvořit další účet
Si SIGNUPS_ALLOWED je v falseChování je správné. Odešlete pozvánku z panelu nebo dočasně povolte registraci pouze během vytváření účtu.
Hash ADMIN_TOKEN nefunguje.
Zkontrolujte interpolaci znamének $Použijte soubor .env s jednoduchými uvozovkami nebo dvojitými symboly, pokud vkládáte řetězec přímo do Compose.
Proměnné prostředí se zdají být ignorovány
Zkontrolujte, zda existuje vw-data/config.jsonMožnosti uložené z panelu mohou přepsat proměnné definované v compose.yml.
Certifikáty fungují v prohlížeči, ale ne na mobilním zařízení.
Zařízení nemusí důvěřovat celému řetězci certifikátů. Použijte uznávanou autoritu nebo správně nainstalujte svou soukromou autoritu a její certifikáty.
Přílohy selhávají
Zkontrolujte to DOMAIN shodují se s externí adresou a ujistěte se, že proxy umožňuje potřebnou velikost požadavku. Zkontrolujte také dostupný prostor a oprávnění vw-data.
Vaultwarden nemůže zapisovat dovnitř vw-data
Složka hostitele má nekompatibilní oprávnění. Zkontrolujte vlastníka a oprávnění na základě chyby zobrazené v protokolech. Nepoužívejte. chmod 777 jako trvalé řešení.
Fail2ban blokuje nesprávnou adresu
Proxy server nevysílá skutečnou IP adresu nebo Fail2ban čte nesprávné pole. Nakonfigurujte ho správně. X-Real-IP nebo záhlaví odpovídající vašemu proxy serveru.
Obnovená kopie neobsahuje přílohy.
Zálohován byl pouze SQLite. Obnovte prosím také složky. attachments y sends, kromě konfigurace a klíčů RSA.
Vaultwarden vám umožňuje používat organizace a sbírky k sdílet rodinná hesla pomocí kompatibilních klientů. Před přidáním dalších uživatelů ověřte, zda HTTPS, dvoufázové ověřování a zálohy fungují správně.
Výsledkem může být rychlý, soukromý a přizpůsobivý správce hesel, ale jeho zabezpečení závisí na údržbě. Kontrola nad serverem je výhodná pouze tehdy, je-li doprovázena aktualizacemi, omezeným přístupem a osvědčenou strategií obnovy.
Jsem technologický nadšenec, který ze svých „geekovských“ zájmů udělal profesi. Strávil jsem více než 10 let svého života používáním nejmodernějších technologií a vrtáním se všemi druhy programů z čisté zvědavosti. Nyní se specializuji na počítačovou techniku a videohry. Je to proto, že již více než 5 let píšu pro různé webové stránky o technologiích a videohrách a tvořím články, které se vám snaží poskytnout informace, které potřebujete, v jazyce, který je srozumitelný všem.
Pokud máte nějaké dotazy, mé znalosti sahají od všeho, co se týká operačního systému Windows a také Androidu pro mobilní telefony. A můj závazek je vůči vám, jsem vždy ochoten strávit pár minut a pomoci vám vyřešit jakékoli otázky, které můžete mít v tomto internetovém světě.


