Debian 11
This guide describes the installation of VoIPmonitor on Debian 11 (Bullseye) with PHP 7.4. The installation consists of three main components: MariaDB database, Web GUI, and the Sensor (sniffer).
Prerequisites
- Fresh Debian 11 installation
- Root access
- Internet connectivity
MariaDB Installation
1. Install MariaDB server:
apt-get update apt-get -y install mariadb-server
2. Configure root authentication:
Change the authentication method for root@localhost from unix_socket to mysql_native_password. Start mysql console and run:
mysql
MariaDB> ALTER USER root@localhost IDENTIFIED VIA mysql_native_password;
MariaDB> SET PASSWORD = PASSWORD("");
MariaDB> FLUSH PRIVILEGES;
MariaDB> exit
3. Configure MariaDB for performance:
Edit /etc/mysql/mariadb.conf.d/50-server.cnf and add these options to the [mysqld] section. See the scaling guide for more details.
innodb_flush_log_at_trx_commit = 2 innodb_file_format = barracuda innodb_buffer_pool_size = 8GB
4. Apply changes and create database:
systemctl restart mariadb mysqladmin create voipmonitor
Web GUI Installation
1. Install required packages:
apt-get install php php-gd php-mysql php-cli php-curl libapache2-mod-php php7.4-mbstring php-zip tshark mtr librsvg2-bin gsfonts rrdtool libtiff-tools wget
When asked if non-superusers can capture traffic, answer No.
2. Install IonCube loader:
IonCube is required for the encrypted PHP files in the GUI.
wget --no-continue http://voipmonitor.org/ioncube/x86_64/ioncube_loader_lin_7.4.so -O /usr/lib/php/20190902/ioncube_loader_lin_7.4.so echo "zend_extension = /usr/lib/php/20190902/ioncube_loader_lin_7.4.so" > /etc/php/7.4/mods-available/ioncube.ini ln -s /etc/php/7.4/mods-available/ioncube.ini /etc/php/7.4/apache2/conf.d/01-ioncube.ini ln -s /etc/php/7.4/mods-available/ioncube.ini /etc/php/7.4/cli/conf.d/01-ioncube.ini
3. Download and install GUI:
cd /var/www/html rm -f index.html wget "http://www.voipmonitor.org/download-gui?version=latest&major=5&phpver=74" -O w.tar.gz tar xzf w.tar.gz mv voipmonitor-gui*/* ./
4. Configure cron and permissions:
echo "* * * * * root php /var/www/html/php/run.php cron" >> /etc/crontab kill -HUP $(pgrep cron) mkdir -p /var/spool/voipmonitor/ chown -R www-data /var/www/html chown www-data /var/spool/voipmonitor/ systemctl restart apache2
Sensor Installation
1. Download and install sensor:
mkdir /usr/src/voipmonitor cd /usr/src/voipmonitor wget --content-disposition http://www.voipmonitor.org/current-stable-sniffer-static-64bit.tar.gz -O x.tar.gz tar xzf x.tar.gz cd voipmonitor-* ./install-script.sh
2. Configure sensor:
Edit /etc/voipmonitor.conf and set at minimum:
interface = eth0 spooldir = /var/spool/voipmonitor cleandatabase = 31 sipport = 5060 maxpoolsize = 102400
3. Start and enable sensor:
systemctl start voipmonitor systemctl enable voipmonitor
Finish Installation
Open your browser and navigate to http://your-server-ip/ to complete the web-based setup wizard.
Optional: Pre-download GUI Binaries
You can speed up the installation by pre-downloading binaries the GUI needs:
wget http://sourceforge.net/projects/voipmonitor/files/wkhtml/phantomjs-2.1.1-x86_64.gz/download -O '/var/www/html/bin/phantomjs-2.1.1-x86_64.gz' gunzip '/var/www/html/bin/phantomjs-2.1.1-x86_64.gz' chmod +x '/var/www/html/bin/phantomjs-2.1.1-x86_64' wget http://sourceforge.net/projects/voipmonitor/files/wkhtml/sox-x86_64.gz/download -O '/var/www/html/bin/sox-x86_64.gz' gunzip '/var/www/html/bin/sox-x86_64.gz' chmod +x '/var/www/html/bin/sox-x86_64'
Optional: Building from Source
To build the sensor from source code:
1. Install build dependencies:
apt-get -y install git build-essential unixodbc-dev libvorbis-dev libpcap-dev libsnappy-dev libcurl4-openssl-dev libicu-dev libjson-c-dev libssh-dev librrd-dev libglib2.0-dev libxml2-dev libfftw3-dev liblzma-dev liblzo2-dev libpng-dev libgcrypt-dev libgoogle-perftools-dev libmariadb-dev libmariadb-dev-compat
2. Clone and build:
mkdir /usr/src/voipmonitor-git cd /usr/src/voipmonitor-git git clone https://github.com/voipmonitor/sniffer.git ./ ./configure make make install
See Also
- Scaling - Performance tuning
- Configuration_file - Full configuration reference
- GUI_installation - Detailed GUI setup