Difference between revisions of "Debian 11"

From VoIPmonitor.org
Jump to navigation Jump to search
 
(8 intermediate revisions by the same user not shown)
Line 13: Line 13:
 
  innodb_file_format = barracuda
 
  innodb_file_format = barracuda
 
  innodb_buffer_pool_size ​= 8GB
 
  innodb_buffer_pool_size ​= 8GB
 +
#starting from mariadb 10.6 is necesasry to disable read-only for compressed tables
 +
innodb_read_only_compressed=OFF
  
 
==Restart mariadb service==
 
==Restart mariadb service==
 
  service mariadb restart
 
  service mariadb restart
 
==create database needed for voipmonitor==
 
==create database needed for voipmonitor==
mysqladmin create voipmonitor
+
mysqladmin create voipmonitor
  
 
=Install voipmonitor sensor=
 
=Install voipmonitor sensor=
 
==Installing sensor - voipmonitor service==
 
==Installing sensor - voipmonitor service==
mkdir /usr/src/voipmonitor
+
mkdir /usr/src/voipmonitor
cd /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
+
wget --content-disposition http://www.voipmonitor.org/current-stable-sniffer-static-64bit.tar.gz -O x.tar.gz
tar xzf x.tar.gz  
+
tar xzf x.tar.gz
cd voipmonitor-*
+
cd voipmonitor-*
./install-script.sh
+
./install-script.sh
 
  #set in /etc/voipmonitor.conf at least interface option it can be like interface=ens33
 
  #set in /etc/voipmonitor.conf at least interface option it can be like interface=ens33
  
 
= Install voipmonitor GUI=
 
= Install voipmonitor GUI=
 
==Installation of packages needed by voipmonitor's GUI==
 
==Installation of packages needed by voipmonitor's GUI==
  ​apt-get install php php-gd php-mysql php-cli libapache2-mod-php php7.4-mbstring php-zip tshark mtr librsvg2-bin gsfonts rrdtool libtiff-tools
+
  apt-get install php php-gd php-mysql php-cli libapache2-mod-php php7.4-mbstring php-zip tshark mtr librsvg2-bin gsfonts rrdtool libtiff-tools
mysqladmin create voipmonitor
 
 
(When asked if non-superuser can capture traffic You can answer No)
 
(When asked if non-superuser can capture traffic You can answer No)
  
Line 49: Line 50:
  
 
==Finalizing steps==
 
==Finalizing steps==
For working alerts / reports, system needs to run periodicaly script using scheduller
+
For working alerts / reports, system needs to run periodicaly script using scheduller
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 `pgrep cron`
 
  mkdir /var/spool/voipmonitor/
 
  mkdir /var/spool/voipmonitor/
  
Set privileges for apache  
+
Set privileges for apache
chown -R www-data /var/www/html
+
chown -R www-data /var/www/html
 
  /etc/init.d/apache2 restart
 
  /etc/init.d/apache2 restart
 
  chown www-data /var/spool/voipmonitor/
 
  chown www-data /var/spool/voipmonitor/
Line 86: Line 87:
  
 
==First install necesary develop packages==
 
==First install necesary develop packages==
​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
  
 
==Then download voipmonitor sources and build==
 
==Then download voipmonitor sources and build==

Latest revision as of 16:14, 25 November 2021

Install MariaDB

apt-get -y install mariadb-server

change auth method for root@localhost user from unix_socket to mysql_native_password type with no password

Start the mysql console first with mysql and push following queries:

MariaDB> ALTER USER root@localhost IDENTIFIED VIA mysql_native_password;
MariaDB> SET PASSWORD = PASSWORD("");
MariaDB> FLUSH PRIVILEGES;

Set mariadb's config

in /etc/mysql/mariadb.conf.d/50-server.cnf edit [mysqld] section and add options, like suggested in scaling https://www.voipmonitor.org/doc/Scaling#MySQL_performance section fo our doc

innodb_flush_log_at_trx_commit = 2
innodb_file_format = barracuda
innodb_buffer_pool_size ​= 8GB
#starting from mariadb 10.6 is necesasry to disable read-only for compressed tables
innodb_read_only_compressed=OFF

Restart mariadb service

service mariadb restart

create database needed for voipmonitor

mysqladmin create voipmonitor

Install voipmonitor sensor

Installing sensor - voipmonitor service

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
#set in /etc/voipmonitor.conf at least interface option it can be like interface=ens33

Install voipmonitor GUI

Installation of packages needed by voipmonitor's GUI

apt-get install php php-gd php-mysql php-cli libapache2-mod-php php7.4-mbstring php-zip tshark mtr librsvg2-bin gsfonts rrdtool libtiff-tools

(When asked if non-superuser can capture traffic You can answer No)

Installing IOncube - php loader / decryptor

wget http://voipmonitor.org/ioncube/x86_64/ioncube_loader_lin_7.4.so -O /usr/lib/php/7.4/ioncube_loader_lin_7.4.so
echo "zend_extension = /usr/lib/php/7.4/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

Installing package for voipmonitor GUI

cd /var/www/html
rm -f index.html 
wget "http://www.voipmonitor.org/download-gui?version=latest&major=5&phpver=73&festry" -O w.tar.gz
tar xzf w.tar.gz
mv voipmonitor-gui*/* ./

Finalizing steps

For working alerts / reports, system needs to run periodicaly script using scheduller

echo " * * * * * root php /var/www/html/php/run.php cron" >> /etc/crontab
kill -HUP `pgrep cron`
mkdir /var/spool/voipmonitor/

Set privileges for apache

chown -R www-data /var/www/html
/etc/init.d/apache2 restart
chown www-data /var/spool/voipmonitor/

set service to be started at a boot time

systemctl enable voipmonitor
#edit /etc/voipmonitor.conf (at least mysql options and maxpoolsize option)
/etc/init.d/voipmonitor start

Binaries downloaded with first access of the GUI (voluntary)

You can speedup the installation process by downloading and installing binaries the GUI needs with following steps for 64bits only.

​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'
wget http://sourceforge.net/projects/voipmonitor/files/wkhtml/tshark-2.3.0.3-x86_64.gz/download -O '/var/www/html/bin/tshark-2.3.0.3-x86_64.gz'
gunzip '/var/www/html/bin/tshark-2.3.0.3-x86_64.gz'
chmod +x '/var/www/html/bin/tshark-2.3.0.3-x86_64'
wget http://sourceforge.net/projects/voipmonitor/files/wkhtml/mergecap-2.3.0.3-x86_64.gz/download -O '/var/www/html/bin/mergecap-2.3.0.3-x86_64.gz'
gunzip '/var/www/html/bin/mergecap-2.3.0.3-x86_64.gz'
chmod +x '/var/www/html/bin/mergecap-2.3.0.3-x86_64'
wget http://sourceforge.net/projects/voipmonitor/files/wkhtml/t38_decode-2-i686.gz/download -O '/var/www/html/bin/t38_decode-2-i686.gz'
gunzip '/var/www/html/bin/t38_decode-2-i686.gz'
chmod +x '/var/www/html/bin/t38_decode-2-i686'

Building service's binary file from sources (voluntary)

Following describes how to build and install custom voipmonitor binary from sources (tested with sources from 28.8)

First install necesary develop packages

​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

Then download voipmonitor sources and build

​ mkdir /usr/src/voipmonitor-git ​ cd /usr/src/voipmonitor-git ​ git clone https://github.com/voipmonitor/sniffer.git ./ ​ cd sniffer ​ ./configure ​ make

​make install