Skip to content
  • Networking and privacy
  • Linux VPS
  • Ubuntu 24.04

Self-host Vaultwarden on a VPS

Vaultwarden runs well on a GhostRDP Linux VPS Basic plan with 2 vCPU and 6 GB RAM in Germany or the Netherlands, from €5.99/mo.

Vaultwarden is a lightweight server that works with the official Bitwarden apps and browser extensions. Your vault stays on your own server. It needs HTTPS, so you'll need a domain name pointing at the server.

  • Works with Bitwarden apps

    Use the official apps and browser extensions.

  • HTTPS included

    Caddy gets a free certificate for your domain.

  • For family or team

    Share collections with the people you choose.

Plans for Vaultwarden

Vaultwarden uses very little memory. Basic runs it for a family or small team with lots of room to spare.

  • Linux VPS Basic

    Recommended

    €5.99/mo

    €5.09/mo billed yearly, save €10/year

    • 2 vCPU
    • 6 GB ECC RAM
    • 40 GB NVMe
    • 1 Gbps port
    Order Basic
  • Linux VPS Standard

    €12.99/mo

    €11.04/mo billed yearly, save €23/year

    • 4 vCPU
    • 8 GB ECC RAM
    • 70 GB NVMe
    • 1 Gbps port
    Order Standard
  • Linux VPS Pro

    €25.99/mo

    €22.09/mo billed yearly, save €46/year

    • 6 vCPU
    • 12 GB ECC RAM
    • 90 GB NVMe
    • 1 Gbps port
    Order Pro

What you need

  • Operating system
    Linux VPS with Ubuntu 24.04
  • Minimum resources
    1 vCPU and 512 MB RAM
  • Domain
    A domain or subdomain (for example vault.example.com) with an A record pointing to your server's IP

Official site: github.com/dani-garcia/vaultwarden

How to install Vaultwarden

Written for Ubuntu 24.04 from the official instructions. Run the commands as root and replace YOUR_SERVER_IP with your server's address.

  1. 1

    Connect to your server over SSH

    Use the IP address and root password from your welcome email (the server page has a Copy SSH command button). Windows 10 and 11, macOS and Linux all include an SSH client in the terminal.

    Shell
    ssh root@YOUR_SERVER_IP
  2. 2

    Update the system

    Install the latest security updates before you add anything else.

    Shell
    apt update && apt -y upgrade
  3. 3

    Install Docker

    Docker's official convenience script adds Docker's own package repository and installs Docker Engine with the Compose plugin.

    Shell
    curl -fsSL https://get.docker.com -o get-docker.sh
    sh get-docker.sh
    docker --version
  4. 4

    Start Vaultwarden

    Replace vault.example.com with your domain. Vaultwarden listens on the server itself only; Caddy will put HTTPS in front of it.

    Shell
    docker run -d --name vaultwarden --restart unless-stopped \
      -e DOMAIN=https://vault.example.com \
      -v /vw-data/:/data/ \
      -p 127.0.0.1:8080:80 \
      vaultwarden/server:latest
  5. 5

    Add HTTPS with Caddy

    Caddy gets a free Let's Encrypt certificate for your domain automatically. Ports 80 and 443 must be reachable.

    Shell
    apt install -y caddy
    cat > /etc/caddy/Caddyfile <<'EOF'
    vault.example.com {
        reverse_proxy 127.0.0.1:8080
    }
    EOF
    systemctl reload caddy
  6. 6

    Create your account, then close sign-ups

    Open https://vault.example.com, create your account, then start the container again with sign-ups turned off.

    Shell
    docker rm -f vaultwarden
    docker run -d --name vaultwarden --restart unless-stopped \
      -e DOMAIN=https://vault.example.com \
      -e SIGNUPS_ALLOWED=false \
      -v /vw-data/:/data/ \
      -p 127.0.0.1:8080:80 \
      vaultwarden/server:latest

After installing

  • Connect the apps
    In the Bitwarden app or extension, choose Self-hosted on the login screen and enter https://vault.example.com.
  • Backups
    Server backups are not included. Copy /vw-data regularly (it holds the database and attachments) to somewhere safe.
  • Ports
    80 and 443 for Caddy. Vaultwarden itself is only reachable through Caddy.

Vaultwarden questions

Which plan do I need for Vaultwarden?

The Basic Linux VPS. Vaultwarden is written in Rust and uses very little memory.

Do I need a domain?

Yes. The Bitwarden apps and browsers require HTTPS, and a free certificate needs a domain pointing at your server.

Is Vaultwarden the same as Bitwarden?

No. It is an independent, open-source server that speaks the same API, so the official Bitwarden apps work with it. It is not made by Bitwarden, Inc.

How do I update Vaultwarden?

docker pull vaultwarden/server:latest, then remove and start the container again with the same command. Your data in /vw-data stays.

Stuck on a step? Our team answers on live chat and in tickets.

More on GhostRDP

Run Vaultwarden on your own server.

Online in minutes. Pay with crypto, no ID needed.