Hostati Vaultwarden na Managed VPS-u: vaše lozinke na vašem poslužitelju

Hostati Vaultwarden na Managed VPS-u znači čuvati svoje lozinke i lozinke svojeg tima na stroju koji je vaš, a koji naši timovi održavaju ažurnim i nadziru danju i noću. Vaultwarden je slobodan softver pod licencom AGPL-3.0. Ovaj vodič prati njegovu službenu dokumentaciju: instalaciju s Docker Composeom, HTTPS, zatvaranje registracija, administratorski token, ono što štiti trezor, bazu podataka, e-poštu, sigurnosne kopije i ažuriranja.

Simon Vasconcelos Lee Autor: Objavljeno 8. studenoga 2026.Vrijeme čitanja: 15 minuta

Svi vodiči

Najvažnije

  1. Licenca AGPL-3.0 omogućuje slobodno pokretanje Vaultwardena, u tvrtki kao i drugdje; ako ga izmijenite, kod svoje inačice nudite onima koji ga koriste.
  2. Instalirajte ga s Docker Composeom: jedna slika, port objavljen lokalno i mapa s podacima, iza obrnutog proxyja.
  3. HTTPS je neophodan web-trezoru: poslužujte Vaultwarden pod vlastitim nazivom domene i taj naziv upišite u DOMAIN.
  4. Izradite svoj račun, a zatim zatvorite registracije s SIGNUPS_ALLOWED: prema zadanim postavkama svatko tko dosegne instancu može se registrirati. Snažna glavna lozinka i dvofaktorska autentifikacija zatim štite trezor.
  5. Svaki dan sigurnosno kopirajte bazu i privitke, testirajte vraćanje, a ažurirajte s docker compose pull.

Što radi Vaultwarden

Vaultwarden je poslužitelj za upravljanje lozinkama napisan u Rustu, namijenjen hostanju na vlastitom poslužitelju. Njegov wiki namjenjuje ga pojedincima, obiteljima i organizacijama ljudske veličine. Web-trezor isporučuje se u njegovim Docker slikama.

Provodi API kompatibilan sa službenim Bitwarden klijentima, u pregledniku, na računalu i na telefonu. README navodi da projekt nije povezan s Bitwardenom ni s tvrtkom Bitwarden, Inc., te traži da se svaki problem, bez obzira na korišteni klijent, prijavi izravno njemu, a ne službenim kanalima podrške.

Wiki navodi i ono što nedostaje u odnosu na službeni poslužitelj, poput prijave pristupnim ključem, prilagođenih uloga i nekih poslovnih politika. Dodaje da funkcije korisne uglavnom velikim organizacijama nisu prioritet projekta: pročitajte taj popis ako vam te funkcije trebaju.

Što dopušta licenca AGPL-3.0

Vaultwarden je objavljen pod licencom GNU Affero General Public License, inačica 3. Tekst potvrđuje neograničeno dopuštenje za pokretanje neizmijenjenog programa. Stoga možete koristiti sliku koju objavljuje projekt za svoju tvrtku i svoj tim, bez kupnje licence.

Članak 13. dodaje uvjet svojstven licenci AGPL: ako program izmijenite, vaša inačica mora svima koji je koriste na daljinu, preko mreže, omogućiti da besplatno dobiju njezin izvorni kod.

Instalacija s Docker Composeom

README preporučuje slike kontejnera. Na poslužitelju s instaliranim Dockerom izradite mapu i u nju stavite ovaj compose.yaml, preuzet iz README-a i wikija:

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/
    ports:
      - 127.0.0.1:8000:80
Terminal
docker compose up -d

Vaša domena pokazuje na poslužitelj putem A i AAAA zapisa, a posjetitelji stižu na portove 80 i 443. Dok obrnuti proxy nije postavljen, web-trezor ostaje neupotrebljiv: odmah prijeđite na sljedeći odjeljak.

