Cum se instalează Vaultwarden cu Docker: Un ghid complet pentru auto-găzduirea parolelor

Ultima actualizare: 31/08/2026

  • Implementare ușoară în Rust, complet compatibilă cu clienții oficiali Bitwarden.
  • Implementare simplificată folosind containere Docker pentru control complet al confidențialității.
  • Cerințe hardware minime ideale pentru servere modeste sau Raspberry Pi.
Cum se instalează Vaultwarden cu Docker Compose

Vaultwarden vă permite să găzduiți un manager de parole compatibil cu clienții Bitwarden pe propriul server. În acest fel, puteți decide unde sunt stocate informațiile, cine poate accesa serviciul și cum sunt efectuate copiile de rezervă.

Este important să clarificăm de la început că Vaultwarden nu este serverul oficial BitwardenEste o implementare independentă, condusă de comunitate, scrisă în Rust, care reproduce o mare parte din API-ul Bitwarden. Din acest motiv, poate fi utilizată cu aplicațiile mobile oficiale, programele desktop și extensiile Bitwarden.

Găzduirea automată a serviciului oferă mai mult control, dar Nu garantează automat o securitate sporităDin acel moment, ești responsabil pentru instalarea actualizărilor, securizarea accesului, revizuirea jurnalelor, menținerea HTTPS și asigurarea faptului că backup-urile pot fi restaurate.

Articol conex:
Cele mai bune manageri de parole

Ce este necesar pentru a instala Vaultwarden cu Docker

Ce este necesar pentru a instala Vaultwarden cu Docker

Înainte de a începe, veți avea nevoie de un sistem compatibil cu Docker care să rămână pornit atunci când doriți să sincronizați parolele. Acesta poate fi un server Linux, un NAS, un mini PC sau un Raspberry Pi cu o arhitectură acceptată de imagine.

De asemenea, veți avea nevoie de:

  • Motor Docker instalat și funcțional.
  • Suplimentul actual al Docker Compose.
  • Un folder în care datele pot fi stocate permanent.
  • Acces la un terminal cu permisiuni de gestionare a Docker.
  • O metodă de acces securizată dacă veți utiliza serviciul de pe alte dispozitive.

Nu există cerințe universale de memorie sau stocare pentru toate instalările. Consumul depinde de numărul de utilizatori, atașamente, dimensiunea spațiului de stocare și alte servicii care rulează pe același computer. Pentru uz casnic, este de obicei o aplicație ușoară, dar ar trebui să rezervați suficient spațiu pentru datele și copiile de rezervă ale acestora.

Verificați instalarea folosind:

docker --version
docker compose version

Dacă ambele comenzi arată o versiune, puteți continua.

Cum se instalează Vaultwarden cu Docker Compose

Cum se instalează Vaultwarden cu Docker

Creați un folder dedicat și introduceți-l:

mkdir vaultwarden
cd vaultwarden

În interiorul folderului, creați un fișier numit compose.yml cu această configurație inițială:

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"

Adunarea ./vw-data:/data Este esențial. Dosarul /data Acesta conține baza de date, atașamentele, configurația și cheile utilizate de server. Dacă ștergeți containerul fără a păstra acest folder, veți pierde informațiile stocate.

Adresa 127.0.0.1 Această instalare inițială răspunde doar pe serverul propriu-zis. Este o configurație potrivită pentru testarea Vaultwarden fără a expune încă portul la rețea.

Porniți containerul:

docker compose up -d

Verificați starea acestuia:

docker compose ps
docker compose logs --tail=100 vaultwarden

De pe același dispozitiv puteți deschide:

http://localhost:8080

Acces prin localhost Aceasta se folosește pentru a finaliza configurarea inițială. Pentru a vă conecta de pe un alt computer, o aplicație mobilă sau o extensie, va trebui să configurați o adresă securizată folosind HTTPS.

Cum să vă creați primul cont și să închideți înregistrarea

Deschideți interfața web, creați-vă primul cont și verificați dacă vă puteți conecta. Folosiți un parolă principală lungă, unică și ușor de reținut, deoarece protejează accesul la întregul depozit.

După crearea conturilor necesare, editați compose.yml și modificări:

SIGNUPS_ALLOWED: "true"

de:

SIGNUPS_ALLOWED: "false"

Aplicați modificarea recreând containerul:

docker compose up -d

