This Ansible role automates the installation and configuration of Passbolt, an open-source password manager, on Ubuntu 20.04 VMs. It is designed to ensure consistency and efficiency in setting up Passbolt across development and testing environments.
- Ansible installed on the control machine
- Ubuntu 20.04 VMs for deployment
- Vagrant for local testing (optional)
passbolt/
|-- defaults/
| `-- main.yml
|-- handlers/
| `-- main.yml
|-- tasks/
| |-- backup.yml
| |-- main.yml
| |-- ssl.yml
| `-- main.yml
|-- templates/
| |-- passbolt.php.j2
| `-- passbolt.nginx.conf.j2
|-- .gitignore
|-- LICENSE
|-- README.md
|-- vagrant.yml
`-- requirements.yml
passbolt_database_user
: Passbolt database userpassbolt_database_password
: Passbolt database passwordpassbolt_database_name
: Passbolt database namepassbolt_app_key
: Generated Passbolt app keypassbolt_security_salt
: Generated Passbolt security saltpassbolt_ssl_enabled
: Enable SSL/TLS (default: false)passbolt_backup_enabled
: Enable automated backups (default: true)
For more variables, check defaults/main.yml
.
None
-
Install the role using Ansible Galaxy:
ansible-galaxy install your_username.passbolt
-
Create an Ansible playbook (
passbolt.yml
):--- - name: Deploy Passbolt hosts: your_passbolt_servers become: yes roles: - your_username.passbolt
-
Run the playbook:
ansible-playbook -i your_inventory.ini passbolt.yml
For local testing, use the provided vagrant.yml
playbook:
ansible-playbook -i inventory/vagrant.ini vagrant.yml
If passbolt_ssl_enabled
is set to true, a self-signed SSL certificate will be generated.
If passbolt_backup_enabled
is set to true, automated backups are scheduled daily at 3:00 AM using cron.
This project is licensed under the MIT License - see the LICENSE file for details.