Projekt ne navodi potrebnu memoriju ni procesor; predstavlja se samo kao rješenje za slučajeve kada službena usluga, koja troši mnogo resursa, ne odgovara. Veličina ovisi o broju računa i količini privitaka. Na Managed VPS-u opišite nam svoju upotrebu, a mi vam preporučujemo odgovarajuću veličinu.

HTTPS i WebSocket: obrnuti proxy

Web-trezor oslanja se na API Web Crypto, koji preglednici rezerviraju za sigurne kontekste: README navodi da radi tek kada je HTTPS uključen, a wiki HTTPS smatra „pretty much required”, gotovo obveznim. Projekt preporučuje obrnuti proxy ispred Vaultwardena, a odvraća od TLS-a ugrađenog u njegov okvir Rocket.

Uzmite priznat certifikat, poput onih koje izdaje Let’s Encrypt, što wiki preporučuje: uz samopotpisani certifikat neke platforme odbijaju vezu. Certifikat mora sadržavati cijeli lanac, inače se Android uređaji ne povezuju.

WebSocket obavijesti, uključene prema zadanim postavkama, javljaju pregledniku, aplikaciji za računalo i proširenju da se neki unos promijenio. Prolaze kroz glavni HTTP port, a proxy mora prosljeđivati zaglavlja Upgrade i Connection. Mobilne aplikacije koriste izvorne obavijesti svojeg sustava, koje se konfiguriraju zasebno.

S Caddyjem

Wiki savjetuje da prvo pogledate Caddy ako nemate preferenciju: sam uključuje HTTPS, pribavlja certifikat Let’s Encrypt i podržava WebSocket. Postavka iz wikija Vaultwardenu prosljeđuje i stvarnu adresu posjetitelja, za njegove zapisnike:

Caddyfile
vault.example.com {
  reverse_proxy 127.0.0.1:8000 {
    header_up X-Real-IP {remote_host}
  }
}

S Nginxom i Certbotom

Ovaj blok preuzima primjer za Nginx iz wikija, sveden na port 80 kako bi Certbot postavio HTTPS:

Blok za Nginx
upstream vaultwarden-default {
  zone vaultwarden-default 64k;
  server 127.0.0.1:8000;
  keepalive 2;
}

map $http_upgrade $connection_upgrade {
    default upgrade;
    ''      "";
}

server {
    listen 80;
    listen [::]:80;
    server_name vault.example.com;

    client_max_body_size 525M;

    proxy_http_version 1.1;
    proxy_set_header Upgrade $http_upgrade;
    proxy_set_header Connection $connection_upgrade;

    proxy_set_header Host $host;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header X-Forwarded-Proto $scheme;

    location / {
      proxy_pass http://vaultwarden-default;
    }
}

Certbot zatim postavlja certifikat i brine se za njegovu obnovu:

Terminal
sudo certbot --nginx

Provjera WebSocketa

Otvorite razvojne alate preglednika, karticu mreže, filtar WS, a zatim se ponovno spojite na trezor: odgovor 101 na /notifications/hub potvrđuje vezu. Drugi test iz wikija: otvorite trezor u dva preglednika, preimenujte unos u jednom i promjena se odmah pojavljuje u drugom.

Zatvaranje registracija

Prema zadanim postavkama svatko tko dosegne vašu instancu može na njoj izraditi račun. To je korisno za vaš prvi račun, a wiki preporučuje da potom zatvorite registracije, kako napadač ne bi mogao izraditi svoj.

  1. Otvorite svoju HTTPS adresu i izradite račun, a zatim povežite svoje aplikacije s tom adresom.
  2. Postavite SIGNUPS_ALLOWED na "false" u datoteci compose.yaml.
  3. Ponovno pokrenite s docker compose up -d: varijabla okruženja vezana je uz kontejner, koji se mora ponovno izraditi da bi je uzeo u obzir.
compose.yaml, u odjeljku environment
SIGNUPS_ALLOWED: "false"

