mrkeyoor.com_
Thu 10 Sept 18:02 UTC
Self-Hostedevaluationupdated 10 Sept 2026

server review

Bitwarden Server is the backend used by Bitwarden password-manager clients, including the APIs, identity service, database work, notifications, and administration. It lets an individual or organization keep that backend on infrastructure they operate instead of using Bitwarden's hosted service.

trackingstars / 7d
Verdict

Bitwarden Admin installed 168 npm packages in 16 seconds and built in 17 seconds with 0 audit findings in our sandbox, but that result covers only src/Admin and there was no test target. Bitwarden Server is the safest choice for an organization that wants official clients, official deployment paths, and staff assigned to operate them. For a personal host, try Bitwarden Lite first and compare Vaultwarden before accepting the standard stack's MSSQL and resource costs.

We ran it

Lab card: what happened when we ran serverScreenshot of server (bitwarden.com)
Install✓ · 16s168 packages · 60 MB
Build✓ · 17s
Testsn/ano test script
Known vulns00 critical · 0 high · 0 moderate · 0 low (npm audit)
Repo7650 files~1,921,561 lines of source · 86.6 MB · 17 CI workflows · Dockerfile · tests dir

Answers from our run

Does server build from source?

Dependencies installed in 16 seconds (168 packages), and the build succeeded in 17 seconds. We cloned commit 92fffd5 into a clean Debian container with 3 CPUs and no project-specific setup.

Does server have tests you can run?

Not through a standard command: the project exposes no test script or target that our harness could run.

Does server have known vulnerabilities in its dependencies?

npm audit found none in the dependency tree at the time of our run.

Who should not use server?

Home users who cannot spare the standard Linux minimum of 2 GB RAM and 12 GB storage or operate separate HTTP and HTTPS ports; Bitwarden Lite is the smaller official route.

What are the alternatives to server?

Vaultwarden, Passbolt. Bitwarden Admin installed 168 npm packages in 16 seconds and built in 17 seconds with 0 audit findings in our sandbox, but that result covers only src/Admin and there was no test target.

Setup3/5Scripts help, but standard hosting needs Docker, TLS, ports, and MSSQL
Docs5/5Deployment, development, networking, licensing, and recovery are detailed
Community5/520,109 stars, a September release, and active same-day pull requests
Maturity5/5Version 2026.8.2 has official clients and several supported deployment modes

Who it’s for

Organizations that require the official Bitwarden backend inside their own network or cloud account.
Administrators comfortable owning Docker, DNS, TLS certificates, database care, backups, and upgrades.
Enterprises prepared to license the commercial modules used for features such as SSO.
C# and .NET contributors working on Bitwarden's APIs, identity, billing, or self-hosted deployment code.

Who it’s NOT for

Home users who cannot spare the standard Linux minimum of 2 GB RAM and 12 GB storage or operate separate HTTP and HTTPS ports; Bitwarden Lite is the smaller official route.
Teams requiring PostgreSQL or MySQL for the standard multi-container deployment: every official option except Lite ships with MSSQL Express by default, and the documented external database is MSSQL 2019 or newer.
Organizations that require every included module to use an OSI-approved license: code under /bitwarden_license uses Bitwarden's source-available license and needs a paid subscription for production.
Developers expecting a Node-only contribution setup: the server guide calls for .NET 10, Rust, PowerShell, Docker Desktop, and MSSQL.
Buyers who want a password service with no infrastructure ownership: the official self-host guide rates standard Linux administration as intermediate to advanced work.

Setup reality

Our lab scoped npm work to src/Admin, not the full .NET server. That project installed 168 packages in 16 seconds, using 60 MB, and built in 17 seconds. It had no test script or target, so tests were skipped. Npm audit found 0 known vulnerabilities across all severity levels.

A standard deployment needs Docker Engine 26 or newer, Docker Compose, a domain and TLS setup, and separate HTTP and HTTPS ports. The Linux minimum is 2 GB RAM and 12 GB storage. Setup also requests a Bitwarden installation ID and key, while standard deployments use MSSQL Express unless connected to external MSSQL 2019 or newer.

Full development is much heavier than the Admin build: the current guide lists .NET 10, stable Rust, PowerShell, Docker Desktop, Visual Studio 2022, and a database tool. The basic profile starts MSSQL and MailCatcher, requires a compliant database password, loads user secrets, and runs a migration script before the API and Identity services are useful.

The standard deployment spans 9 named service images

Bitwarden Server supplies the backend for the official client family. The repository is mainly C# on ASP.NET Core, with T-SQL and SQL Server for the standard database path. Its README lists production image hashes for 9 services: Admin, API, Billing, Events, EventsProcessor, Identity, Notifications, SCIM, and SSO. That division makes sense for an established hosted product, but it is more infrastructure than the word server may suggest.

Administrators can choose standard Linux or Windows scripts, manual and offline installs, or Kubernetes with Helm. Bitwarden Lite, renamed from Unified after leaving beta in December 2025, packages a smaller deployment into 1 container for personal use and home labs. The standard paths remain the better documented choice for organizations that want the official service split and can manage several containers as one security-sensitive system.

Standard Linux starts at 2 GB RAM and 12 GB storage

The Linux guide sets a minimum of an x64 1.4 GHz processor, 2 GB RAM, and 12 GB storage. It recommends a 2 GHz dual-core processor, 4 GB RAM, and 25 GB storage. Docker Engine 26 or newer and the Compose plugin are required. Those are reasonable server numbers, though they rule out the smallest hobby VPS plans before vault attachments, database growth, logs, and backups consume more space.