Vaultwarden permite utilizatorilor anonimi să creeze conturi în mod implicit. Menținerea înregistrării deschise facilitează, în mod inutil, ocuparea spațiului sau utilizarea serverului de către terți fără permisiune.

Conținut exclusiv - Faceți clic aici  Unde este stocată cheia de recuperare BitLocker și cum o găsești

Dacă ulterior activați panoul de administrare, veți putea trimite invitații chiar și cu înregistrarea publică dezactivată.

De ce are nevoie Vaultwarden de HTTPS

Magazinul web folosește API-ul Web Crypto al browserului. Aceste funcții criptografice sunt de obicei disponibile numai în contexte securizate, cum ar fi HTTPS sau localhost.

Din acest motiv, deschiderea http://192.168.1.50:8080 De pe un alt computer, pot fi afișate erori chiar dacă containerul rulează. Publicarea portului în rețea nu înlocuiește configurația HTTPS.

Există trei moduri comune de a utiliza Vaultwarden:

  • Numai server: acces prin localhost, util pentru testare.
  • Într-o rețea privată sau VPN: acces restricționat, dar menținând un certificat HTTPS valid.
  • De pe internet: domeniu, proxy invers, certificat valid și firewall configurat corect.

Nu trebuie să deschizi Vaultwarden public pentru a-l utiliza în afara casei. Un VPN poate restricționa accesul la dispozitivele tale autorizate, dar adresa utilizată de clienți trebuie să aibă în continuare un certificat pe care îl recunosc.

Cum se configurează HTTPS cu Caddy

Cum se configurează HTTPS cu Caddy

Caddy este una dintre cele mai simple opțiuni, deoarece poate solicita și reînnoi automat certificate prin ACME. Pentru a utiliza un certificat public, domeniul trebuie să fie rezolvat pe serverul dvs., iar porturile necesare trebuie să fie accesibile.

O configurație comună Vaultwarden și Caddy poate folosi acest fișier. 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

Înlocuiește vault.example.com pentru domeniul dvs. real. Apoi creați un fișier numit Caddyfile:

vault.example.com {
    reverse_proxy vaultwarden:80 {
        header_up X-Real-IP {remote_host}
    }
}

Activează serviciile:

docker compose up -d

Caddy va trimite cereri către container prin rețeaua internă creată de Compose. Configurația curentă poate gestiona și notificări WebSocket prin aceeași destinație, deci nu este nevoie să se publice un alt port Vaultwarden.

Variabila DOMAIN trebuie să conțină adresa URL externă exactă, inclusiv https://O adresă incorectă poate cauza probleme cu atașamentele, linkurile, autentificarea sau clienții.

Cum se conectează aplicațiile oficiale Bitwarden

Pe ecranul de conectare al extensiei, în aplicația mobilă sau în programul desktop, deschideți selectorul de server și alegeți opțiunea Găzduit în regim self-service.

Introduceți adresa completă:

https://vault.example.com

Salvați setările înainte de a vă conecta. Fiecare client trebuie să fie conectat la același server pentru ca modificările să fie sincronizate corect.

Dacă utilizați un certificat emis de o autoritate privată, va trebui să instalați corect și să aveți încredere în acea autoritate pe toate dispozitivele. Pentru a evita problemele de compatibilitate, este de preferat să utilizați un certificat public valid sau o soluție privată al cărei lanț de încredere îl puteți controla în mod corespunzător.

Odată ce clientul este conectat, puteți Importați parolele Chrome în Vaultwarden și verificați dacă acestea apar pe toate dispozitivele dvs.

Cum să protejezi panoul de administrare

Vaultwarden oferă un panou opțional în /adminDe acolo puteți examina utilizatorii, organizațiile, diagnosticele și anumite opțiuni ale serverului.

Dacă nu aveți nevoie de panou, cel mai sigur lucru de făcut este lasă-l dezactivatPentru a-l activa, trebuie să configurați ADMIN_TOKENÎn loc să stocheze o parolă în text simplu, generează un hash Argon2id:

docker run --rm -it vaultwarden/server /vaultwarden hash

Comanda va solicita parola de două ori și va returna un șir de caractere care începe cu $argon2id$.

O modalitate convenabilă de a evita problemele cu semnele dolar este să îl salvați într-un fișier .env situat lângă compose.yml:

VAULTWARDEN_ADMIN_TOKEN='$argon2id$v=19$m=...'