Čim spremite konfiguraciju s administracijske stranice, u mapi s podacima nastaje datoteka config.json koja ima prednost pred varijablama okruženja. Dotične postavke tada se mijenjaju s te stranice: izmjena datoteke compose.yaml više nije dovoljna.

Administracijska stranica i njezin token

Stranica /admin služi za konfiguriranje Vaultwardena, pregled i brisanje računa i organizacija, uklanjanje dvofaktorske autentifikacije korisniku, pozivanje i čitanje dijagnostike. Bez ADMIN_TOKEN ostaje isključena: ako vam ne treba, tako je i ostavite.

Wiki ozbiljno preporučuje da prije ove stranice uključite HTTPS. Token služi kao lozinka i može se čuvati u hashiranom obliku, argon2id, umjesto u čistom tekstu u konfiguraciji. Vaultwarden daje naredbu: dvaput traži lozinku, a zatim vraća PHC niz.

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

Taj niz stavite u datoteku .env, uz compose.yaml, među jednostruke navodnike, a zatim ga pozovite iz usluge:

.env
VAULTWARDEN_ADMIN_TOKEN='$argon2id$...'
compose.yaml, u odjeljku environment
ADMIN_TOKEN: ${VAULTWARDEN_ADMIN_TOKEN}

Provjerite rezultat, ponovno pokrenite, a zatim se prijavite na /admin svojom lozinkom, a ne PHC nizom:

Terminal
docker compose config
docker compose up -d

Što štiti trezor

Prva zaštita je glavna lozinka. Podaci trezora šifrirani su osobnim ili organizacijskim ključevima: tko dobije kopiju baze ili provali u sesiju, mora još razbiti tu lozinku da bi ih pročitao. Njezina snaga stoga je najvažnija. Sama administracijska sesija omogućuje brisanje računa ili uklanjanje dvofaktorske autentifikacije, ali ne daje pristup podacima trezora.

ZaštitaŠto donosiGdje se podešava
Glavna lozinkaPodaci ostaju šifrirani, čak i ako kopija baze kružiSvaki je korisnik bira, dugu i jedinstvenu za ovaj trezor
Dvofaktorska autentifikacijaBez nje, podsjeća wiki, pogađanje lozinke grubom silom u teoriji ostaje mogućeU svakom računu; politika organizacije može je zahtijevati
HTTPSŠifrira put između klijenta i poslužiteljaObrnuti proxy
Zatvorene registracijeSprječava nepoznatu osobu da izradi računSIGNUPS_ALLOWED
Podsjetnici za lozinkuPrikazani na stranici, pomogli bi pogoditi lozinku; inačica 1.37.5 prema zadanim postavkama ih drži skrivenimaOstavite SHOW_PASSWORD_HINT na false; PASSWORD_HINTS_ALLOWED ih potpuno uklanja
Ograničenje pokušajaUsporava pokušaje s iste adrese, prijavu i /adminLOGIN_RATELIMIT_SECONDS i ADMIN_RATELIMIT_SECONDS
Fail2banBlokira adrese nakon previše neuspjeha, što wiki smatra osobito važnim za javnu instancuNa poslužitelju, na temelju zapisnika LOG_FILE

Pripremite se za zaborav glavne lozinke prije nego se dogodi: uključite pristup u hitnim slučajevima za svoj račun i, u organizaciji, oporavak računa, koji traži konfiguriranu e-poštu.

Tri dodatne postavke, iz vodiča za učvršćivanje

SQLite, MariaDB ili PostgreSQL

Ista slika podržava sve tri baze. Wiki SQLite opisuje kao najkorišteniju i najtestiraniju te je preporučuje za većinu upotreba, osim ako vam nije izričito potrebna druga.

