Installation Guide#
MultiFlexi is designed for easy installation on Debian-based systems. It supports multiple database backends (MySQL, PostgreSQL, SQLite) to fit various deployment needs.
Current Version: 1.29.0
Start monitoring your infrastructure immediately with the new MultiFlexi Probe included in this release.
Supported Platforms#
Debian 13 (Trixie) is the recommended platform for new installs. MultiFlexi packages are also published for Ubuntu 24.04 LTS, Ubuntu 22.04 LTS, and Debian 12 (Bookworm, build-maintained but no longer promoted for new installs). See Platform Support Matrix for the full support matrix, including end-of-coverage dates and why Debian 11 and 14 are not supported.
Prerequisites#
Before installing, ensure your system meets the following requirements:
Operating System: A supported Debian or Ubuntu release.
Memory: Minimum 2GB RAM (recommended for smooth database migrations).
Database: MySQL/MariaDB, PostgreSQL, or SQLite.
Web Server: Apache2 (recommended), Nginx, or compatible web server.
PHP: PHP 8.1 or newer with extensions:
intl,mbstring,xml,curl,mysql/pgsql/sqlite3.
Installation Steps#
Follow these steps to install MultiFlexi on your server.
Step 1: Configure Repository#
First, add the MultiFlexi repository to your system’s package sources.
# Update package lists
sudo apt update
# Install dependencies for repository management
sudo apt install -y lsb-release apt-transport-https bzip2 ca-certificates curl
# Add GPG key
sudo curl -fsSL https://repo.multiflexi.eu/KEY.gpg -o /usr/share/keyrings/multiflexi-archive-keyring.gpg
# Add repository source
echo "deb [signed-by=/usr/share/keyrings/multiflexi-archive-keyring.gpg] https://repo.multiflexi.eu/ $(lsb_release -sc) main" | sudo tee /etc/apt/sources.list.d/multiflexi.list
# Refresh package lists
sudo apt update
Step 2: Install MultiFlexi#
Choose the package corresponding to your preferred database backend.
Option A: MySQL / MariaDB (Recommended for Production)
sudo apt install multiflexi-mysql
Option B: SQLite (Testing / Development)
sudo apt install multiflexi-sqlite
Note
PostgreSQL support is currently experimental (multiflexi-postgresql).
Step 3: Database Configuration#
During installation, the dbconfig-common tools will prompt you to configure the database.
Configure database for multiflexi? -> Select Yes.
Password for the new user: You can leave this blank to let the system generate a secure random password.
Tip
Configuration settings are automatically saved to /etc/multiflexi/multiflexi.env.
Note
After the database backend package (multiflexi-sqlite, multiflexi-mysql,
or multiflexi-pgsql) is configured, its post-install script automatically
creates /etc/multiflexi/multiflexi.env from database.env if that file
does not yet exist. This applies to all database backends and ensures
multiflexi-cli can locate its configuration immediately without any manual
copy step.
Step 3b: Credential Encryption Key#
multiflexi-common (pulled in as a dependency of multiflexi-mysql /
multiflexi-sqlite) asks, via debconf, how to set up the master key
used to encrypt stored credential secrets (passwords, API keys, tokens) at
rest:
Choice |
Effect |
|---|---|
Generate a random key automatically (default) |
A secure key is generated with |
Enter my own key |
Prompts (password-style input, not echoed) for a key to use instead — for example to match an existing deployment or a key managed externally. Leaving this blank falls back to generating one. |
Do not encrypt credentials (development only) |
Sets |
Warning
Back up ENCRYPTION_MASTER_KEY somewhere safe. If it is ever lost,
credentials already encrypted with it become permanently unrecoverable.
See Backup and Recovery.
This prompt only runs once — on upgrade, or on any subsequent
dpkg-reconfigure multiflexi-common, it is skipped automatically if
either ENCRYPTION_MASTER_KEY or DATA_ENCRYPTION_ENABLED=false is
already present in /etc/multiflexi/multiflexi.env, so an existing
choice (and any already-encrypted data) is never overwritten. To change
your choice later, run:
sudo dpkg-reconfigure multiflexi-common
The web interface itself does not require ENCRYPTION_MASTER_KEY to be
set — it works whether encryption is configured or not. See
Configuration for the full list of encryption-related
environment variables and Credential Management for how
redaction and encryption interact.
Step 4: Install Applications#
MultiFlexi is a modular platform. Core functionality is enhanced by installing applications.
To list available MultiFlexi applications:
apt search multiflexi
To install the full suite of standard applications:
sudo apt install multiflexi-all
Post-Installation Verification#
After installation, verify that MultiFlexi is running correctly.
Web Interface: Open your browser and navigate to
http://<your-server-ip>/multiflexi. You should see the login screen.Service Status: Check system logs to ensure no errors occurred during startup.
journalctl -u apache2 # Or your web server service
Next Steps#
Proceed to First Run for initial configuration.
Configure MultiFlexi Credential Management System to connect your business systems.