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.