Apoi adăugați la serviciu:

environment:
  ADMIN_TOKEN: "${VAULTWARDEN_ADMIN_TOKEN}"

Dacă scrieți hash-ul direct înăuntru compose.yml, trebuie să dublezi fiecare semn de dolar ca $$ pentru a împiedica Docker Compose să încerce să o interpreteze ca o variabilă.

Conținut exclusiv - Faceți clic aici  Care sunt amenințările la adresa securității cibernetice?

Verificați configurația procesată folosind:

docker compose config

Panoul ar trebui accesat doar prin HTTPS. Dacă este posibil, restricționați calea sa către rețeaua locală, o rețea VPN sau adrese IP specifice.

Vă rugăm să rețineți că după salvarea opțiunilor din /adminVaultwarden creează config.jsonValorile sale au prioritate față de variabilele de mediu echivalente. Această prioritate explică multe cazuri în care editarea funcției Compose pare să nu producă nicio modificare.

Măsuri esențiale pentru protejarea Vaultwarden-ului

Securitatea nu se termină cu activarea HTTPS. Cel puțin, aplicați aceste măsuri:

  • Dezactivați registrul deschis folosind SIGNUPS_ALLOWED=false.
  • Folosește o parolă principală unică și puternică.
  • Activ autentificare în doi pași pentru toate conturile.
  • Salvați codul de recuperare a autentificării într-o altă locație securizată.
  • Actualizați periodic imaginea și sistemul gazdă.
  • Nu montați foldere inutile sau socketul Docker în interiorul containerului.
  • Limitați porturile cu adevărat necesare folosind firewall-ul.
  • Nu expuneți public baza de date sau folderul vw-data.

Fail2ban poate bloca adresele care acumulează încercări de conectare eșuate, dar trebuie configurat cu atenție atunci când este prezent un proxy invers. Caddy sau Nginx trebuie să transmită adresa IP reală; altfel, Fail2ban ar putea bloca propria adresă a proxy-ului.

De asemenea, puteți dezactiva afișarea indiciilor pentru parolă. Aceste indicii pot facilita atacurile de ghicire atunci când serverul este accesibil publicului.

Pentru a afla mai multe despre aceste practici, puteți consulta cum utilizați manageri de parole în siguranță.

Cum se configurează notificările prin e-mail

Configurația SMTP vă permite să trimiteți invitații, verificări și notificări. Va trebui să specificați serverul, expeditorul, portul, metoda de securitate și acreditările furnizate de serviciul dvs. de e-mail.

Nu confundați e-mailurile SMTP cu o copie de rezervă a seifului. Nici nu ar trebui să vă bazați pe ele ca unic mijloc de recuperare a contului. Dacă uitați parola principală și nu aveți configurată o altă metodă de recuperare, ați putea pierde accesul la datele criptate.

După salvarea setărilor, trimiteți un mesaj de test și verificați jurnalele dacă acesta nu ajunge. Verificați și folderele de spam și restricțiile furnizorului SMTP.

Cum se face o copie de rezervă completă a Vaultwarden

Baza de date SQLite stochează utilizatori, elemente, dispozitive și organizații, dar Nu conține toate fișiereleAtașamentele și anumite documente trimise sunt stocate în directoare separate.

O copie completă trebuie să includă:

  • db.sqlite3 sau o copie consistentă a bazei de date.
  • Dosarul attachments.
  • Dosarul sends, dacă vrei să păstrezi acele fișiere.
  • Fișierul config.json, dacă folosești panoul.
  • Fișierele rsa_key*.
  • Fișierele Compose, Caddy și variabilele lor.

Pentru o copie de rezervă simplă și consistentă, puteți opri temporar Vaultwarden și arhiva folderul:

docker compose stop vaultwarden
tar -czf vaultwarden-backup-$(date +%F).tar.gz vw-data compose.yml Caddyfile .env
docker compose start vaultwarden

Fișierul poate conține token-ul de administrare și acreditările SMTP. Criptați-l înainte de a-l copia pe un alt computer sau pe un spațiu de stocare la distanță.

Dacă nu doriți să opriți serviciul, Vaultwarden include o comandă care folosește mecanismul de copiere SQLite:

docker exec vaultwarden /vaultwarden backup