Networking has a firm shape as well. Bitwarden requires 2 open traffic ports, one for HTTP and one for HTTPS, using 80 and 443 by default. The installation wizard expects a domain, certificate choice, installation ID, and installation key. Standard deployments ship with MSSQL Express; every official deployment except Lite documents external MSSQL 2019 or newer as the alternative. A team standardized on PostgreSQL should assess Lite separately rather than assume the standard compose stack can swap databases.

What happened when we ran it

Our sandbox work was deliberately limited to the npm project at src/Admin. At commit 92fffd5, npm installed 168 packages in 16 seconds and added 60 MB on disk. The Admin webpack build succeeded in 17 seconds in a fresh unprivileged Node 22 container with 3 CPUs and 8 GB of RAM. This proves the administration front end can compile in that environment; it says nothing about compiling the C# services or starting a usable vault.

The Admin package had no test script or target, so our harness skipped tests rather than reporting a pass. Npm audit found 0 known vulnerabilities: 0 critical, 0 high, 0 moderate, and 0 low. The whole checkout was much larger than the measured subproject, with 7,650 files, about 1,921,561 source lines, and 86.6 MB before installation. Our scan found 17 CI workflow files, a Dockerfile, and a tests directory.

Development needs .NET 10, Rust, MSSQL, and PowerShell

The current contributor guide lists the .NET 10 SDK, stable Rust, PowerShell, Docker Desktop, Visual Studio 2022, and a database management tool. A basic setup needs the API and Identity services. Docker Compose starts MSSQL and MailCatcher for most community work, while Redis and Azurite cover optional caching and Azure-compatible storage paths. This is a service development environment, not an npm application with one start command.

Configuration begins with a dev/.env file and an MSSQL password with at least 8 characters drawn from 3 of 4 character categories. A separate secrets file receives the database connection, an installation ID and key, and a license directory. The helper then installs those settings across server projects. Developers run a PowerShell migration script to create vault_dev, and the guide says to rerun it regularly as the main branch changes. Changing the MSSQL password after first startup requires recreating the database volume.

AGPL 3.0 covers the main server; enterprise code has separate terms

The repository's default license is AGPL 3.0, while files under the top-level /bitwarden_license directory use Bitwarden License 1.0. The license FAQ describes that second license as source available rather than open source under the OSI definition. It permits internal development and testing, but production use of those modules or environments supporting production requires a paid Bitwarden subscription. Trademark rights are separate from both code licenses.

The split affects builds as well as legal review. The FAQ says the API includes Commercial.Core by default, even though that module uses the Bitwarden License. Builders who want the AGPL-only server can disable it with the documented OSS compile constant. Organizations adopting SSO and other enterprise-oriented modules should price the subscription and record which image contains which license before treating a public source tree as permission for every production feature.

Version 2026.8.2 arrived 2 days before this review

Bitwarden published server v2026.8.2 on September 8, 2026, with a route-parameter bug fix, and GitHub recorded another push on September 10. The repository had 20,109 stars that day. Issue search separated the open queue into 34 issues and 194 pull requests, matching the 228 combined items in repository metadata. Several pull requests were created or updated on September 10, which is clear evidence of current company and contributor work.

Active maintenance does not remove upgrade risk. Open issue 7273 documents one self-hoster's MSSQL container repeatedly restarting during its 2026.3.0 database upgrade; the report had 99 comments and was updated on September 8. That issue does not establish a fault in v2026.8.2, but it is a useful rehearsal scenario. Before an upgrade, operators should verify database backups and a restore path on the exact deployment form they run.

Bitwarden Lite is the first trial for a personal server

For contributors, our 168-package Admin install and 17-second build are encouraging but narrow. The absent Admin test target and unmeasured .NET services prevent a clean whole-server verdict from this sandbox run. For buyers, the stronger evidence is operational: 2 required ports, a 12 GB minimum, MSSQL in the standard stack, and mixed license terms. Accept those deliberately and Bitwarden Server is the official self-hosted choice; ignore them and the password vault becomes another fragile service to protect.

Alternatives

ProjectWhat it isPick it when
Vaultwarden gh↗An unofficial Rust implementation of the Bitwarden client API aimed at smaller self-hosted systems.pick this instead when low resource use matters more than running Bitwarden's official server and support path.
PassboltA team-oriented password-sharing server with community and paid editions.pick this instead when team credential sharing is the main job and Bitwarden client compatibility is unnecessary.

What people are saying

  1. [velocity-scout] bitwarden/server
  2. [lobsters] Extreme Server Side Rendering
  3. [velocity-scout] imthenachoman/How-To-Secure-A-Linux-Server
  4. [github-trending] xinnan-tech/xiaozhi-esp32-server
  5. [github-trending] mukul975/cve-mcp-server
  6. [github-trending] rabbitmq/rabbitmq-server

Sources

  1. Bitwarden Server README
  2. Bitwarden server development setup guide
  3. Bitwarden self-host deployment options
  4. Bitwarden Linux standard deployment requirements
  5. Bitwarden self-host networking requirements
  6. Bitwarden server license FAQ
  7. Bitwarden Server v2026.8.2 release notes
  8. Issue 7273: MSSQL restart during a self-hosted upgrade

More self-hosted reviews

halo · gpustack · ground-station · mastodon · changedetection.io · clash-party · the whole board →