BazaPostavljanjeSigurnosna kopija
SQLiteNikakvo: jedna datoteka, vw-data/db.sqlite3Naredba /vaultwarden backup ili kopija mape, uz zaustavljenu uslugu
MariaDB ili MySQLVaš poslužitelj baze i DATABASE_URL u obliku mysql://Izvoz baze, uz mapu vw-data
PostgreSQLVaš poslužitelj baze i DATABASE_URL u obliku postgresql://Izvoz baze, uz mapu vw-data
compose.yaml, u odjeljku environment (PostgreSQL)
DATABASE_URL: "postgresql://user_name:user_password@db_host:5432/vaultwarden"

Izradite praznu bazu i njezina korisnika: pri pokretanju Vaultwarden u njoj sam postavlja svoju shemu. Lozinka s posebnim znakovima u ovoj se adresi piše postotnim kodiranjem.

Ovaj izbor napravite prije nego napunite trezor. Wiki opisuje prelazak s SQLitea na PostgreSQL pomoću pgloadera, uz napomenu da projekt taj put ne podržava, da se odvija na vlastitu odgovornost i da počinje sigurnosnom kopijom.

E-pošta: SMTP konfiguracija

Vaultwarden se pokreće bez e-pošte, ali o njoj ovisi nekoliko funkcija: pozivnice, provjera adresa, slanje podsjetnika za lozinku, dvofaktorska autentifikacija e-poštom i oporavak računa.

Na Simafri VPS-u slanje ide preko autentificiranog SMTP releja, na portu 587: adresa računa e-pošte koji već imate ili Simafri Suite. Lozinka se stavlja u datoteku .env, kao i administratorski token:

compose.yaml, u odjeljku environment
SMTP_HOST: "smtp.example.com"
SMTP_FROM: "vault@example.com"
SMTP_PORT: "587"
SMTP_SECURITY: "starttls"
SMTP_USERNAME: "vault@example.com"
SMTP_PASSWORD: ${VAULTWARDEN_SMTP_PASSWORD}

Ako ništa ne odlazi, wiki predlaže da s poslužitelja testirate vezu s relejem. Naredba vraća 0 kada relej odgovori:

Terminal
timeout 5 bash -c 'cat < /dev/null > /dev/tcp/smtp.example.com/587'; echo $?

Sigurnosne kopije

README podsjeća da projekt ne može odgovarati za gubitak podataka i ozbiljno preporučuje redovite sigurnosne kopije. Wiki ih savjetuje automatske, s barem jednom kopijom na drugom mjestu. Evo što mapa s podacima sadrži uz SQLite:

ElementŠto čuvaZa sigurnosno kopiranje
db.sqlite3Gotovo sve podatke: račune, organizacije, trezoreObavezno
attachments/Privitke, pohranjene izvan bazeObavezno
config.jsonKonfiguraciju administracijske stranice, uključujući osjetljive podatke u čistom tekstuPreporučeno, šifrirano
rsa_key*Ključeve koji potpisuju sesije; njihov gubitak odjavljuje korisnikePreporučeno, šifrirano
sends/Datoteke poslane preko Senda, po naravi privremeneNeobavezno
icon_cache/Ikone web-mjesta, po potrebi ponovno preuzeteNeobavezno

Baza, dok usluga radi

Od inačice 1.32.1 Vaultwarden sam zna sigurnosno kopirati svoju SQLite bazu, bez zaustavljanja usluge:

Terminal
docker exec -it vaultwarden /vaultwarden backup

Naredba upisuje datoteku db_GGGGMMDD_HHMMSS.sqlite3 pokraj baze, u vw-data. Slika ne sadrži ni sqlite3 ni cron: wiki savjetuje da zadatak planirate na poslužitelju, barem jednom dnevno. Tada uklonite -it, jer planirani zadatak nema terminal, i povremeno prorijedite te datoteke, koje se nakupljaju.

Cijela mapa, uz zaustavljenu uslugu

Kada se baza ne koristi, dovoljna je jednostavna kopija svih njezinih datoteka. To je metoda sa zaustavljenom uslugom koju wiki daje kao primjer za Docker, a obuhvaća i privitke:

