📌 Il self-hosting NON è per tutti: prima di iniziare, sii onesto - te la senti di gestire reverse proxy, certificati TLS, backup cifrati e aggiornamenti Docker mensili? Se la risposta è «non proprio», una cassaforte gestita come NordPass a 1,49 €/mese ti costerà meno di un guasto del Raspberry Pi mentre sei in vacanza. Se sì, questo tutorial fa per te.
Nuovo all'idea? Inizia dalla nostra panoramica sui password manager self-hosted.
Vaultwarden è la riscrittura open source in Rust del server Bitwarden, progettata per girare su hardware modesto (un Raspberry Pi 4 basta). Questo tutorial illustra un deployment di livello produzione con Docker Compose, proxy Caddy con HTTPS automatico e backup cifrati su Backblaze B2.
Vaultwarden fa girare la tua cassaforte Bitwarden sul tuo hardware. Compatibile al 100% con i client ufficiali. Configurazione in 30 minuti se conosci Docker.
01 - Prerequisiti
- Un server Linux (Raspberry Pi 4, VPS o homelab) con Docker installato
- Un nome di dominio che punta all'IP pubblico del server (es.
vault.yourdomain.com) - Porta 443 aperta su firewall / NAT
- 30 minuti
- ~50 MB di spazio per Vaultwarden + i tuoi dati futuri
02 - Architettura target
Internet → Cloudflare (opzionale) → reverse proxy Caddy con Let's Encrypt automatico → container Vaultwarden. Dati memorizzati sull'host in /srv/vaultwarden/data.
Caddy gestisce l'HTTPS automaticamente via Let's Encrypt. Vaultwarden gira in un container Docker isolato.
03 - Docker Compose
Crea il file /srv/vaultwarden/docker-compose.yml. La configurazione usa l'immagine ufficiale vaultwarden/server:latest, espone la variabile DOMAIN che punta al tuo URL HTTPS, disabilita le registrazioni esterne con SIGNUPS_ALLOWED: false, abilita i WebSocket per la sincronizzazione in tempo reale e monta un volume ./data per la persistenza.
La configurazione di Caddy è minima: una singola direttiva reverse_proxy vaultwarden:80 più gli header di sicurezza standard (HSTS, X-Frame-Options, X-Content-Type-Options, Referrer-Policy).
L'ADMIN_TOKEN si genera con openssl rand -base64 48 (da mettere solo nella tua configurazione locale, mai committato).
04 - Avviare Vaultwarden
Avvia il servizio con docker compose up -d dalla cartella /srv/vaultwarden, poi controlla i log con docker compose logs -f vaultwarden. Caddy ottiene automaticamente un certificato Let's Encrypt entro 30 secondi (visibile in docker compose logs caddy).
05 - Primo accesso + hardening
- Apri
https://vault.yourdomain.comnel browser - Crea il tuo account (l'unico consentito: registrazioni chiuse dopo)
- IMMEDIATAMENTE: Settings → Security → Two-step Login → abilita TOTP
- IMMEDIATAMENTE: verifica che
SIGNUPS_ALLOWEDsiafalse - Testa l'autofill con il browser puntato al tuo URL personalizzato
06 - Backup automatici
Uno script bash orario crea uno snapshot del database SQLite (consistente senza fermare il servizio), comprime l'intera cartella, cifra lato client con GPG (destinatario = la tua email) e carica su Backblaze B2 (~1 €/mese per 100 GB).
La sequenza:
docker exec vaultwarden sqlite3 /data/db.sqlite3 ".backup '/tmp/db_DATE.sqlite3'"per uno snapshot consistentetar czfper archiviaregpg --encrypt --recipient you@email.comper la cifratura lato clientb2 upload-fileper l'upload remoto- Pulizia locale
Crontab: 0 * * * * /usr/local/bin/vaultwarden-backup.sh
Test mensile: ripristina un backup su un'istanza di dev per verificarne l'integrità.
07 - Connettere i client Bitwarden ufficiali
In ogni client Bitwarden (mobile, desktop, browser), prima del login:
- Clicca sull'ingranaggio delle impostazioni (prima del login)
- URL del server:
https://vault.yourdomain.com - Salva
- Accedi con la tua master password
Tutti i client funzionano esattamente come con il cloud Bitwarden ufficiale.
08 - Manutenzione
- Aggiornamenti Vaultwarden:
docker compose pull && docker compose up -d(consigliato mensilmente) - Monitoraggio: Uptime Kuma (self-hosted) o Healthchecks.io (gratuito) per gli avvisi di downtime
- Log:
docker compose logs --tail 200 vaultwarden - Audit: segui github.com/dani-garcia/vaultwarden per eventuali CVE
★ Audit Cure53 2024 · ✓ Plan gratuit · Cross-platform
Scopri NordPass Premium →1,49 €/mese · Zero manutenzione · Auditato Cure53 + SOC 2→09 - Per approfondire
- Migliori password manager self-hosted 2026 - Vaultwarden vs. Bitwarden self-host, KeePassXC, Passbolt e Psono a confronto
- Recensione Bitwarden 2026 completa
- Ranking dei migliori password manager 2026 - confronta le casseforti cloud gestite se il self-hosting ti sembra troppo
- Migliori alternative a LastPass 2026 - per i team che migrano da LastPass prima di decidere per il self-host
- Metodologia pubblica
Tutorial basato su Vaultwarden 1.31.x su Raspberry Pi 4 (Debian 12) a giugno 2026. Procedure validate rispetto alla documentazione ufficiale di Vaultwarden.
Domande frequenti
Vaultwarden è davvero compatibile con i client Bitwarden ufficiali?
**Sì, al 100%**. Vaultwarden (ex bitwarden_rs) è una riscrittura in Rust del server Bitwarden che implementa l'API ufficiale. I client Bitwarden (web, desktop, mobile, browser, CLI) si connettono al tuo server Vaultwarden semplicemente puntando al tuo URL personalizzato. Nessuna perdita di funzionalità lato client. L'unico caso in cui Vaultwarden resta leggermente indietro: alcune funzionalità Enterprise molto recenti possono avere 1-2 mesi di ritardo.
Quale hardware per il self-hosting di Vaultwarden?
**Minimo praticabile**: Raspberry Pi 4 (2 GB RAM, microSD 32 GB) o qualsiasi VPS da 3-5 €/mese (Contabo, OVH, Hetzner CX11). **Comodo**: Raspberry Pi 4 (4 GB RAM, SSD USB 3.0) o VPS 4 GB RAM. Vaultwarden usa ~100 MB di RAM a riposo, ~200 MB al picco. Lo spazio dipende dagli allegati: ~50 MB per 500 voci senza allegati.
Il TLS / HTTPS è obbligatorio per Vaultwarden?
**Sì, assolutamente**. I client Bitwarden si rifiutano di connettersi a un server HTTP non cifrato (eccetto localhost in dev). Devi distribuire un certificato TLS. Soluzione standard: Let's Encrypt via certbot (gratuito, rinnovo automatico) con proxy nginx o Caddy. Il nostro tutorial illustra l'opzione Caddy (più semplice: 1 riga di configurazione gestisce l'HTTPS automatico).
Come fare backup affidabili di Vaultwarden?
Vaultwarden memorizza i suoi dati in SQLite (predefinito) o PostgreSQL/MySQL (opzione). Backup minimo: copiare regolarmente il file db.sqlite3 su uno storage esterno. Soluzione avanzata: usare litestream (replica continua di SQLite su S3). La nostra raccomandazione: un cronjob orario che comprime la cartella data e la carica cifrata su Backblaze B2.
Vaultwarden Self-Host o Bitwarden Cloud ufficiale?
**Vaultwarden self-host**: zero costi ricorrenti se il server è già disponibile, pieno controllo dei dati, ma sei responsabile di uptime/backup/sicurezza. **Bitwarden hosted ufficiale**: 10 $/anno per Premium, dati cifrati zero-knowledge, un team professionale gestisce infra/backup/aggiornamenti. Raccomandazione: self-host se sei un professionista sysadmin/devops. Bitwarden hosted in tutti gli altri casi.