← All articles
a laptop computer sitting on top of a wooden desk

Self-Hosting Passbolt: Open Source Password Management for Teams

Security 2026-02-15 · 5 min read passbolt password-manager security team-tools gpg
By Selfhosted Guides Editorial TeamSelf-hosting practitioners covering open source software, home lab infrastructure, and data sovereignty.

Most password managers are designed for individuals. You pick one, store your passwords, and that's it. But when you're managing shared credentials across a team — staging server passwords, API keys, shared service accounts — individual vaults don't cut it.

Photo by Mamur Saitbaev on Unsplash

Passbolt is an open source, self-hosted password manager built specifically for team credential sharing. It uses GPG encryption end-to-end, meaning the server never sees plaintext passwords, and sharing is cryptographically enforced per-user.

Passbolt logo — open source team password manager

Passbolt vs. Vaultwarden vs. Bitwarden: When to Use What

Feature Passbolt Vaultwarden Bitwarden (Cloud)
Primary use case Team sharing Personal + small team Personal + enterprise
Encryption model GPG per-user AES-256, master password AES-256, master password
Self-hosted Yes (AGPL) Yes (GPL, unofficial) Yes (paid tiers)
Browser extension Yes Yes (Bitwarden) Yes
Mobile apps Community Edition: No Yes (Bitwarden) Yes
Sharing model Per-user GPG keys Organizations Organizations
Audit log Yes Limited Yes (Enterprise)
API Yes (REST) Bitwarden-compatible Bitwarden API
SSO support Pro edition No Enterprise
Cost (self-hosted) Free (CE) / Paid (Pro) Free Free (limited) / Paid

When to choose Passbolt

When to choose Vaultwarden instead

How Passbolt's Encryption Works

Passbolt doesn't rely on a master password that the server validates. Instead:

  1. Each user generates a GPG keypair during account setup.
  2. The private key is encrypted with the user's passphrase and stored on the server (encrypted).
  3. When you save a password, it's encrypted with your public key.
  4. When you share a password, Passbolt re-encrypts it with the recipient's public key.
  5. The server never sees plaintext. Even a compromised database only contains GPG-encrypted blobs.

This is a fundamentally different trust model from Bitwarden/Vaultwarden, where the server handles key derivation. In Passbolt, you could theoretically replace the server and still decrypt your data with your GPG key.

Self-Hosting Passbolt: What You Need

Server requirements

Docker setup

The easiest way to deploy Passbolt is with Docker Compose:

version: "3.9"
services:
  db:
    image: mariadb:10.11
    environment:
      MYSQL_DATABASE: passbolt
      MYSQL_USER: passbolt
      MYSQL_PASSWORD: your-db-password
      MYSQL_ROOT_PASSWORD: your-root-password
    volumes:
      - db_data:/var/lib/mysql

  passbolt:
    image: passbolt/passbolt:latest-ce
    depends_on:
      - db
    environment:
      APP_FULL_BASE_URL: https://pass.yourdomain.com
      DATASOURCES_DEFAULT_HOST: db
      DATASOURCES_DEFAULT_DATABASE: passbolt
      DATASOURCES_DEFAULT_USERNAME: passbolt
      DATASOURCES_DEFAULT_PASSWORD: your-db-password
      EMAIL_DEFAULT_FROM: [email protected]
      EMAIL_TRANSPORT_DEFAULT_HOST: smtp.yourdomain.com
      EMAIL_TRANSPORT_DEFAULT_PORT: 587
      EMAIL_TRANSPORT_DEFAULT_USERNAME: your-smtp-user
      EMAIL_TRANSPORT_DEFAULT_PASSWORD: your-smtp-password
    volumes:
      - gpg_data:/etc/passbolt/gpg
      - jwt_data:/etc/passbolt/jwt
    ports:
      - "443:443"
      - "80:80"

volumes:
  db_data:
  gpg_data:
  jwt_data:

After starting the containers, create your first admin user:

docker exec passbolt su -m -c \
  "/usr/share/php/passbolt/bin/cake passbolt register_user \
   -u [email protected] -f Admin -l User -r admin" -s /bin/sh www-data

This outputs a URL to complete registration in your browser, where you'll generate your GPG key and install the browser extension.

Email is not optional

Unlike many self-hosted tools where email is a nice-to-have, Passbolt requires a working SMTP configuration. Account invitations, password sharing notifications, and account recovery all go through email. Make sure your SMTP is configured before inviting team members.

Like what you're reading? Subscribe to Self-Hosted Weekly — free weekly guides in your inbox.

Day-to-Day Usage

Browser extension (required)

Passbolt uses a browser extension for all cryptographic operations. The extension:

This is different from Bitwarden, where the extension is convenient but optional (you can use the web vault). In Passbolt, the extension is the primary interface.

Sharing credentials

To share a password with a teammate:

  1. Open the password entry
  2. Click "Share"
  3. Select users or groups
  4. Choose permission level (read-only, update, or owner)

Behind the scenes, Passbolt re-encrypts the secret with each recipient's GPG public key. The recipient's extension decrypts it with their private key.

Folders and tags

Passbolt supports:

What Passbolt Can't Do (Yet)

Backups

Passbolt backups need three things:

  1. Database dump — All metadata and encrypted password blobs
  2. GPG server keys — The /etc/passbolt/gpg/ directory
  3. JWT keys — The /etc/passbolt/jwt/ directory (for API authentication)
# Database backup
docker exec passbolt-db mysqldump -u root -p passbolt > passbolt-backup.sql

# Volume backup
docker run --rm -v passbolt_gpg_data:/data -v $(pwd):/backup \
  alpine tar czf /backup/gpg-backup.tar.gz -C /data .

Because passwords are GPG-encrypted, a database dump alone is useless without the corresponding private keys. This is a security feature, but it means your backup strategy needs to account for key material.

Bottom Line

Passbolt is the right choice when you need cryptographically-enforced credential sharing across a team. The GPG model is more complex than Bitwarden's approach, but it provides stronger guarantees about who can access what.

For personal use, Vaultwarden is simpler. For team use where you want real end-to-end encryption and audit trails, Passbolt is the better fit.

The Community Edition is genuinely usable — the main limitation is the lack of mobile apps. If your team primarily works from laptops with browser extensions, that's not a dealbreaker. If mobile access is critical, look at the Pro edition or consider Vaultwarden with Bitwarden organizations as an alternative.

Get free weekly tips in your inbox. Subscribe to Self-Hosted Weekly