Această comandă protejează baza de date, dar ar trebui să faceți totuși copii de rezervă ale atașamentelor, fișierelor de configurare și cheilor. Automatizați copiile de rezervă, păstrați cel puțin una în afara serverului și testați periodic o restaurare.

Conținut exclusiv - Faceți clic aici  Discord îți blochează contul din cauza activităților suspecte: motivele reale și cum să te protejezi

Cum se actualizează Vaultwarden cu Docker

Creați o copie verificată înainte de actualizare. Apoi executați:

docker compose pull
docker compose up -d

Verificați starea și cele mai recente mesaje:

docker compose ps
docker compose logs --tail=100 vaultwarden

Docker va descărca imaginea și va recrea containerul, păstrând vw-dataNu utilizați comenzi de curățare globală fără a verifica mai întâi ce containere, imagini și rețele vor fi eliminate.

În instalările în care stabilitatea este critică, puteți corecta o anumită versiune a imaginii în loc să utilizați întotdeauna versiunea implicită. latestÎn acest fel, puteți revizui notele de lansare și puteți decide când să aplicați fiecare actualizare.

Greșeli frecvente la instalarea Vaultwarden cu Docker

Greșeli frecvente la instalarea Vaultwarden cu Docker

Interfața funcționează pe localhost, dar nu de pe un alt computer.

Portul este limitat la 127.0.0.1 Sau browserul respinge funcțiile criptografice la accesarea prin HTTP. Configurați o adresă HTTPS înainte de a utiliza serviciul de pe alte dispozitive.

Clientul oficial nu se poate conecta la server

Selectați mediul Găzduit în regim self-service și introduceți adresa exactă cu https://Verificați certificatul, DNS-ul, proxy-ul și variabila DOMAIN.

Containerul pornește, dar datele dispar când este recreat.

Controlul volumului nu este instalat corect. Vă rugăm să verificați dacă ./vw-data:/data apare în setări și că rulați Compose din folderul așteptat.

Nu pot crea un alt cont

Si SIGNUPS_ALLOWED este în falseComportamentul este corect. Trimiteți o invitație din panou sau activați temporar înregistrarea doar în timp ce creați contul.

Hash-ul ADMIN_TOKEN nu funcționează

Verificați interpolarea semnelor $Folosește un fișier .env cu ghilimele simple sau cu simboluri duble dacă inserați șirul direct în Compose.

Variabilele de mediu par a fi ignorate

Verificați dacă există vw-data/config.jsonOpțiunile salvate din panou pot suprascrie variabilele definite în compose.yml.

Certificatele funcționează în browser, dar nu pe dispozitivul mobil.

Este posibil ca dispozitivul să nu aibă încredere în întregul lanț de certificate. Folosește o autoritate recunoscută sau instalează corect autoritatea privată și certificatele aferente.

Atașamentele eșuează

Verifică asta DOMAIN potriviți adresa externă și asigurați-vă că proxy-ul permite dimensiunea necesară a cererii. Verificați, de asemenea, spațiul disponibil și permisiunile vw-data.

Vaultwarden nu poate scrie în vw-data

Folderul gazdă are permisiuni incompatibile. Verificați proprietarul și permisiunile pe baza erorii afișate în jurnale. Nu utilizați chmod 777 ca o soluție permanentă.

Fail2ban blochează o adresă incorectă

Proxy-ul nu transmite adresa IP reală sau Fail2ban citește câmpul greșit. Configurați-l corect. X-Real-IP sau antetul corespunzător proxy-ului dumneavoastră.

Copia restaurată nu conține atașamentele.

Doar SQLite a fost copiat de rezervă. Vă rugăm să restaurați și folderele. attachments y sends, pe lângă configurația și cheile RSA.

Vaultwarden vă permite să utilizați organizații și colecții pentru a partajați parolele familiei utilizând clienți compatibili. Înainte de a adăuga mai mulți utilizatori, verificați dacă HTTPS, autentificarea în doi pași și copiile de rezervă funcționează corect.

Rezultatul poate fi un manager de parole rapid, privat și adaptabil, dar securitatea sa depinde de întreținere. Controlul asupra serverului este avantajos doar atunci când este însoțit de actualizări, acces restricționat și o strategie de recuperare dovedită.

Cum să partajezi în siguranță parolele cu familia ta fără a trimite fișiere
Articol conex:
Cum să partajezi în siguranță parolele cu familia ta fără a trimite fișiere