Passwörter · kein KYC
Vaultwarden hosten auf einem Offshore-VPS
Betreiben Sie Ihren eigenen Bitwarden-kompatiblen Passwort-Tresor auf Hardware, die Sie selbst kontrollieren, in einer datenschutzfreundlichen Jurisdiktion, bezahlt in Krypto, ohne dass eine Identität damit verknüpft ist.
Was es ist
Vaultwarden ist ein schlanker, inoffizieller Bitwarden-Server in Rust, der dieselbe API wie Bitwarden spricht, sodass alle offiziellen Bitwarden-Clients (Browser-Erweiterungen, Desktop, iOS/Android, CLI) damit synchronisieren. Er speichert verschlüsselte Tresore für Passwörter, Passkeys, TOTP-Seeds, Karten und sichere Notizen, inklusive Organisationen, Anhängen und Admin-Steuerung – bei einem Bruchteil des RAM-Verbrauchs des offiziellen Stacks.
Warum offshore hosten
Ihr Passwort-Tresor ist das sensibelste Gut, das Sie besitzen – deshalb zählt genauso, wer den Server betreibt und welchem Recht er unterliegt, wie die eingesetzte Kryptografie selbst. Ein No-KYC-VPS, bezahlt in Krypto, an einem datenschutzfreundlichen Standort (NL/CH/RO/IS) bedeutet: Die Maschine, auf der Ihre verschlüsselten Tresore liegen, ist nicht an Ihre rechtliche Identität geknüpft, unterliegt keiner US-/UK-Vorladung und kann nicht durch einen Zahlungsdienstleister gesperrt werden, der Sie deplatformt.
Das Deployment
Ein funktionierendes Referenz-Setup
Kopieren Sie dies auf eine neue ChainVPS-Instanz. Ersetzen Sie die Platzhalter und starten Sie sie anschließend.
# 1) DNS: vault.example.com -> Ihre ChainVPS-IP (A/AAAA-Eintrag)
# 2) Argon2-ADMIN_TOKEN generieren (KEINEN Klartext-String verwenden):
# docker run --rm -it vaultwarden/server /vaultwarden hash
# den resultierenden String '$argon2id$...' unten als ADMIN_TOKEN einfügen (in der .env in einfache Anführungszeichen setzen)
# 3) Als docker-compose.yml speichern, die gezeigte Caddyfile anlegen, dann: docker compose up -d
services:
vaultwarden:
image: vaultwarden/server:1.32.7
container_name: vaultwarden
restart: unless-stopped
environment:
DOMAIN: "https://vault.example.com" # muss exakt der öffentlichen URL entsprechen
SIGNUPS_ALLOWED: "false" # eigenen Account anlegen, danach auf false lassen
INVITATIONS_ALLOWED: "true"
ADMIN_TOKEN: "${ADMIN_TOKEN}" # Argon2-Hash aus Schritt 2, in der .env hinterlegt
WEBSOCKET_ENABLED: "true" # Live-Sync (läuft über den Hauptport)
SENDS_ALLOWED: "true"
ROCKET_PORT: "80"
volumes:
- ./vw-data:/data # Tresore, Anhänge, SQLite-DB, Schlüssel
networks: [vw]
# kein Host-Port veröffentlicht: nur Caddy spricht intern mit diesem Dienst
caddy:
image: caddy:2
container_name: vaultwarden-caddy
restart: unless-stopped
ports:
- "80:80"
- "443:443"
- "443:443/udp" # HTTP/3
volumes:
- ./Caddyfile:/etc/caddy/Caddyfile:ro
- ./caddy-data:/data
- ./caddy-config:/config
networks: [vw]
depends_on: [vaultwarden]
networks:
vw:
# ---- Caddyfile (im gleichen Verzeichnis) ----
# vault.example.com {
# encode gzip
# reverse_proxy vaultwarden:80
# }
# Caddy holt und erneuert automatisch ein Let's-Encrypt-Zertifikat; HTTPS ist zwingend erforderlich,
# da Bitwarden-Clients WebCrypto nutzen, das nur auf einem sicheren Origin läuft.
Firewall
Zu öffnende Ports
| Port | Protokoll | Zweck |
|---|---|---|
| 443 | TCP | HTTPS-Tresor + Client-Sync + WebSocket (über Caddy); der einzige Port, der öffentlich erreichbar sein muss |
| 80 | TCP | HTTP -> HTTPS-Weiterleitung und ACME/Let's-Encrypt-Zertifikatsausstellung |
| 443 | UDP | Optional: HTTP/3 (QUIC) für schnellere Client-Synchronisierung |
Richtige Dimensionierung
Welchen Plan Sie brauchen
VPS Nano/Small (1 vCPU, 1-2 GB RAM)
Vaultwarden verbraucht im Leerlauf rund 15-30 MB RAM mit SQLite; ein Nano-Plan reicht komfortabel aus. Der Speicherbedarf ist minimal, es sei denn, Sie speichern große Anhänge.
VPS Pro (2 vCPU, 4 GB RAM)
Genug Spielraum für gleichzeitige Synchronisierungen, Anhänge sowie den parallelen Betrieb von Caddy, fail2ban und Backups auf derselben Maschine.
VPS Pro (high tier) or entry Dedicated
Wechseln Sie von SQLite zu Postgres/MySQL und lagern Sie Anhänge auf einen Storage-Plan oder eine größere Festplatte aus; dedizierte CPU-Ressourcen halten die Sync-Latenz auch unter Last konstant niedrig.
Beste Standorte: Wählen Sie für einen Tresor einen ChainVPS-Standort der Datenschutz-Kategorie: die Schweiz (CH) und Island (IS) haben eine starke Tradition im Daten- und Privatsphärenschutz, die Niederlande (NL) bieten exzellente Anbindung bei EU-Datenschutzrecht, und Rumänien (RO) oder die Republik Moldau (MD) liegen außerhalb der strengsten Überwachungs-Austauschblöcke. Wählen Sie den Standort, der geografisch am nächsten an Ihnen und Ihren Nutzern liegt, um die Latenz zu minimieren – der Tresor ist ohnehin clientseitig verschlüsselt.
Sichern Sie es ab
Hardening-Checkliste
- Lassen Sie SIGNUPS_ALLOWED=false, nachdem Sie Ihren Account angelegt haben, und nutzen Sie INVITATIONS, um weitere Nutzer hinzuzufügen; ein offener Signup-Endpunkt auf einem öffentlichen Tresor zieht Missbrauch geradezu an.
- Setzen Sie ADMIN_TOKEN immer auf einen mit 'vaultwarden hash' erzeugten Argon2-Hash (niemals einen Klartext-String), oder deaktivieren Sie das /admin-Panel komplett, indem Sie ADMIN_TOKEN nach der Einrichtung wieder unsetzen lassen. Erwägen Sie zusätzlich, /admin per Firewall auf Ihre IP zu beschränken.
- Erzwingen Sie ausschließlich HTTPS und überlassen Sie Caddy die Verwaltung der Let's-Encrypt-Zertifikate; Bitwarden-Clients verweigern Kryptografie über reines HTTP, und ein gültiges Zertifikat verhindert Downgrade-/MITM-Angriffe beim Sync.
- Sichern Sie das Verzeichnis ./vw-data (insbesondere rsa_key.pem, config.json, db.sqlite3 und Anhänge) regelmäßig an einem externen Ort, etwa einem ChainVPS Storage-Plan; der Verlust von rsa_key.pem macht alle bestehenden Sessions/Tokens ungültig.
- Betreiben Sie fail2ban gegen das Vaultwarden-Log (LOG_FILE + LOG_LEVEL), um Brute-Force-Loginversuche zu sperren, und verpflichten Sie jeden Nutzer zur Aktivierung von 2FA; geben Sie über ufw/nftables nur 80/443 frei und blockieren Sie alles andere.
Bereitstellen auf
Das richtige ChainVPS-Produkt
Fragen
Hosting Vaultwarden — FAQ
Ist Vaultwarden dasselbe wie Bitwarden?
Nein, es handelt sich um eine eigenständige, schlanke Server-Implementierung der Bitwarden-API. Sie stammt nicht von Bitwarden Inc., aber die offiziellen Bitwarden-Apps und -Erweiterungen funktionieren damit, und sie unterstützt Tresore, Organisationen, Anhänge, Sends und Passkeys. Ideal für Einzelpersonen und kleine Teams, die selbst hosten möchten, ohne den Ressourcenbedarf des offiziellen Server-Stacks.
Sind meine Daten sicher, wenn der Server beschlagnahmt oder der Host kompromittiert wird?
Tresore werden clientseitig mit einem aus Ihrem Master-Passwort abgeleiteten Schlüssel ver- und entschlüsselt, sodass der Server ausschließlich Chiffretext speichert. Das Hosting auf einer No-KYC-Maschine in einer datenschutzfreundlichen Jurisdiktion verringert, wer Zugriff erzwingen kann – dennoch sollten Sie ein starkes Master-Passwort verwenden, 2FA aktivieren und DOMAIN über HTTPS betreiben, um den Login-Vorgang selbst zu schützen.
Brauche ich HTTPS, oder reicht eine reine IP-Adresse?
Sie benötigen HTTPS mit einem gültigen Zertifikat und einem Domainnamen. Bitwarden-Clients nutzen die WebCrypto-API des Browsers, die nur auf einem sicheren Origin funktioniert – ein reines http:// oder ein Setup mit nackter IP-Adresse wird beim Sync fehlschlagen. Der mitgelieferte Caddy-Dienst stellt automatisch ein kostenloses Let's-Encrypt-Zertifikat aus und erneuert es.
SQLite oder MySQL/Postgres?
SQLite (die Standardeinstellung) ist für den persönlichen Gebrauch und kleine Teams mit bis zu einigen Dutzend Nutzern völlig ausreichend und am schnellsten. Wechseln Sie nur bei großen Multi-Organisation-Deployments oder wenn Sie zentrale DB-Backups und Replikation wünschen zu MySQL oder PostgreSQL; setzen Sie DATABASE_URL entsprechend.
Wie füge ich Nutzer hinzu, ohne öffentliche Registrierungen zu öffnen?
Lassen Sie SIGNUPS_ALLOWED=false und INVITATIONS_ALLOWED=true, und laden Sie Nutzer dann über eine Organisation ein (oder über das /admin-Panel). Eingeladene Nutzer erhalten eine Einladung und können sich registrieren, obwohl die öffentliche Registrierung geschlossen ist – so bleibt der Endpunkt vor Missbrauch geschützt.
Kann ich den VPS bezahlen, ohne einen Ausweis anzugeben?
Ja. ChainVPS arbeitet ohne KYC und akzeptiert Kryptowährungen, sodass der Server, auf dem Ihre verschlüsselten Tresore liegen, weder an Ihre rechtliche Identität noch an einen Kartenzahlungsdienstleister gebunden ist, der das Konto sperren könnte.
Mehr zum Selbst-Hosten
Weitere One-Click-Stacks
Bereitstellen Vaultwarden
in den nächsten 60 Sekunden.
Unlimitierte Bandbreite · DDoS inklusive · 21 Kryptowährungen · Kein KYC.