Terminal, u mapi s datotekom compose.yaml
docker compose down
tar -czf vaultwarden-$(date +%F).tar.gz vw-data
docker compose up -d

Wiki smatra koristan sloj šifriranja, osobito kada sigurnosna kopija nosi administratorski token i SMTP pristupne podatke, a za slanje kopija na udaljeno mjesto navodi rclone, restic i rustic. Uz MariaDB ili PostgreSQL mapi vw-data dodajte izvoz baze.

Wiki traži da se ne oslanjate samo na snimke diska, koje se teže vraćaju. Zadržite stoga ove kopije specifične za aplikaciju: postavljene na disk poslužitelja, ulaze i u njegove noćne sigurnosne kopije.

Vraćanje

  1. Zaustavite Vaultwarden.
  2. Svaku datoteku ili mapu u vw-data zamijenite njezinom sigurnosno kopiranom inačicom.
  3. Ako baza potječe iz /vaultwarden backup, nazovite je db.sqlite3 i prvo izbrišite svaku postojeću datoteku db.sqlite3-wal: dnevnik koji ne odgovara može oštetiti bazu. Ako potječe iz izravne kopije, zajedno vratite db.sqlite3 i njezin db.sqlite3-wal.
  4. Ponovno pokrenite, a zatim provjerite možete li otvoriti trezor.

Wiki savjetuje da tu vježbu povremeno ponovite, čuvajući kopiju podataka koji su na mjestu: tako provjeravate da sigurnosna kopija radi.

Ažuriranja

Wiki daje dvije naredbe, iz mape s datotekom compose.yaml. Mapa s podacima ostaje na mjestu:

Terminal
docker compose pull
docker compose up -d

Ta su ažuriranja važnija nego drugdje. Mobilne aplikacije i proširenja preglednika ažuriraju se sama, a wiki upozorava da razlika inačica s poslužiteljem može izazvati iznenadne kvarove. Web-trezor, isporučen u slici, uvijek ostaje usklađen sa svojim poslužiteljem.

Projekt nema kalendar izdanja: pratite njegove bilješke o izdanju i pokrenite sigurnosnu kopiju neposredno prije svakog ažuriranja. Neka sadrže sigurnosne ispravke, poput inačice 1.37.5 od 1. studenoga 2026., čije bilješke preporučuju ažuriranje što prije. Te bilješke upozoravaju i da od inačice 1.37.5 neispravna vrijednost konfiguracije sprječava pokretanje Vaultwardena: prije ažuriranja ponovno pregledajte svoju datoteku s varijablama okruženja. Dijagnostička stranica u /admin pokazuje postoji li novija inačica.

Tko što radi na Managed VPS-u

Hostanje na vlastitom poslužitelju traži da uz aplikaciju održavate i poslužitelj. Na Managed VPS-u naši timovi preuzimaju poslužitelj i proaktivno prate vašu instancu; Vaultwarden ostaje vaš softver, sa svojim postavkama i podacima.

TemaNaši timoviVi
PoslužiteljAžuriranja sustava i sigurnosti, uključujući intervencije na poslužiteljuTrenutak koji odgovara vašem poslovanju
NadzorPoslužitelj pod nadzorom 24 sata dnevno, 7 dana u tjednu, s intervencijom bez čekanja vašeg pozivaČitanje zapisnika vaše instance
VaultwardenProaktivno praćenje: uočene pogreške, usporavanja i prostor na disku, preporučen ispravakNjegova instalacija, ažuriranja i postavke, koje primjenjujete vi ili vaš AI asistent
Računi i trezorPoslužitelj koji ih nosi, nadziran i sigurnosno kopiranKorisnici, pozivnice, glavne lozinke i dvofaktorska autentifikacija
Sigurnosne kopijeSvake noći, šifrirane i čuvane izvan stroja; vraćanje uključenoKopije specifične za Vaultwarden i zahtjev za vraćanje, kada vam zatreba
MigracijaVaš trenutačni poslužitelj migriran, besplatnoTrenutak prelaska

