vaultwarden README

The project's README from github.com/dani-garcia/vaultwarden. As one markdown file: README.md.

Vaultwarden Logo

An alternative server implementation of the Bitwarden Client API, written in Rust and compatible with official Bitwarden clients [disclaimer], perfect for self-hosted deployment where running the official resource-heavy service might not be ideal.


GitHub Release ghcr.io Pulls Docker Pulls Quay.io
Contributors Forks Stars Issues Open Issues Closed AGPL-3.0 Licensed
Dependency Status GHA Release GHA Build
Matrix Chat GitHub Discussions Discourse Discussions

[!IMPORTANT] When using this server, please report any bugs or suggestions directly to us (see Get in touch), regardless of whatever clients you are using (mobile, desktop, browser...). DO NOT use the official Bitwarden support channels.


Features

A nearly complete implementation of the Bitwarden Client API is provided, including:


Usage

[!IMPORTANT] The web-vault requires the use of HTTPS and a secure context for the Web Crypto API.
That means it will only work if you enable HTTPS.
We also suggest to use a reverse proxy.

The recommended way to install and use Vaultwarden is via our container images which are published to ghcr.io, docker.io and quay.io. See which container image to use for an explanation of the provided tags.

There are also community driven packages which can be used, but those might be lagging behind the latest version or might deviate in the way Vaultwarden is configured, as described in our Wiki.

Alternatively, you can also build Vaultwarden yourself.

While Vaultwarden is based upon the Rocket web framework which has built-in support for TLS our recommendation would be that you setup a reverse proxy (see proxy examples).

[!TIP] For more detailed examples on how to install, use and configure Vaultwarden you can check our Wiki.

Docker/Podman CLI

Pull the container image and mount a volume from the host for persistent storage.
You can replace docker with podman if you prefer to use podman.

docker pull vaultwarden/server:latest
docker run --detach --name vaultwarden \
  --env DOMAIN="https://vw.domain.tld" \
  --volume /vw-data/:/data/ \
  --restart unless-stopped \
  --publish 127.0.0.1:8000:80 \
  vaultwarden/server:latest

This will preserve any persistent data under /vw-data/, you can adapt the path to whatever suits you.

Docker Compose

To use Docker compose you need to create a compose.yaml which will hold the configuration to run the Vaultwarden container.

services:
  vaultwarden:
    image: vaultwarden/server:latest
    container_name: vaultwarden
    restart: unless-stopped
    environment:
      DOMAIN: "https://vw.domain.tld"
    volumes:
      - ./vw-data/:/data/
    ports:
      - 127.0.0.1:8000:80

Get in touch

Have a question, suggestion or need help? Join our community on Matrix, GitHub Discussions or Discourse Forums.

Encountered a bug or crash? Please search our issue tracker and discussions to see if it's already been reported. If not, please start a new discussion or create a new issue. Ensure you're using the latest version of Vaultwarden and there aren't any similar issues open or closed!


Contributors

Thanks for your contribution to the project!

Contributors Count
Contributors Avatars


Disclaimer

This project is not associated with Bitwarden or Bitwarden, Inc.

However, one of the active maintainers for Vaultwarden is employed by Bitwarden and is allowed to contribute to the project on their own time. These contributions are independent of Bitwarden and are reviewed by other maintainers.

The maintainers work together to set the direction for the project, focusing on serving the self-hosting community, including individuals, families, and small organizations, while ensuring the project's sustainability.

Please note: We cannot be held liable for any data loss that may occur while using Vaultwarden. This includes passwords, attachments, and other information handled by the application. We highly recommend performing regular backups of your files and database. However, should you experience data loss, we encourage you to contact us immediately.


Bitwarden_RS

This project was known as Bitwarden_RS and has been renamed to separate itself from the official Bitwarden server in the hopes of avoiding confusion and trademark/branding issues.
Please see #1642 - v1.21.0 release and project rename to Vaultwarden for more explanation.

vaultwarden (dani-garcia/vaultwarden)

selfhosted
Searching Database…

What is this?Vaultwarden is an unofficial, Rust-written server that implements the Bitwarden Client API, so you can run your own password-manager backend instead of using Bitwarden's official hosted service.
Is this a drop-in replacement for the official Bitwarden server, or something different?It's a lightweight alternative server that speaks the same API as official Bitwarden clients (mobile, desktop, browser extensions, CLI), so those apps connect to it without modification, but it's not made or endorsed by Bitwarden Inc.
How do I get it running?The recommended way is pulling the container image published to ghcr.io, docker.io or quay.io and mounting a volume for persistent storage; Docker Compose is also supported via a compose.yaml file. You can also build it yourself from source if you don't want containers.
Do I need anything besides Docker to run it properly?You need HTTPS/a secure context for the bundled web vault to work at all, since it relies on the Web Crypto API, so a reverse proxy with TLS is strongly recommended even though the underlying Rocket framework has built-in TLS support.
What should I know before relying on it for my passwords?The maintainers explicitly say they can't be held liable for data loss and recommend regular backups of your files and database; also, bugs should be reported to Vaultwarden's own channels, never to official Bitwarden support, since it's an unofficial reimplementation.
Who is this aimed at?It targets the self-hosting community - individuals, families, and small organizations - who want their own password vault without the overhead of the official resource-heavy service.
Is my vault data kept locally under my own control?Yes, Vaultwarden is self-hosted, so your encrypted vault data stays on your own server/container rather than Bitwarden's cloud.
Does Vaultwarden support two-factor authentication?Yes - it supports multiple 2FA/MFA methods including TOTP Authenticator, Email, FIDO2 WebAuthn, YubiKey, and Duo.
Can it handle team or family use with shared vaults?Yes, it implements Organizations with Collections, password sharing, member roles, groups, event logs, admin password reset, directory connector, and policies.
Why was it renamed from bitwarden_rs to Vaultwarden?The project was renamed to distance itself from the official Bitwarden server and avoid confusion or trademark/branding issues, as explained in its v1.21.0 release notes.
Is the Bitwarden web vault included?Yes, a modified Web Vault client is bundled directly within the official Vaultwarden container images.
What are similar projects?nodewarden, server, ente, ENZO, PrivacyNotes.app, DnsServer, clients, numa
Size
13 MB
Stars
69.3K
Age
8y
Commits · 90 Days