How to Host Your Own Password Manager with Bitwarden on a VPS
Leave a comment on How to Host Your Own Password Manager with Bitwarden on a VPS
Managing passwords securely is one of the most important responsibilities in today’s digital world. While cloud-based password managers are convenient, some users prefer full control over their data, especially when handling business or sensitive personal credentials.

Bitwarden, one of the most trusted open-source password managers, offers an excellent self-hosted edition that you can deploy on your own Virtual Private Server (VPS). This gives you complete ownership of your vault, zero external reliance, and the freedom to customize the environment as needed.
Why Self-Host Bitwarden?
Hosting Bitwarden on your own VPS provides several benefits:
- Full control over your data.
- No third-party cloud dependency.
- Ability to harden and customize security settings.
- Lower long-term costs compared to paid cloud subscriptions.
- Ideal for businesses with compliance requirements.
If you are privacy-conscious or simply enjoy managing your own infrastructure, this approach is perfect.
Step 1: Update Your System
Start by ensuring your server is up to date:
apt update && apt upgrade -y
Step 2: Install Docker and Docker Compose
Bitwarden uses Docker to run its services, so install Docker and Compose:
apt install docker.io docker-compose -y
systemctl enable docker
Verify the installation:
docker --version
docker-compose --version
Terminal Output Example:
root@racknerd-ed0eec2:~# docker --version
Docker version 28.2.2, build 28.2.2-0ubuntu1~22.04.1
root@racknerd-ed0eec2:~# docker-compose --version
docker-compose version 1.29.2, build unknown
root@racknerd-ed0eec2:~#
Step 3: Install Bitwarden Self-Hosted
Bitwarden provides an official installer script that automates the setup. Download the installation script:
curl -Lso bitwarden.sh "https://func.bitwarden.com/api/dl/?app=self-host&platform=linux"
chmod +x bitwarden.sh
Now start the installation:
./bitwarden.sh install
You will be prompted to configure:
- Domain Name: Enter the domain pointing to your VPS.
- SSL Setup: Do you want to use Let’s Encrypt? (y/n)
y
It will also prompt for an INSTALLATION ID and INSTALLATION KEY. You can obtain these by visiting https://bitwarden.com/host/ and adding your email address and preferred region.
Terminal Output Example:
Installation complete
If you need to make additional configuration changes, you can modify
the settings in ./bwdata/config.yml and then run:
`./bitwarden.sh rebuild` or `./bitwarden.sh update`
Next steps, run:
`./bitwarden.sh start`
root@racknerd-ed0eec2:~#
Step 4: Start Your Bitwarden Server
After installation, start the services:
./bitwarden.sh start
You can check that all containers are running:
docker ps
Terminal Output Example:
root@racknerd-ed0eec2:~# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
154348b4d59d ghcr.io/bitwarden/nginx:2025.11.0 "/entrypoint.sh" 54 seconds ago Up 52 seconds (healthy) 80/tcp, 0.0.0.0:80->8080/tcp, 0.0.0.0:443->8443/tcp bitwarden-nginx
f4197d0cfb73 ghcr.io/bitwarden/admin:2025.11.0 "/entrypoint.sh" About a minute ago Up 58 seconds (health: starting) 5000/tcp bitwarden-admin
7e30021ff7c6 ghcr.io/bitwarden/icons:2025.11.0 "/entrypoint.sh" About a minute ago Up About a minute (health: starting) 5000/tcp bitwarden-icons
92fab5584a3d ghcr.io/bitwarden/identity:2025.11.0 "/entrypoint.sh" About a minute ago Up About a minute (health: starting) 5000/tcp bitwarden-identity
e42aaa200ffb ghcr.io/bitwarden/web:2025.11.1 "/entrypoint.sh" About a minute ago Up About a minute (healthy) bitwarden-web
2d341048b51f ghcr.io/bitwarden/mssql:2025.11.0 "/entrypoint.sh" About a minute ago Up About a minute (health: starting) bitwarden-mssql
874513b30f37 ghcr.io/bitwarden/notifications:2025.11.0 "/entrypoint.sh" About a minute ago Up About a minute (health: starting) 5000/tcp bitwarden-notifications
953c855bac16 ghcr.io/bitwarden/api:2025.11.0 "/entrypoint.sh" About a minute ago Up About a minute (health: starting) 5000/tcp bitwarden-api
a33565543e0a ghcr.io/bitwarden/sso:2025.11.0 "/entrypoint.sh" About a minute ago Up About a minute (health: starting) 5000/tcp bitwarden-sso
b17439cddda5 ghcr.io/bitwarden/events:2025.11.0 "/entrypoint.sh" About a minute ago Up About a minute (health: starting) 5000/tcp bitwarden-events
7de77cbed4cb ghcr.io/bitwarden/attachments:2025.11.0 "/entrypoint.sh" About a minute ago Up About a minute (healthy) bitwarden-attachments
root@racknerd-ed0eec2:~#
If everything looks good, open your browser and visit: https://yourdomainname.tld. You should now see the Bitwarden web interface.
Step 5: Create an Admin Account
Click Create Account and set up your first user. Once logged in, go to the admin panel at:
https://yourdomainname.tld/admin
You will be prompted to enter your email address to log in and receive a secure login link.
Step 6: Install Clients
Bitwarden supports:
- Browser extensions (Chrome, Firefox, Edge, etc.)
- Desktop apps (Linux, macOS, Windows)
- Mobile apps (Android, iOS)
- Terminal CLI
When logging into any client, click the settings gear icon and under “Environment”, select Self-hosted environment and enter your server URL. You now have a fully private password manager synced across all devices!
Conclusion
By hosting Bitwarden on your own VPS, you gain total sovereignty over your password vault, the ability to scale as needed, and a secure private solution that rivals top commercial services. With Docker and Bitwarden’s streamlined installation script, deployment takes less than 30 minutes even for beginners.
📺 Watch the Video Tutorial on RackNerdTV
If you enjoy self-hosting privacy-focused applications, check out our tutorial on setting up OpenClaw, a private AI assistant server, via the RackNerdTV YouTube channel:
At RackNerd, you can deploy a Linux VPS with the flexibility and root-level access needed to host your own secure password manager and manage your environment seamlessly. If you prefer standard website hosting for public-facing sites, check out our shared web hosting plans.
👉 Visit https://racknerd.com to learn more about our hosting solutions.