BitWarden instead...
Passbolt is an open source password manager: https://github.com/passbolt.
You'll need a MySQL server to run Passbolt.
Note
This guide will not setup using HTTPS and will thus be running in "unsafe mode" for evaluation purposes only - I suggest you use Traefik & Let's Encrypt.
This uses my mysql-basic-auth
patched container... see MySQL Docker Setup.
docker volume create passbolt_mysql docker run -d --name passbolt-mysql \ -e MYSQL_RANDOM_ROOT_PASSWORD=true \ -e MYSQL_ONETIME_PASSWORD=true \ --mount src=passbolt_mysql,dst=/var/lib/mysql/ \ mysql-basic-auth
Insepct the logs, and reset the root
password... also create the passbolt user:
sleep 10 docker logs passbolt-mysql 2>&1 | grep 'GENERATED ROOT PASSWORD:' docker exec -it passbolt-mysql mysql -u root -p
ALTER USER 'root'@'localhost' IDENTIFIED BY '${NEW_PASS}'; CREATE USER 'passbolt'@'%' IDENTIFIED BY '${PASSWORD}'; CREATE DATABASE `passbolt`; GRANT ALL PRIVILEGES ON `passbolt`.* TO 'passbolt'@'%';
Note
${HOSTNAME}
must be a full and valid domain name... see this
docker volume create passbolt_img docker volume create passbolt_gpg docker run -it --name passbolt \ --link passbolt-mysql \ -p ${PORT}:80/tcp \ -e APP_FULL_BASE_URL=http://${HOSTNAME}:${PORT} \ -e DATASOURCES_DEFAULT_HOST=passbolt-mysql \ -e DATASOURCES_DEFAULT_USERNAME=passbolt \ -e DATASOURCES_DEFAULT_PASSWORD=${PASSWORD} \ -e DATASOURCES_DEFAULT_DATABASE=passbolt \ --mount src=passbolt_img,dst=/var/www/passbolt/webroot/img/ \ --mount src=passbolt_gpg,dst=/var/www/passbolt/config/gpg/ \ passbolt/passbolt:latest
Once up and running, detach with ^P
, ^Q
.
docker exec -u www-data passbolt \ /var/www/passbolt/bin/cake passbolt register_user \ -u ${EMAIL} \ -f ${FIRSTNAME} -l ${LASTNAME} \ -r admin
Follow the provided link, install the browser extension, and continue setup from there.
You'll need to:
Remember, the "passphrase" you are propted for is to unlock the GPG key you generated or provided.
IMPORTANT: The user's GPG key is stored only in the browser... therefore you must back it up and keep it safe.