Ubuntu 22.04 LTS
Step by step
installation instructions explained
Mysql and packages
apt-get update
apt-get -y install tshark mtr librsvg2-bin gsfonts mysql-server ethtool
Change mysql settings
In /etc/mysql/mysql.conf.d/mysqld.cnf in [mysqld] section set options with respect to our doc Scaling#MySQL_performance and restart the service:
service mysql restart
Change root@localhost's login plugin from auth_socket to password(less) and create db for voipmonitor,
mysql> ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY "MySEcretPass"; mysql> CREATE DATABASE voipmonitor;
Beware That when you keep the password empty - with next mysql_update will be root@localhost user's password changed to auth_socket, and voipmonitor will not be able to use db anymore until you change root@localhost back. THis is true only on ubuntu systems, and only for root@localhost users without password set. Also the ALTER USER statement was introduced in MariaDB 10.2.0
PHP + modules and ioncube
apt-get -y install php php-gd php-mysql php-cli php-mbstring php-xml php-zip unzip apache2 libapache2-mod-php wget http://voipmonitor.org/ioncube/x86_64/ioncube_loader_lin_8.1.so -O /usr/lib/php/8.1/ioncube_loader_lin_8.1.so echo "zend_extension = /usr/lib/php/8.1/ioncube_loader_lin_8.1.so" > /etc/php/8.1/apache2/conf.d/01-ioncube.ini echo "zend_extension = /usr/lib/php/8.1/ioncube_loader_lin_8.1.so" > /etc/php/8.1/cli/conf.d/01-ioncube.ini
Install latest sniffer
cd /usr/src wget http://www.voipmonitor.org/current-stable-sniffer-static-64bit.tar.gz -O vm-sniffer.tar.gz tar xzf vm-sniffer.tar.gz cd voipmonitor* ./install-script.sh
Edit /etc/voipmonitor.conf (set mysqlpass,interface,sipport,cleandatabase,maxpoolsize options at least)
/etc/init.d/voipmonitor start systemctl enable voipmonitor
Install voipmonitor's GUI
cd /var/www/html wget "http://www.voipmonitor.org/download-gui?version=latest&major=5&phpver=81&festry" -O w.tar.gz tar xzf w.tar.gz mv voipmonitor-gui*/* ./ rm -f index.html chown www-data /var/spool/voipmonitor/ chown -R www-data /var/www echo " * * * * * root php /var/www/html/php/run.php cron" >> /etc/crontab kill -HUP `pgrep cron` service apache2 restart
Optional / Voluntary downloads
Binaries for the GUI
Following binaries are autodownloaded in time of first GUI login, but can be pre-installed from konsole as well
#HTML/SVG paints: 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' #SOX binary 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' #tshark binary 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' #mergecap 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' #T38 decoder wget http://sourceforge.net/projects/voipmonitor/files/wkhtml/t38_decode-3-i686.gz/download -O '/var/www/html/bin/t38_decode-3-i686.gz' gunzip '/var/www/html/bin/t38_decode-3-i686.gz' chmod +x '/var/www/html/bin/t38_decode-3-i686'
Installation copy & paste script
This copy and paste script works on fresh install of a linux (when none voipmonitor installed there), otherwise take care of stars '*' in cd,tar,mv commands
apt-get -y install tshark mtr librsvg2-bin gsfonts mysql-server ethtool php php-gd php-mysql php-cli php-mbstring php-xml php-zip unzip apache2 libapache2-mod-php wget -f
mysql -e "ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY \"\"" mysql -e "CREATE DATABASE voipmonitor" wget http://voipmonitor.org/ioncube/x86_64/ioncube_loader_lin_8.1.so -O /usr/lib/php/8.1/ioncube_loader_lin_8.1.so echo "zend_extension = /usr/lib/php/8.1/ioncube_loader_lin_8.1.so" > /etc/php/8.1/apache2/conf.d/01-ioncube.ini echo "zend_extension = /usr/lib/php/8.1/ioncube_loader_lin_8.1.so" > /etc/php/8.1/cli/conf.d/01-ioncube.ini cd /var/www/html wget "http://www.voipmonitor.org/download-gui?version=latest&major=5&phpver=81&festry" -O w.tar.gz tar xzf w.tar.gz mv voipmonitor-gui*/* ./ rm -f index.html chown www-data /var/spool/voipmonitor/ chown -R www-data /var/www echo " * * * * * root php /var/www/html/php/run.php cron" >> /etc/crontab kill -HUP `pgrep cron` service apache2 restart cd /usr/src wget http://www.voipmonitor.org/current-stable-sniffer-static-64bit.tar.gz -O vm-sniffer.tar.gz tar xzf vm-sniffer.tar.gz cd voipmonitor* ./install-script.sh --no-user-input systemctl enable voipmonitor
Before first login to GUI with browser after use of copy&paste for install, you need to edit mysql config and voipmonitor service config, and restart both service.