In this tutorial, we are going to learn how to install sysPass password manager on Ubuntu 22.04/Ubuntu 20.04. sysPass is opensource multiuser password manager written in PHP for business and personal use. It allows a centralized and collaborative passwords management. It saves passwords using bidirectional encryption with a master password to a database. Passwords are associated to accounts, and these have detailed information about it like: customer, category, notes, files, etc.
Install sysPass Password Manager on Ubuntu 22.04/Ubuntu 20.04
- Install Required Packages
In this guide, we are going to install the latest version of sysPass, v3.2.2 as of this writing. Successful setup of sysPass v3.2.2 requires LAMP stack installed;
- Web server (Apache/Nginx/Lighttpd) with SSL enabled.
- MariaDB >= 10.1
- PHP >= 7.0
- PHP modules; mysql, curl, json, gd, xml, mbstring, intl, readline, ldap (optional), mcrypt (optional for importing older XML export files)
We have covered installation of LAMP stack on Ubuntu 22.04/Ubuntu 20.04 in our previous guide. Check the link below;
Install LAMP Stack on Ubuntu 22.04
Ensure you install PHP 7.4 on Ubuntu 22.04. This is due to some compatibility issues between PHP 8 and Composer.
Install LAMP Stack on Ubuntu 20.04
If you followed our tutorial above, some of the required modules are not installed and hence can be installed by running the command below.
On Ubuntu 20.04;
apt install php-pear php php-cgi php-cli php-common \
php-fpm php-gd php-json php-readline php-curl php-intl \
php-ldap php-xml php-mbstring php-mysql
On Ubuntu 22.04;
apt install php-pear php7.4 php7.4-cgi php7.4-cli php7.4-common \
php7.4-fpm php7.4-gd php7.4-json php7.4-readline php7.4-curl php7.4-intl \
php7.4-ldap php7.4-xml php7.4-mbstring php7.4-mysql
Just to verify the MariaDB and PHP versions installed;
Ubuntu 20.04;
mysqld -V
mysqld Ver 10.3.34-MariaDB-0ubuntu0.20.04.1 for debian-linux-gnu on x86_64 (Ubuntu 20.04)
php -v
PHP 7.4.3 (cli) (built: Mar 2 2022 15:36:52) ( NTS )
Copyright (c) The PHP Group
Zend Engine v3.4.0, Copyright (c) Zend Technologies
with Zend OPcache v7.4.3, Copyright (c), by Zend Technologies
Ubuntu 22.04;
mysqld -V
mysqld Ver 10.6.7-MariaDB-2ubuntu1 for debian-linux-gnu on x86_64 (Ubuntu 22.04)
php -v
PHP 7.4.29 (cli) (built: Apr 28 2022 11:47:05) ( NTS )
Copyright (c) The PHP Group
Zend Engine v3.4.0, Copyright (c) Zend Technologies
with Zend OPcache v7.4.29, Copyright (c), by Zend Technologies
- Create sysPass Database and user
Login to MariaDB and create sysPass database and user will full privileges on the database. The names used here are not standard. Feel free to change them to suite your environment.
mysql -u root -p -e "create database syspass"
mysql -u root -p -e "create user spadmin@localhost identified by 'StronGP@ssw0RD'"
mysql -u root -p -e "grant all on syspass.* to spadmin@localhost"
mysql -u root -p -e "flush privileges"
- Download sysPass
You can choose to use the sysPass tarball available on the latest releases page or just clone its repository.
git clone https://github.com/nuxsmin/sysPass.git /var/www/html/syspass
- Install sysPass Dependencies
sysPass requires Composer that helps in managing all the required libraries and dependencies. To install Composer, navigate to the sysPass web directory and run the script below to programmatically install composer.
cd /var/www/html/syspass
Run the commands below to install composer.
wget -O composer-setup.php https://getcomposer.org/installer
sudo php composer-setup.php --install-dir=/usr/local/bin --filename=composer
Next, install the sysPass dependencies.
composer install --no-dev
- Setup sysPass directories permissions
The sysPass web directory should be owned by the web server user which is www-data in this case. Hence, run the command below to set up proper permissions and ownership of the directories.
chown www-data -R /var/www/html/syspass
chmod 750 /var/www/html/syspass/app/{config,backup}
- Restart Apache and MariaDB;
systemctl restart apache2 mariadb
- Finalize sysPass Setup
Once the installation is done, access sysPass from the browser to finalize on the setup. To access sysPass from web, use the URL;
http://<syspass-server>/syspass
Configure sysPass admin and Master password.
Next;
- Set the sysPass database connection details created above
- Choose the sysPass language
- check the hosting mode box
- hit install button to finalize on the setup.
Once the setup is done, you will be redirected to sysPass login page. Use the admin credentials set during setup.
When you successfully login, you will land on the default sysPass dashboard.
That is all it takes to install sysPass on Ubuntu 22.04/Ubuntu 20.04. You can now create different account, add users and access privileges.
Learn how to integrate sysPass with OpenLDAP for authentication by following the link below;
Integrate sysPass with OpenLDAP for Authentication
Other Related Tutorials;