If you’re looking for a self-hosted, open-source password manager for your team, Passbolt is one of the best choices available. It ensures secure password sharing while giving you complete control over your data. In this guide, we’ll walk you through how to install Passbolt on Ubuntu step by step.
This guide is designed for beginners and experienced users, ensuring you understand everything from setting up a server to securing your installation. Let’s dive in!
What is Passbolt?

Passbolt is an open-source, self-hosted password manager designed for teams and businesses. Unlike cloud-based password managers, Passbolt allows you to host your own password vault, ensuring that your sensitive credentials stay under your control.
Key Features of Passbolt
- Open-source and self-hosted
- Secure password sharing within teams
- Two-factor authentication (2FA)
- GPG-based encryption for extra security
- API-driven and customizable
Now, let’s get started with the installation of Passbolt on Ubuntu.
Prerequisites for Installing Passbolt
Before you install Passbolt on Ubuntu, you’ll need to set up a Ubuntu server (Ubuntu 20.04 or 22.04 recommended) and ensure the following:
1. Minimum System Requirements
- Ubuntu 20.04 or 22.04 (LTS recommended)
- 1GB RAM (2GB or more recommended for better performance)
- 10GB of storage (depends on the number of users and stored passwords)
- A domain name (e.g.,
passbolt.example.com
) - A valid SSL certificate (Let’s Encrypt recommended)
- A non-root user with sudo privileges
2. Install Required Dependencies
Before we begin, update your system and install required dependencies:
Get exclusive access to all things tech-savvy, and be the first to receive
the latest updates directly in your inbox.
sudo apt update && sudo apt upgrade -y
sudo apt install -y curl gnupg unzip
Step 1: Set Up a LAMP Stack (Linux, Apache, MySQL, PHP)
Passbolt requires a web server, a database, and PHP. We’ll use Apache, MariaDB (MySQL), and PHP to create the environment.
1. Install Apache Web Server
sudo apt install apache2 -y
Start and enable Apache:
sudo systemctl start apache2
sudo systemctl enable apache2
2. Install MariaDB (MySQL) Database
sudo apt install mariadb-server -y
Secure the MariaDB installation:
sudo mysql_secure_installation
- Press
ENTER
for the current root password - Set a new strong root password
- Answer
Y
(Yes) to remove anonymous users - Answer
Y
(Yes) to disallow root login remotely - Answer
Y
(Yes) to remove the test database - Answer
Y
(Yes) to reload privileges
3. Install PHP and Required Extensions
Passbolt requires PHP 7.4 or later. Install PHP and its required extensions:
sudo apt install php php-cli php-mbstring php-xml php-bcmath php-ldap php-curl php-zip php-gd php-mysql -y
Verify the installation:
php -v
Ensure you see output similar to:
PHP 7.4.x (cli) (built: …)
Step 2: Configure the Database for Passbolt
Login to MariaDB:
sudo mysql -u root -p
Create a new database and user for Passbolt:
CREATE DATABASE passbolt_db;
CREATE USER 'passbolt_user'@'localhost' IDENTIFIED BY 'StrongPassword';
GRANT ALL PRIVILEGES ON passbolt_db.* TO 'passbolt_user'@'localhost';
FLUSH PRIVILEGES;
EXIT;
Replace "StrongPassword"
with a strong password of your choice.
Step 3: Install Passbolt on Ubuntu
1. Download Passbolt
First, add the Passbolt repository and install the software:

curl -fsSL https://download.passbolt.com/pub.key | gpg --dearmor | sudo tee /usr/share/keyrings/passbolt-keyring.gpg > /dev/null
echo "deb [signed-by=/usr/share/keyrings/passbolt-keyring.gpg] https://download.passbolt.com/ubuntu stable main" | sudo tee /etc/apt/sources.list.d/passbolt.list
Now update the system and install Passbolt:
sudo apt update
sudo apt install passbolt-ce-server -y
Step 4: Configure Passbolt
After installation, configure Passbolt using the setup wizard.
1. Run Passbolt Configuration Wizard
sudo passbolt-configure
Follow the prompts:
Database Name: passbolt_db
Database User: passbolt_user
Database Password: (Enter the password you set earlier)
Step 5: Secure Passbolt with SSL (Let’s Encrypt)
Passbolt needs a secure HTTPS connection. Use Let’s Encrypt to generate a free SSL certificate.
First, install Certbot:
sudo apt install certbot python3-certbot-apache -y
Now, generate and install the SSL certificate:
sudo certbot --apache -d passbolt.example.com
Replace passbolt.example.com
with your actual domain name. Follow the on-screen instructions to complete the setup.
Now, restart Apache to apply the changes:
sudo systemctl restart apache2
Step 6: Finalizing Passbolt Setup
Once everything is set up, open your browser and navigate to:
https://passbolt.example.com
- You will be greeted with the Passbolt setup wizard.
- Follow the on-screen instructions to create your admin account and install the Passbolt browser extension.
Step 7: Enable Passbolt Background Tasks (Cron Jobs)
Passbolt relies on background tasks to work properly. Add a cron job to automate these tasks:
sudo crontab -e
Add the following line:
/usr/bin/php /var/www/passbolt/bin/cake EmailQueue.sender >> /var/log/passbolt.log 2>&1
Save and exit.
Step 8: Test Your Passbolt Installation
Run the following command to check if Passbolt is running correctly:
sudo su -s /bin/bash -c "/usr/share/php/passbolt/bin/cake passbolt healthcheck" www-data
If everything is set up properly, you should see “No issues found!”
Step 9: Backups & Maintenance
1. Backup Your Database
mysqldump -u passbolt_user -p passbolt_db > passbolt_backup.sql
2. Backup Your Passbolt Configuration
tar -czvf passbolt_config_backup.tar.gz /etc/passbolt
3. Update Passbolt
Periodically update your system:
sudo apt update && sudo apt upgrade -y
Final Thoughts
Congratulations! This is how you can successfully install Passbolt on Ubuntu. Your self-hosted password manager is now secure, fast, and ready to use.
Next Steps:
- Add team members and manage permissions
- Customize settings in the Passbolt dashboard
- Set up automated database backups
FAQs
1. What is Passbolt, and why should I use it?
Passbolt is an open-source, self-hosted password manager designed for teams and businesses. It allows secure password sharing and full control over your data.
2. How do I install Passbolt on a local machine instead of a server?
You can install Passbolt on a local Ubuntu machine using the same steps. However, you must modify your /etc/hosts file if you’re not using a domain name.
3. What database does Passbolt use?
Passbolt supports MariaDB (recommended) or MySQL. PostgreSQL is not officially supported.