Language: ro
Vaultwarden: instalează-ți propriul manager de parole pe un VPS
Vaultwarden îți permite să păstrezi parolele pe propriul server și să le sincronizezi între computer, telefon și browser. Funcționează cu aplicațiile și extensiile oficiale Bitwarden, în care specifici adresa propriului server.
Mai jos vedem de ce fel de VPS are nevoie Vaultwarden, cum îl rulezi pe Ubuntu cu Docker Compose, cum dezactivezi înregistrarea deschisă, activezi HTTPS și configurezi backupurile.
Vaultwarden în cinci pași
Planul minim de pornire:
- Creează un VPS cu Ubuntu și direcționează un subdomeniu către el, de exemplu
vault.example.com. - Instalează Docker și Docker Compose.
- Rulează Vaultwarden împreună cu Caddy pentru HTTPS automat.
- Creează primul cont și dezactivează înregistrarea deschisă.
- Activează autentificarea în doi pași, actualizările și backupurile.
Pentru un seif personal sau o familie mică, baza de date SQLite inclusă este suficientă. Un server PostgreSQL separat nu este de obicei necesar.
Ce este Vaultwarden
Vaultwarden este o implementare neoficială a API-ului Bitwarden, scrisă în Rust și concepută pentru implementări self-hosted. Este compatibilă cu clienții oficiali Bitwarden: interfața web, aplicațiile mobile și desktop, extensiile de browser și CLI-ul.
Datele seifului sunt criptate pe dispozitivul utilizatorului înainte de a fi trimise către server. VPS-ul sincronizează baza de date criptată, dar nu cunoaște parola principală și nu o poate recupera dacă este pierdută.
Vaultwarden nu este un produs oficial Bitwarden. Proprietarul este personal responsabil pentru actualizări, disponibilitate, HTTPS, backupuri și securitatea VPS-ului.
Vaultwarden și Bitwarden: care este diferența
| Parametru | Bitwarden Cloud | Vaultwarden |
|---|---|---|
| Server | Infrastructura Bitwarden | VPS-ul sau serverul tău de acasă |
| Aplicații | Clienții Bitwarden | Aceiași clienți în modul Self-hosted |
| Întreținere | Gestionată de furnizor | Gestionată de proprietar |
| Control asupra backupurilor | Limitat de serviciu | Complet |
| Configurare | Înregistrarea unui cont | Configurarea domeniului, Docker și VPS |
Vaultwarden este potrivit pentru cei care vor control asupra serverului și sunt pregătiți să actualizeze Linux și să verifice backupurile. Un serviciu cloud este mai practic dacă nu vrei să te ocupi de administrare. Self-hostingul nu face automat sistemul sigur — transferă responsabilitatea către proprietar.
Cerințele serverului Vaultwarden
Pentru uz personal, o configurație rezonabilă de pornire este:
- 1 vCPU;
- 1–2 GB RAM;
- SSD sau NVMe de 10–20 GB;
- Ubuntu 24.04 LTS;
- o adresă IP publică și un domeniu;
- porturile 80 și 443 deschise.
Aceasta este o rezervă practică pentru Ubuntu, Docker, Caddy și actualizări, nu un minim strict al proiectului. Pentru zeci de utilizatori, multe atașamente sau mai multe containere, este mai bine să alegi cel puțin 2 GB RAM.
Cum instalezi Vaultwarden pe un VPS
Exemplul folosește Ubuntu 24.04 și subdomeniul vault.example.com. Înlocuiește-l cu propria adresă în toate fișierele.
1. Configurează DNS și pregătește Ubuntu
Creează o înregistrare DNS A care indică spre adresa IPv4 a VPS-ului. Apoi conectează-te prin SSH:
ssh root@SERVER_IP
apt update && apt upgrade -y
ufw allow OpenSSH
ufw allow 80/tcp
ufw allow 443/tcp
ufw enableNu închide sesiunea SSH curentă până când nu ai verificat că o conexiune nouă funcționează.
2. Instalează Docker și Docker Compose
Adaugă depozitul oficial Docker:
apt install -y ca-certificates curl
install -m 0755 -d /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/ubuntu/gpg \
-o /etc/apt/keyrings/docker.asc
chmod a+r /etc/apt/keyrings/docker.asc
tee /etc/apt/sources.list.d/docker.sources > /dev/null <<EOF
Types: deb
URIs: https://download.docker.com/linux/ubuntu
Suites: $(. /etc/os-release && echo "${UBUNTU_CODENAME:-$VERSION_CODENAME}")
Components: stable
Architectures: $(dpkg --print-architecture)
Signed-By: /etc/apt/keyrings/docker.asc
EOF
apt update
apt install -y docker-ce docker-ce-cli containerd.io \
docker-buildx-plugin docker-compose-plugin
docker compose version3. Creează configurația
mkdir -p /opt/vaultwarden
cd /opt/vaultwardenCreează compose.yaml:
services:
vaultwarden:
image: vaultwarden/server:latest
container_name: vaultwarden
restart: unless-stopped
environment:
DOMAIN: "https://vault.example.com"
SIGNUPS_ALLOWED: "true"
volumes:
- ./vw-data:/data
caddy:
image: caddy:2-alpine
container_name: vaultwarden-caddy
restart: unless-stopped
depends_on:
- vaultwarden
ports:
- "80:80"
- "443:443"
volumes:
- ./Caddyfile:/etc/caddy/Caddyfile:ro
- ./caddy-data:/data
- ./caddy-config:/configCreează Caddyfile:
vault.example.com {
reverse_proxy vaultwarden:80
}Doar Caddy este expus extern. Containerul Vaultwarden este accesibil în rețeaua Docker, iar datele sunt stocate în /opt/vaultwarden/vw-data. Un port separat pentru WebSocket nu este necesar în configurația actuală.
4. Pornește Vaultwarden
docker compose up -d
docker compose ps
docker compose logs --tail=100 caddyDeschide https://vault.example.com. Caddy va obține automat un certificat TLS dacă DNS indică deja spre VPS și porturile 80 și 443 sunt accesibile. Dacă site-ul nu se deschide, verifică DNS-ul, firewall-ul și dacă un alt server web folosește aceste porturi.
5. Creează un cont și dezactivează înregistrarea
Înregistrează primul cont. Folosește o parolă principală lungă și unică și păstrează o copie de urgență în afara Vaultwarden: administratorul serverului nu poate reseta sau recupera parola principală.
După înregistrare, modifică următoarea valoare în compose.yaml:
SIGNUPS_ALLOWED: "false"Aplică setarea:
docker compose up -dAlte persoane nu vor mai putea crea conturi. Pentru a adăuga un utilizator nou, poți activa temporar înregistrarea sau poți configura invitații.
Cum conectezi aplicația Bitwarden
Nu trebuie să instalezi un client Vaultwarden separat. În ecranul de autentificare al aplicației sau extensiei Bitwarden, selectează Self-hosted și introdu:
https://vault.example.comFolosește această adresă pe computer, telefon și în browser. Pentru migrare, importă un export din managerul de parole anterior. Șterge imediat după transfer un fișier CSV sau JSON necriptat și nu îl trimite prin e-mail sau prin linkuri publice.
Configurarea securizată a Vaultwarden
După pornire, parcurge câțiva pași:
- activează TOTP sau WebAuthn și păstrează separat codurile de recuperare;
- menține
SIGNUPS_ALLOWEDdezactivat; - folosește chei SSH și actualizează regulat Ubuntu;
- nu expune portul intern al containerului Vaultwarden;
- nu rula containere îndoielnice pe același VPS;
- verifică dacă backupurile pot fi restaurate.
Panoul /admin este de obicei inutil pentru un seif personal. Dacă îl activezi, folosește un token lung sub forma unui hash Argon2 și, pe cât posibil, restricționează accesul după adresa IP sau prin VPN. Stocarea unui ADMIN_TOKEN în text simplu nu este recomandată.
Creează un backup înainte de actualizare, apoi rulează:
cd /opt/vaultwarden
docker compose pull
docker compose up -dServerul trebuie actualizat regulat: clienții Bitwarden sunt lansați independent, așa că o versiune Vaultwarden foarte veche își poate pierde compatibilitatea cu aceștia.
Backupul Vaultwarden
Baza de date SQLite principală se află în vw-data/db.sqlite3, iar atașamentele sunt stocate ca fișiere separate. Nu copia o bază de date care rulează cu o comandă obișnuită cp: o operație de scriere din acel moment poate face copia inconsistentă.
Creează un instantaneu sigur cu comanda inclusă:
docker exec vaultwarden /vaultwarden backupÎn directorul de date va apărea un fișier separat db_.sqlite3. Salvează împreună cu el directoarele attachments, sends, fișierul config.json dacă a fost creat și fișierele rsa_key.
Un backup pe același VPS nu protejează împotriva ștergerii serverului sau defectării discului. Trimite automat copii pe alt dispozitiv sau într-un spațiu de stocare obiect separat, de preferat cu criptare suplimentară. Efectuează periodic un test de restaurare.
Ce VPS să alegi pentru Vaultwarden
Un VPS Linux de bază cu 2 GB RAM este suficient pentru un seif personal sau de familie. Oferă spațiu suplimentar pentru Ubuntu, Docker, Caddy, actualizări și backupuri automate.
Poți rula Vaultwarden pe un VPS de nivel introductiv de la tropic.host și poți crește ulterior resursele dacă adaugi alte servicii self-hosted pe server. Pentru un manager de parole, o rețea stabilă, o adresă publică permanentă și un disc fiabil contează mai mult decât nuclee CPU suplimentare.
Un server de acasă este de asemenea potrivit, dar va trebui să asiguri accesul extern, HTTPS, alimentarea stabilă și recuperarea după defecțiuni. Un VPS este de obicei mai simplu când seiful trebuie să funcționeze din orice rețea.
Concluzie
Vaultwarden este un manager de parole self-hosted convenabil pentru cei care vor să folosească clienții Bitwarden, păstrând partea de server pe propria infrastructură. Pentru început sunt suficiente un VPS mic, un domeniu, Docker Compose și Caddy.
Responsabilitatea principală începe după instalare: dezactivează înregistrarea, activează 2FA, actualizează containerele și păstrează backupuri verificate în afara serverului.
FAQ
Se poate instala Vaultwarden fără domeniu?
Tehnic, poți folosi o adresă locală, dar seiful web necesită un context HTTPS securizat. Pentru acces de pe dispozitive diferite, folosirea unui domeniu și a unui certificat TLS este mai simplă.
De câtă memorie RAM are nevoie Vaultwarden?
Pentru unul sau mai mulți utilizatori, 1 GB RAM este de obicei suficient. Un VPS cu 2 GB oferă o rezervă mai confortabilă pentru sistem, Docker, Caddy și actualizări.
Vaultwarden funcționează cu aplicația mobilă Bitwarden?
Da. În ecranul de autentificare selectează un server self-hosted și introdu adresa HTTPS completă a instanței Vaultwarden.
Ce se întâmplă dacă VPS-ul nu este disponibil temporar?
Datele sincronizate anterior rămân de obicei în cache-ul local criptat al clientului. Totuși, sincronizarea, autentificarea pe un dispozitiv nou și primirea modificărilor nu vor funcționa până când serverul nu este restaurat.
Poate fi recuperată parola principală uitată prin /admin?
Nu. Administratorul poate gestiona serverul și conturile, dar nu deține cheia de decriptare a seifului utilizatorului. Parola principală și codurile de recuperare trebuie păstrate separat.
