- Lahka implementacija v Rustu, popolnoma združljiva z uradnimi Bitwardenovimi odjemalci.
- Poenostavljena uvedba z uporabo Dockerjevih vsebnikov za popoln nadzor zasebnosti.
- Idealne minimalne strojne zahteve za skromne strežnike ali Raspberry Pi.
Vaultwarden vam omogoča gostovanje upravitelja gesel, ki je združljiv z odjemalci Bitwarden, na vašem strežniku. Na ta način lahko določite, kje so shranjeni podatki, kdo lahko dostopa do storitve in kako se izvajajo varnostne kopije.
Pomembno je že na začetku razjasniti, da Vaultwarden ni uradni strežnik BitwardenGre za neodvisno implementacijo, ki jo vodi skupnost, napisano v Rustu in ki posnema velik del Bitwardenovega API-ja. Zaradi tega jo je mogoče uporabljati z uradnimi mobilnimi aplikacijami, namiznimi programi in razširitvami Bitwardena.
Samostojno gostovanje storitve zagotavlja večji nadzor, vendar To ne zagotavlja samodejno večje varnostiOd tega trenutka naprej ste odgovorni za nameščanje posodobitev, zavarovanje dostopa, pregledovanje dnevnikov, vzdrževanje HTTPS in zagotavljanje možnosti obnovitve varnostnih kopij.
Kaj potrebujete za namestitev Vaultwardena z Dockerjem

