Debian 10: Difference between revisions
(Restructure: reduce excessive headings, use numbered steps) |
|||
| Line 1: | Line 1: | ||
= Install MariaDB | This guide describes the installation of VoIPmonitor on '''Debian 10 (Buster)''' with PHP 7.3. The installation consists of three main components: MariaDB database, Web GUI, and the Sensor (sniffer). | ||
{{Warning|Debian 10 reached end-of-life. Consider upgrading to [[Debian_12|Debian 12]] or [[Debian_13|Debian 13]] for new installations.}} | |||
== Prerequisites == | |||
* Fresh Debian 10 installation | |||
* Root access | |||
* Internet connectivity | |||
== MariaDB Installation == | |||
'''1. Install MariaDB server:''' | |||
apt-get update | |||
apt-get -y install mariadb-server | apt-get -y install mariadb-server | ||
'''2. Configure root authentication:''' | |||
Start | |||
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> ALTER USER root@localhost IDENTIFIED VIA mysql_native_password; | ||
MariaDB> SET PASSWORD = PASSWORD(""); | MariaDB> SET PASSWORD = PASSWORD(""); | ||
MariaDB> FLUSH PRIVILEGES; | MariaDB> FLUSH PRIVILEGES; | ||
MariaDB> exit | |||
'''3. Apply changes and create database:''' | |||
systemctl restart mariadb | |||
mysqladmin create voipmonitor | |||
= | == Web GUI Installation == | ||
== | |||
'''1. Install required packages:''' | |||
apt-get -y install php php-gd php-mysql php-cli php-curl libapache2-mod-php php7.3-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 http://voipmonitor.org/ioncube/x86_64/ioncube_loader_lin_7.3.so -O /usr/lib/php/20180731/ioncube_loader_lin_7.3.so | wget http://voipmonitor.org/ioncube/x86_64/ioncube_loader_lin_7.3.so -O /usr/lib/php/20180731/ioncube_loader_lin_7.3.so | ||
echo "zend_extension = /usr/lib/php/20180731/ioncube_loader_lin_7.3.so" > /etc/php/7.3/mods-available/ioncube.ini | echo "zend_extension = /usr/lib/php/20180731/ioncube_loader_lin_7.3.so" > /etc/php/7.3/mods-available/ioncube.ini | ||
| Line 33: | Line 42: | ||
ln -s /etc/php/7.3/mods-available/ioncube.ini /etc/php/7.3/cli/conf.d/01-ioncube.ini | ln -s /etc/php/7.3/mods-available/ioncube.ini /etc/php/7.3/cli/conf.d/01-ioncube.ini | ||
'''3. Download and install GUI:''' | |||
cd /var/www/html | cd /var/www/html | ||
rm -f index.html | rm -f index.html | ||
wget "http://www.voipmonitor.org/download-gui?version=latest&major=5&phpver=73 | wget "http://www.voipmonitor.org/download-gui?version=latest&major=5&phpver=73" -O w.tar.gz | ||
tar xzf w.tar.gz | tar xzf w.tar.gz | ||
mv voipmonitor-gui*/* ./ | mv voipmonitor-gui*/* ./ | ||
'''4. Configure cron and permissions:''' | |||
echo "* * * * * root php /var/www/html/php/run.php cron" >> /etc/crontab | |||
echo " * * * * * root php /var/www/html/php/run.php cron" >> /etc/crontab | kill -HUP $(pgrep cron) | ||
kill -HUP | mkdir -p /var/spool/voipmonitor/ | ||
mkdir /var/spool/voipmonitor/ | |||
chown www-data /var/spool/voipmonitor/ | chown www-data /var/spool/voipmonitor/ | ||
chown -R www-data /var/www/html | chown -R www-data /var/www/html | ||
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 | |||
{{Note|For 32-bit systems, use <code>current-stable-sniffer-static-32bit.tar.gz</code> instead.}} | |||
'''2. Configure sensor:''' | |||
Edit <code>/etc/voipmonitor.conf</code> and set at minimum: | |||
interface = eth0 | |||
spooldir = /var/spool/voipmonitor | |||
cleandatabase = 31 | |||
sipport = 5060 | |||
maxpoolsize = 102400 | |||
{{Note|Replace <code>eth0</code> with your actual network interface name. Interface names changed in Debian 9/10 (e.g., <code>ens33</code>).}} | |||
'''3. Start and enable sensor:''' | |||
systemctl start voipmonitor | |||
systemctl enable voipmonitor | systemctl enable voipmonitor | ||
= | == Finish Installation == | ||
You can | |||
Open your browser and navigate to <code>http://your-server-ip/</code> 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' | 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' | gunzip '/var/www/html/bin/phantomjs-2.1.1-x86_64.gz' | ||
| Line 67: | Line 97: | ||
gunzip '/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' | chmod +x '/var/www/html/bin/sox-x86_64' | ||
=Building | == 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 | 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 | mkdir /usr/src/voipmonitor-git | ||
cd /usr/src/voipmonitor-git | cd /usr/src/voipmonitor-git | ||
git clone https://github.com/voipmonitor/sniffer.git ./ | git clone https://github.com/voipmonitor/sniffer.git ./ | ||
./configure | ./configure | ||
make | make | ||
make install | make install | ||
== See Also == | |||
* [[Debian_12]] - Recommended for new installations | |||
* [[Scaling]] - Performance tuning | |||
* [[Configuration_file]] - Full configuration reference | |||
Latest revision as of 22:17, 11 December 2025
This guide describes the installation of VoIPmonitor on Debian 10 (Buster) with PHP 7.3. The installation consists of three main components: MariaDB database, Web GUI, and the Sensor (sniffer).
Prerequisites
- Fresh Debian 10 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. Apply changes and create database:
systemctl restart mariadb mysqladmin create voipmonitor
Web GUI Installation
1. Install required packages:
apt-get -y install php php-gd php-mysql php-cli php-curl libapache2-mod-php php7.3-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 http://voipmonitor.org/ioncube/x86_64/ioncube_loader_lin_7.3.so -O /usr/lib/php/20180731/ioncube_loader_lin_7.3.so echo "zend_extension = /usr/lib/php/20180731/ioncube_loader_lin_7.3.so" > /etc/php/7.3/mods-available/ioncube.ini ln -s /etc/php/7.3/mods-available/ioncube.ini /etc/php/7.3/apache2/conf.d/01-ioncube.ini ln -s /etc/php/7.3/mods-available/ioncube.ini /etc/php/7.3/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=73" -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 www-data /var/spool/voipmonitor/ chown -R www-data /var/www/html 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
- Debian_12 - Recommended for new installations
- Scaling - Performance tuning
- Configuration_file - Full configuration reference