GuiderFiler, bilder och hemmetLösenord med Vaultwarden

Kör Vaultwarden, en lösenordshanterare, med Podman utan root

Vaultwarden på Debian 13, en Bitwarden-kompatibel lösenordshanterare för dig eller ditt team, i rootless Podman under en egen användare, med HTTPS, uppdateringar och säkerhetskopior.

Testad på Vaultwarden 1.37.3 på Debian 13 (trixie) på en server hos Melonslab Uppdaterad 25 september 2026

Rekommenderad server för guiden

VC-S Micro · 2 vCPU · 8 GB Minne · 250 GB Lagring

Månadsvis, ingen bindningstid 7 dagars öppet köp

90 kr/mån

Beställ nu
På den här sidan

Det här sätter du upp

Vaultwarden är en liten server för lösenordshantering som fungerar med Bitwardens appar: webbläsartilläggen, apparna för mobil och dator, och kommandoradsklienten. Apparna krypterar dina lösenord innan de lämnar din enhet, så servern lagrar bara krypterade data.

Här körs den som en container, under en egen användare som heter vaultwarden, med Caddy från Podman-guiden framför för HTTPS.

Varje steg nedan har körts på en VC-P Alloy (2 vCPU, 8 GB) hos Melonslab med Debian 13. Ett konto skapades, och Bitwardens officiella kommandoradsklient loggade in, sparade en inloggning och läste tillbaka den efter en synk. Misslyckade inloggningar loggades med besökarens riktiga IP-adress, registreringen stängdes, och säkerhetskopian och en omstart av servern kontrollerades. I vila använde Vaultwarden under 10 MB minne, så det minsta av våra Standard-paket räcker gott.

Innan du börjar

Du behöver:

  • en server uppsatt som i Podman-guiden, med Caddy igång;
  • ett namn för den, till exempel vault.example.com, med en A-post och en AAAA-post som pekar på din server.

Exemplen använder vault.example.com som namn och 203.0.113.10 som din servers IPv4-adress. Byt genomgående ut dem mot dina egna.

1. Skapa användaren

Som root:

useradd -m -s /bin/bash vaultwarden
loginctl enable-linger vaultwarden
machinectl shell vaultwarden@

2. Definiera containern

mkdir -p ~/.config/containers/systemd

Skapa ~/.config/containers/systemd/vaultwarden.container:

[Unit]
Description=Vaultwarden, a password manager server

[Container]
ContainerName=vaultwarden
Image=docker.io/vaultwarden/server:latest
Volume=vaultwarden-data:/data
# Only Caddy, on this server, can reach Vaultwarden: the port is not open to the internet.
PublishPort=127.0.0.1:8083:80
Environment=DOMAIN=https://vault.example.com
Environment=SIGNUPS_ALLOWED=true
Environment=IP_HEADER=X-Forwarded-For IP_HEADER_TRUSTED_PROXIES=203.0.113.10
AutoUpdate=registry

[Service]
Restart=always

[Install]
WantedBy=default.target

DOMAIN är adressen du kommer att öppna den på. Registreringen är öppen för tillfället, så att du kan skapa ditt eget konto i steg 4, och stängs direkt efteråt.

Vaultwarden bromsar lösenordsgissning per IP-adress, så den behöver varje besökares riktiga adress. Caddy skickar den vidare i headern X-Forwarded-For, men som standard litar Vaultwarden bara på den headern från privata adresser, och Caddys anslutningar når containern från serverns egen IPv4-adress. IP_HEADER_TRUSTED_PROXIES anger den adressen.

Starta den:

systemctl --user daemon-reload
systemctl --user start vaultwarden
podman logs -f vaultwarden

När loggen visar Rocket has launched trycker du Ctrl+C.

3. Sätt Caddy framför

Gå tillbaka till root med exit och byt till Caddys användare med machinectl shell caddy@. Lägg till det här blocket sist i ~/Caddyfile:

vault.example.com {
    reverse_proxy 127.0.0.1:8083
}

Och starta om Caddy, vilket kort avbryter alla webbplatser den serverar:

systemctl --user restart caddy

Caddy hämtar ett certifikat för vault.example.com och förnyar det själv. Webbvalvet fungerar bara över HTTPS.

4. Skapa ditt konto och stäng registreringen

Öppna https://vault.example.com och välj att skapa ett konto. Välj ett långt huvudlösenord som du kommer ihåg: dina data krypteras med det, så ingen, inte heller Vaultwarden, kan återställa det åt dig.

Gå sedan tillbaka till Vaultwardens användare (exit, sedan machinectl shell vaultwarden@) och stäng registreringen:

sed -i 's/^Environment=SIGNUPS_ALLOWED=true/Environment=SIGNUPS_ALLOWED=false/' ~/.config/containers/systemd/vaultwarden.container
systemctl --user daemon-reload
systemctl --user restart vaultwarden

Nu kan ingen annan skapa ett konto. För att lägga till någon senare öppnar du registreringen på samma sätt, låter personen registrera sig och stänger den igen.

5. Anslut dina appar

Välj en egen server (self-hosted) i en Bitwarden-app eller ett webbläsartillägg innan du loggar in, och ange https://vault.example.com.

I vårt test kunde Bitwardens kommandoradsklient 2026.9.0 inte logga in på Vaultwarden 1.37.3: den ber servern om en funktion som lades till efter den versionen. Version 2026.8.0 fungerade. Buggfixen är redan inlagd inför Vaultwardens nästa version, som de dagliga uppdateringarna i steg 6 installerar.

6. Håll den uppdaterad

Slå på Podmans dagliga uppdateringar för den här användaren:

systemctl --user enable --now podman-auto-update.timer

7. Säkerhetskopiera

mkdir -p ~/backup
systemctl --user stop vaultwarden
podman volume export vaultwarden-data --output ~/backup/vaultwarden-data.tar
systemctl --user start vaultwarden

Att stoppa Vaultwarden de sekunder det tar ger en konsistent kopia av databasen. Arkivet innehåller databasen, bilagor och nyckeln som servern signerar inloggningar med. Lösenorden i det är krypterade med varje användares huvudlösenord, men förvara ändå arkivet säkert, och kopiera ~/backup till en annan maskin: en säkerhetskopia på samma server överlever inte att servern går förlorad.

Felsökning

Varje misslyckad inloggning i loggen visar din servers egen adress. IP_HEADER_TRUSTED_PROXIES i steg 2 måste vara serverns IPv4-adress, den som Caddys anslutningar kommer från.

Registreringen misslyckas med "Registration not allowed or user already exists". Registreringen är stängd, vilket är vad steg 4 gör, eller så har e-postadressen redan ett konto.

Appen kan inte ansluta. Kontrollera att den pekar på https://vault.example.com, och läs loggen med podman logs vaultwarden som användaren vaultwarden.

Dina lösenord i Sverige

Med Vaultwarden på en server hos Melonslab lagras ditt krypterade valv i Sverige, på en server du själv styr över, där svensk lag och EU-rätt gäller.

Kör det på din egen server

VC-S Micro

90 kr/mån

vCPU
2
Minne
8 GB
Lagring
250 GB
Trafik
10 TB
Standard
HDD · RAID 10
  • Full root-åtkomst
  • Nativt /64 IPv6
  • RAID-skyddad lagring
  • Malmö, Sverige
  • Månadsvis, ingen bindningstid
  • 7 dagars öppet köp
Alla guider