Ako želite da naši timovi interveniraju u samoj aplikaciji, ta se usluga naplaćuje po satu ili paušalno, uz procjenu koja vam se priopćuje prije intervencije.

Vaultwarden, na poslužitelju koji vodimo za vas

Uz Simafri Managed VPS naši timovi održavaju poslužitelj vaše instance Vaultwardena ažurnim, nadziru ga danju i noću i interveniraju bez čekanja vašeg poziva; uz to proaktivno prate vašu instancu i preporučuju vam korisne ispravke, koje primjenjujete vi ili vaš AI asistent. Sigurnosne kopije svake se noći šifriraju i čuvaju izvan stroja, njihovo vraćanje je uključeno, a migracija vašeg trenutačnog poslužitelja je besplatna.

Otkrijte Managed VPS

Česta pitanja

Je li Vaultwarden besplatan za tvrtke?

Da. Vaultwarden je pod licencom AGPL-3.0: možete ga pokretati u tvrtki bez kupnje licence. Ako ga izmijenite, vaša inačica mora ponuditi izvorni kod onima koji je koriste preko mreže. Ostaje trošak poslužitelja na kojem radi.

Radi li Vaultwarden s aplikacijama Bitwarden?

Da. README predstavlja Vaultwarden kao kompatibilan sa službenim Bitwarden klijentima, uz napomenu da projekt nije povezan s Bitwardenom ni s tvrtkom Bitwarden, Inc. Problem se stoga prijavljuje projektu Vaultwarden, bez obzira na korišteni klijent.

Kako instalirati Vaultwarden s Docker Composeom?

Izradite compose.yaml sa slikom vaultwarden/server, mapom s podacima i portom objavljenim na 127.0.0.1, a zatim pokrenite docker compose up -d. Ispred postavite obrnuti proxy s HTTPS-om: bez HTTPS-a web-trezor ne radi. Upišite i svoju adresu u DOMAIN.

Kako isključiti registracije na Vaultwardenu?

Kada izradite svoj račun, u compose.yaml postavite SIGNUPS_ALLOWED na false, a zatim ponovno pokrenite docker compose up -d. Organizacije i dalje mogu pozivati: INVITATIONS_ALLOWED na false uklanja tu mogućnost. Ako je administracijska stranica već spremila konfiguraciju, ovu postavku promijenite s nje.

Kako konfigurirati administratorski token za Vaultwarden?

Pokrenite naredbu vaultwarden hash, koja vraća argon2id niz, a zatim ga upišite u ADMIN_TOKEN, uz Docker Compose iz datoteke .env. Zatim se prijavite na /admin svojom lozinkom. Bez ADMIN_TOKEN stranica ostaje isključena.

Što štiti trezor Vaultwardena?

Prije svega glavna lozinka: podaci su šifrirani, a kopija baze čita se samo njezinim razbijanjem. Tu su i dvofaktorska autentifikacija, HTTPS, zatvorene registracije, hashirani administratorski token i šifrirane sigurnosne kopije.

Kako sigurnosno kopirati Vaultwarden?

Uz SQLite svaki dan pokrenite naredbu /vaultwarden backup u kontejneru, a kopirajte i mapu attachments, config.json i datoteke rsa_key. Uz MariaDB ili PostgreSQL dodajte izvoz baze. Redovito testirajte vraćanje.

Pokriva li Managed VPS Vaultwarden?

Managed VPS pokriva poslužitelj: sustav, sigurnost, nadzor i sigurnosne kopije. Naši timovi proaktivno prate i vašu instancu te vam preporučuju korisne ispravke, koje primjenjujete vi. Intervencija u aplikaciji naplaćuje se po satu ili paušalno.

Izvori i službena dokumentacija

Kontaktirajte nas