Upgrade Passbolt from CE source install to Pro
This tutorial covers the case where you want to upgrade your current instance of passbolt CE v2.x into Passbolt Pro.
System requirements
Passbolt is reported to work on a large variety of operating system configurations. Therefore this help page is a generic guide that should work for most environments.
If you run into any issues with your particular configuration, please check the forum. Maybe someone else has had your issue. If not, make a post and the community will try to help you.
- Any Unix-like major distribution (Debian, Centos, Ubuntu, *BSD)
- A webserver (Apache or Nginx)
- A TLS server certificate for HTTPS
- PHP >= 7.3.0
- MariaDB/Mysql >= 5.5.59
- Composer >= 2
- GnuPG
- Git
The following PHP extensions (that may or may not come by default):
- PHP-GNUPG: for key verification and authentication.
- Cakephp default requirements: Intl, mbstring, simplexml
- Image manipulation: gd or imagick
- Database: Mysqlnd, pdo, pdo_mysql
- Some general default: xsl, phar, posix, xml, zlib, ctype, curl, json.
- Ldap
- & more depending on your configuration (for example if you want to use memcache for sessions).
Upgrade to Passbolt Pro
In the following examples we assume you are running passbolt using apache in the /var/www/passbolt
directory. You will need to replace these values with your local environment settings.
1. Take your site offline & install the required modules
There are multiple ways of doing that, the simplest is sending a notice by email to your users and stopping your webserver. The better approach would be to create a temporary html file and redirect your passbolt user there.
If you are planning to use LDAP integration you will need to make sure the PHP extension for LDAP
is installed and enabled (for example: apt-get install php-ldap
). Make sure you restart your webserver
when you add new PHP extensions (for example with: sudo service restart php-fpm
).
2. Download Passbolt Pro
Open a shell with the same user as your web server user. (usually, www-data for apache, nginx for nginx)
/var/www$ su -s /bin/bash www-data
Replace the previous passbolt by the new version.
/var/www$ mv ./passbolt ./passbolt_old
/var/www$ git clone https://bitbucket.org/passbolt_pro/passbolt_pro_api.git ./passbolt
3. Install the dependencies
/var/www$ cd ./passbolt
/var/www/passbolt$ composer install --no-dev
4. Copy the avatar folder
/var/www/passbolt$ cp -R ../passbolt_old/webroot/img/public/* ./webroot/img/public/.
5. Configure Passbolt Pro
To configure Passbolt Pro, the easiest way is to use the in-built configuration wizard. Just point your browser to your passbolt url.
You will be greeted by a welcome screen. Click on the Configure with wizard option and follow the instructions.


6. Your server is now ready to run passbolt
Once you have followed all the steps of the wizard, Passbolt Pro is ready to run. You will be redirected automatically to the login page where you can log in.
7. Ensure you don’t have duplicate cron jobs
As you are upgrading from CE to Pro you will need to make sure you don’t have duplicate cronjobs.
You can do this by checking /etc/cron.d/
You may see:
/etc/cron.d/passbolt-ce-server
/etc/cron.d/passbolt-pro-server
If this is the case you’ll want to run:
rm /etc/cron.d/passbolt-ce-server
As this will clear out the no longer needed CE job to send emails. If you leave this you may experience receiving duplicate emails.
The other regularly occuring job which you can remove will be under /etc/logrotate.d/
You may see:
/etc/logrotate.d/passbolt-ce-server
/etc/logrotate.d/passbolt-pro-server
If this is the case you’ll want to run:
rm /etc/logrotate.d/passbolt-ce-server
This will clean up the no longer needed log rotation job.
That’s it!
At this stage, Passbolt Pro should be working perfectly.
Any issue? Do contact us on the Passbolt Pro support with the email provided during your purchase.
Last updated
This article was last updated on April 3rd, 2018.