Preden začnete, boste potrebovali sistem, združljiv z Dockerjem, ki ostane vklopljen, ko želite sinhronizirati gesla. To je lahko strežnik Linux, NAS, mini računalnik ali Raspberry Pi z arhitekturo, ki jo podpira slika.
Potrebovali boste tudi:
- Dockerjev mehanizem nameščen in delujoč.
- Trenutni dodatek za Docker Compose.
- Mapa, v kateri se lahko podatki trajno shranijo.
- Dostop do terminala z dovoljenji za upravljanje Dockerja.
- Varna metoda dostopa, če boste storitev uporabljali iz drugih naprav.
Za vse namestitve ni univerzalne zahteve glede pomnilnika ali shrambe. Poraba je odvisna od števila uporabnikov, prilog, velikosti shrambe in drugih storitev, ki se izvajajo na istem računalniku. Za domačo uporabo je običajno lahka aplikacija, vendar si morate rezervirati dovolj prostora za podatki in njihove varnostne kopije.
Preverite namestitev z uporabo:
docker --version
docker compose version
Če oba ukaza prikazujeta različico, lahko nadaljujete.
Kako namestiti Vaultwarden z Docker Compose
Ustvarite namensko mapo in vanjo vnesite:
mkdir vaultwarden
cd vaultwarden
Znotraj mape ustvarite datoteko z imenom compose.yml s to začetno konfiguracijo:
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"
Skupščina ./vw-data:/data To je bistveno. Mapa /data Vsebuje bazo podatkov, priloge, konfiguracijo in ključe, ki jih uporablja strežnik. Če izbrišete vsebnik, ne da bi ohranili to mapo, boste izgubili shranjene podatke.
Naslov 127.0.0.1 Ta začetna namestitev se odziva samo na samem strežniku. To je primerna konfiguracija za testiranje Vaultwardena, ne da bi vrata še izpostavili omrežju.
Zaženite posodo:
docker compose up -d
Preverite njegovo stanje:
docker compose ps
docker compose logs --tail=100 vaultwarden
Z iste naprave lahko odprete:
http://localhost:8080
Dostop prek localhost To se uporablja za dokončanje začetne nastavitve. Za povezavo iz drugega računalnika, mobilne aplikacije ali razširitve boste morali nastaviti varen naslov s protokolom HTTPS.
Kako ustvariti svoj prvi račun in zaključiti registracijo
Odprite spletni vmesnik, ustvarite svoj prvi račun in preverite, ali se lahko prijavite. Uporabite dolgo, edinstveno in enostavno zapomnljivo glavno geslo, saj varuje dostop do celotnega skladišča.
Ko ustvarite potrebne račune, uredite compose.yml in spremembe:
SIGNUPS_ALLOWED: "true"
od:
SIGNUPS_ALLOWED: "false"
Spremembo uporabite tako, da ponovno ustvarite vsebnik:
docker compose up -d
Vaultwarden anonimnim uporabnikom privzeto omogoča ustvarjanje računov. Če registracijo pustite odprto po nepotrebnem, tretjim osebam olajšate zasedbo prostora ali uporabo vašega strežnika brez dovoljenja.
Če kasneje omogočite skrbniško ploščo, boste lahko pošiljali povabila, tudi če je javna registracija onemogočena.
Zakaj Vaultwarden potrebuje HTTPS
Spletna trgovina uporablja spletni kriptografski API brskalnika. Te kriptografske funkcije so običajno na voljo samo v varni konteksti, kot sta HTTPS ali localhost.
Zaradi tega, odprtje http://192.168.1.50:8080 Iz drugega računalnika se lahko prikažejo napake, tudi če se vsebnik izvaja. Objava vrat v omrežju ne nadomesti konfiguracije HTTPS.
Obstajajo trije pogosti načini uporabe Vaultwardena:
- Samo strežnik: dostop prek
localhost, uporabno za testiranje. - V zasebnem omrežju ali VPN-ju: omejen dostop, vendar ohranja veljavno potrdilo HTTPS.
- Z interneta: domena, obratni proxy, veljavno potrdilo in pravilno konfiguriran požarni zid.
Za uporabo Vaultwardena zunaj doma vam ni treba javno odpreti. VPN lahko omeji dostop do vaših pooblaščenih naprav, vendar mora naslov, ki ga uporabljajo odjemalci, še vedno imeti potrdilo, ki ga prepoznajo.
Kako konfigurirati HTTPS s Caddyjem
Caddy je ena najpreprostejših možnosti, saj lahko samodejno zahteva in obnavlja potrdila prek ACME. Za uporabo javnega potrdila se mora domena razrešiti na vaš strežnik in potrebna vrata morajo biti dostopna.
To datoteko lahko uporablja skupna konfiguracija Vaultwarden in 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
Zamenja vault.example.com za vašo dejansko domeno. Nato ustvarite datoteko z imenom Caddyfile:
vault.example.com {
reverse_proxy vaultwarden:80 {
header_up X-Real-IP {remote_host}
}
}
Aktivirajte storitve:
docker compose up -d
Caddy bo pošiljal zahteve v vsebnik prek notranjega omrežja, ki ga je ustvaril Compose. Trenutna konfiguracija lahko obravnava tudi obvestila WebSocket prek istega cilja, zato ni treba objaviti še enega vrata Vaultwarden.
Spremenljivka DOMAIN mora vsebovati natančen zunanji URL, vključno z https://Napačen naslov lahko povzroči težave s prilogami, povezavami, preverjanjem pristnosti ali odjemalci.
Kako povezati uradne aplikacije Bitwarden
Na prijavnem zaslonu razširitve, mobilni aplikaciji ali namiznem programu odprite izbirnik strežnika in izberite možnost Samostojno gostovanje.
Vnesite celoten naslov:
https://vault.example.com
Pred prijavo shranite nastavitve. Za pravilno sinhronizacijo sprememb mora biti vsak odjemalec povezan z istim strežnikom.
Če uporabljate potrdilo, ki ga je izdal zasebni overitelj, ga morate pravilno namestiti in mu zaupati v vseh napravah. Da bi se izognili težavam z združljivostjo, je priporočljivo uporabiti veljavno javno potrdilo ali zasebno rešitev, katere verigo zaupanja lahko ustrezno nadzorujete.
Ko je odjemalec povezan, lahko Uvoz gesel za Chrome v Vaultwarden in preverite, ali se prikazujejo na vseh vaših napravah.
Kako zaščititi skrbniško ploščo
Vaultwarden ponuja izbirno ploščo v /adminOd tam lahko pregledate uporabnike, organizacije, diagnostiko in nekatere možnosti strežnika.
Če plošče ne potrebujete, je najvarneje, da pusti ga onemogočenegaČe ga želite omogočiti, morate konfigurirati ADMIN_TOKENNamesto shranjevanja gesla v navadnem besedilu ustvari zgoščeno vrednost Argon2id:
docker run --rm -it vaultwarden/server /vaultwarden hash
Ukaz bo dvakrat zahteval geslo in vrnil niz, ki se začne z $argon2id$.
Priročen način, da se izognete težavam z znaki dolarja, je shranjevanje v datoteko .env nahaja se poleg compose.yml:
VAULTWARDEN_ADMIN_TOKEN='$argon2id$v=19$m=...'
Nato dodajte storitvi:
environment:
ADMIN_TOKEN: "${VAULTWARDEN_ADMIN_TOKEN}"
Če zapišete zgoščeno vrednost neposredno v compose.yml, morate podvojiti vsak znak dolarja kot $$ da preprečimo, da bi Docker Compose poskušal to interpretirati kot spremenljivko.
Preverite obdelano konfiguracijo z uporabo:
docker compose config
Dostop do nadzorne plošče je dovoljen samo prek HTTPS. Če je mogoče, omejite njeno pot na lokalno omrežje, VPN ali določene IP-naslove.
Upoštevajte, da po shranjevanju možnosti iz /adminVaultwarden ustvarja config.jsonNjegove vrednosti imajo prednost pred enakovrednimi okoljskimi spremenljivkami. Ta prednost pojasnjuje številne primere, ko urejanje ukaza Compose ne povzroči nobenih sprememb.
Bistveni ukrepi za zaščito Vaultwardena
Varnost se ne konča z omogočanjem HTTPS. Uporabite vsaj te ukrepe:
- Onemogočite odprt register z uporabo
SIGNUPS_ALLOWED=false. - Uporabite edinstveno in močno glavno geslo.
- Aktivno dvostopenjsko preverjanje pristnosti za vse račune.
- Kodo za obnovitev pristnosti shranite na drugo varno mesto.
- Redno posodabljajte sliko in gostiteljski sistem.
- Ne priklapljajte nepotrebnih map ali vtičnice Docker znotraj vsebnika.
- Z uporabo požarnega zidu omejite vrata, ki so resnično potrebna.
- Ne javno razkrivajte baze podatkov ali mape
vw-data.
Fail2ban lahko blokira naslove, ki kopičijo neuspešne poskuse prijave, vendar ga je treba skrbno konfigurirati, ko je prisoten obratni proxy. Caddy ali Nginx morata prenesti pravi IP-naslov; sicer lahko Fail2ban blokira lasten naslov proxyja.
Prikaz namigov za gesla lahko tudi onemogočite. Ti namigi lahko olajšajo napade ugibanja, ko je strežnik javno dostopen.
Če želite izvedeti več o teh praksah, si lahko ogledate, kako varno uporabljajte upravitelje gesel.
Kako nastaviti e-poštna obvestila
Konfiguracija SMTP vam omogoča pošiljanje povabil, preverjanj in obvestil. Določiti boste morali strežnik, pošiljatelja, vrata, varnostno metodo in poverilnice, ki jih zagotavlja vaša e-poštna storitev.
Ne zamenjujte SMTP-e-poštnih sporočil z varnostno kopijo trezorja. Prav tako se nanje ne smete zanašati kot edino sredstvo za obnovitev računa. Če pozabite glavno geslo in nimate nastavljene druge metode obnovitve, lahko izgubite dostop do šifriranih podatkov.
Ko shranite nastavitve, pošljite testno sporočilo in preverite dnevnike, če ne prispe. Preverite tudi mape z neželeno pošto in omejitve ponudnika SMTP.
Kako narediti popolno varnostno kopijo Vaultwardena
Baza podatkov SQLite shranjuje uporabnike, elemente, naprave in organizacije, vendar Ne vsebuje vseh datotekPriloge in nekatere oddaje so shranjene v ločenih imenikih.
Popolna kopija mora vsebovati:
db.sqlite3ali dosledno kopijo baze podatkov.- Mapa
attachments. - Mapa
sends, če želite obdržati te datoteke. - Datoteka
config.json, če uporabljate ploščo. - Datoteke
rsa_key*. - Datoteke Compose, Caddy in njihove spremenljivke.
Za preprosto in dosledno varnostno kopiranje lahko začasno ustavite Vaultwarden in arhivirate mapo:
docker compose stop vaultwarden
tar -czf vaultwarden-backup-$(date +%F).tar.gz vw-data compose.yml Caddyfile .env
docker compose start vaultwarden
Datoteka lahko vsebuje skrbniški žeton in poverilnice SMTP. Pred kopiranjem ga šifrirajte na drug računalnik ali oddaljeno shrambo.
Če storitve ne želite ustaviti, Vaultwarden vključuje ukaz, ki uporablja mehanizem kopiranja SQLite:
docker exec vaultwarden /vaultwarden backup
Ta ukaz zaščiti bazo podatkov, vendar morate vseeno varnostno kopirati priloge, konfiguracijske datoteke in ključe. Avtomatizirajte varnostne kopije, imejte vsaj eno datoteko izven strežnika in občasno preizkusite obnovitev.
Kako posodobiti Vaultwarden z Dockerjem
Pred posodabljanjem ustvarite preverjeno kopijo. Nato zaženite:
docker compose pull
docker compose up -d
Preverite stanje in najnovejša sporočila:
docker compose ps
docker compose logs --tail=100 vaultwarden
Docker bo prenesel sliko in ponovno ustvaril vsebnik, pri čemer bo ohranil vw-dataNe uporabljajte ukazov za globalno čiščenje, ne da bi prej preverili, katere vsebnike, slike in omrežja bodo odstranili.
V namestitvah, kjer je stabilnost ključnega pomena, lahko popravite določeno različico slike namesto, da vedno uporabljate privzeto. latestNa ta način lahko pregledate opombe ob izdaji in se odločite, kdaj boste uporabili posamezno posodobitev.
Pogoste napake pri nameščanju Vaultwardena z Dockerjem
Vmesnik deluje na localhostu, ne pa tudi na drugem računalniku.
Pristanišče je omejeno na 127.0.0.1 Ali pa brskalnik zavrača kriptografske funkcije pri dostopu prek HTTP. Pred uporabo storitve iz drugih naprav konfigurirajte naslov HTTPS.
Uradni odjemalec se ne more povezati s strežnikom
Izberite okolje Samostojno gostovanje in vnesite točen naslov z https://Preverite potrdilo, DNS, proxy in spremenljivko DOMAIN.
Vsebnik se zažene, vendar podatki izginejo, ko je ponovno ustvarjen.
Regulator glasnosti ni pravilno nameščen. Preverite, ali ./vw-data:/data se prikaže v nastavitvah in da izvajate Compose iz pričakovane mape.
Ne morem ustvariti drugega računa
Si SIGNUPS_ALLOWED je v falseVedenje je pravilno. Pošljite povabilo iz nadzorne plošče ali začasno omogočite registracijo samo med ustvarjanjem računa.
Zgoščena vrednost ADMIN_TOKEN ne deluje.
Preverite interpolacijo znakov $Uporabite datoteko .env z enojnimi narekovaji ali dvojnimi simboli, če niz vstavite neposredno v Compose.
Zdi se, da so okoljske spremenljivke prezrte
Preverite, ali obstaja vw-data/config.jsonMožnosti, shranjene iz plošče, lahko preglasijo spremenljivke, definirane v compose.yml.
Potrdila delujejo v brskalniku, ne pa na mobilni napravi.
Naprava morda ne zaupa celotni verigi potrdil. Uporabite priznano overiteljsko službo ali pravilno namestite svojo zasebno overiteljsko službo in njene potrdila.
Priloge ne uspejo
Preverite to DOMAIN ujema se z zunanjim naslovom in se prepričajte, da posredniški strežnik dovoljuje potrebno velikost zahteve. Preverite tudi razpoložljivi prostor in dovoljenja vw-data.
Vaultwarden ne more pisati znotraj podatkov vw
Mapa gostitelja ima nezdružljiva dovoljenja. Preverite lastnika in dovoljenja glede na napako, prikazano v dnevnikih. Ne uporabljajte. chmod 777 kot trajno rešitev.
Fail2ban blokira napačen naslov
Proxy ne prenaša pravega IP-naslova ali pa Fail2ban bere napačno polje. Pravilno ga konfigurirajte. X-Real-IP ali glavo, ki ustreza vašemu proxyju.
Obnovljena kopija ne vsebuje prilog
Varnostno kopiran je bil samo SQLite. Prosimo, obnovite tudi mape. attachments y sends, poleg konfiguracije in ključev RSA.
Vaultwarden vam omogoča uporabo organizacij in zbirk za delite družinska gesla z uporabo združljivih odjemalcev. Preden dodate več uporabnikov, preverite, ali HTTPS, dvostopenjsko preverjanje pristnosti in varnostne kopije delujejo pravilno.
Rezultat je lahko hiter, zaseben in prilagodljiv upravitelj gesel, vendar je njegova varnost odvisna od vzdrževanja. Nadzor nad strežnikom je koristen le, če ga spremljajo posodobitve, omejen dostop in preizkušena strategija obnovitve.
Sem tehnološki navdušenec, ki je svoja "geek" zanimanja spremenil v poklic. Več kot 10 let svojega življenja sem porabil za uporabo vrhunske tehnologije in premleval najrazličnejše programe iz čiste radovednosti. Zdaj sem se specializiral za računalniško tehnologijo in video igre. To je zato, ker že več kot 5 let pišem za različna spletna mesta o tehnologiji in video igrah ter ustvarjam članke, ki vam želijo dati informacije, ki jih potrebujete, v jeziku, ki je razumljiv vsem.
Če imate kakršna koli vprašanja, moje znanje sega od vsega v zvezi z operacijskim sistemom Windows kot tudi Androidom za mobilne telefone. In moja zaveza je vam, vedno sem pripravljen porabiti nekaj minut in vam pomagati razrešiti kakršna koli vprašanja, ki jih morda imate v tem internetnem svetu.


