In this guide, you’ll learn to Install Siremis on Ubuntu 18.04 LTS (Bionic Beaver). Siremis is a web management interface for Kamailio SIP Server. It allows you to provision user profiles, routing rules, view accounting, registered phones, display charts, and to communicate with SIP server via xmlrpc.
If you’re following this guide, I believe you have Installed Kamailio SIP server on Ubuntu 18.04 server. Once you have a working Kamailio SIP server, you install Siremis to ease its administration. Here are the complete features of Kamailio as listed on the official website:
Main features of Siremis
- It provides system and database administration tools for Kamailio SIP Server
- subscriber, database aliases and speed dial management
- location table view
- dispatcher (load balancer), prefix-domain translation and least cost routing (lcr) management
- access control lists (user groups) and permissions management
- accounting records and missed calls vies
- manage call data records (generated from acc records)
- hash table, dial plan table and user preferences table management
- offline message storage, presence service and sip trace views
- communication with Kamailio SIP Server via XMLRPC
- communication with Kamailio SIP Server via JSONRPC
- communication with FreeSWITCH via event socket
- create and display charts from statistic data stored by Kamailio
- user location statistics charts
- SIP traffic load charts
- memory usage charts
- accounting records charts and summary table
- SQL-based CDR generation and rating billing engine
Install Siremis on Ubuntu 18.04
Siremis requires Apache web server and PHP installed on the host system. You also need CURL module is to use JSONRPC command panel. Download and Install these dependencies.
sudo apt-get update sudo apt-get install apache2 sudo a2enmod rewrite
sudo apt-get install php php-mysql php-gd php-curl php-xml libapache2-mod-php php-pear
XML_RPC package for XMLRPC command panel
Download and Install Siremis on Ubuntu 18.04
When you’re done with the installation of dependencies, download Siremis tarball or clone the code from Github. This installation will be done from Github repository source code. This will give us the latest release.
sudo apt-get -y install make make-guile
Clone the repository
# cd /var/www # git clone https://github.com/asipto/siremis Cloning into 'siremis'... remote: Counting objects: 8594, done. remote: Compressing objects: 100% (5/5), done. remote: Total 8594 (delta 0), reused 1 (delta 0), pack-reused 8589 Receiving objects: 100% (8594/8594), 12.63 MiB | 19.41 MiB/s, done. Resolving deltas: 100% (4900/4900), done.
Generate Apache Virtualhost configuration
# cd siremis # make apache24-conf
Modify output and place it on
# siremis apache 2.4 conf snippet ... <VirtualHost *:80> ServerName siremis.computingforgeeks.com ServerAdmin webmaster[email protected] DocumentRoot /var/www/siremis Alias /siremis "/var/www/siremis/siremis" <Directory "/var/www/siremis/siremis"> Options Indexes FollowSymLinks MultiViews AllowOverride All Require all granted <FilesMatch "\.xml$"> Require all denied </FilesMatch> <FilesMatch "\.inc$"> Require all denied </FilesMatch> </Directory> </VirtualHost>
.htaccess and Siremis configuration files by running:
# make prepare24 updating htaccess file for apache 2.4 ... deploying htaccess files for apache 2.4 in subdirs ... updating app.inc file... creating folders... done
Make sure that following directories have write access for web server user:
siremis/log siremis/session siremis/files siremis/themes/default/template/cpl
This is done by executing
make chown command
# make chown changing onwner to www-data:www-data ... chown -R www-data:www-data .
Create Kamailio database if you didn’t do it during Kamailio installation
# kamdbctl create MySQL password for root: INFO: test server charset INFO: creating database kamailio ... INFO: granting privileges to database kamailio ... INFO: creating standard tables into kamailio ... INFO: Core Kamailio tables succesfully created. Install presence related tables? (y/n): y INFO: creating presence tables into kamailio ... INFO: Presence tables succesfully created. Install tables for imc cpl siptrace domainpolicy carrierroute drouting userblacklist htable purple uac pipelimit mtree sca mohqueue rtpproxy rtpengine? (y/n): y INFO: creating extra tables into kamailio ... INFO: Extra tables succesfully created. Install tables for uid_auth_db uid_avp_db uid_domain uid_gflags uid_uri_db? (y/n): y INFO: creating uid tables into kamailio ... INFO: UID tables succesfully created.
Create DB user which will have full access to siremis Database
# mysql -u root -p Enter password: Welcome to the MariaDB monitor. Commands end with ; or \g. Your MariaDB connection id is 166 Server version: 10.3.9-MariaDB-1:10.3.9+maria~bionic-log mariadb.org binary distribution Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others. Type 'help;' or '\h' for help. Type '\c' to clear the current input statement. MariaDB [(none)]> GRANT ALL PRIVILEGES ON siremis.* TO [email protected] IDENTIFIED BY 'Password'; Query OK, 0 rows affected (0.001 sec) MariaDB [(none)]> quit Bye
Siremis Web Installation
Enable the Apache rewrite module and restart apache.
# sudo a2enmod rewrite Enabling module rewrite. $ sudo systemctl restart apache2
Visit http://yourwebserver.com/siremis/ to access the web page and start the installation wizard. When you do it the first time, you’ll be redirected to an installation wizard. Follow the steps.
On Database configuration, select all options like below
When done, login with:
username: admin Password: admin
Change the default password admin on the first login by clicking My Account at the top of the page.
Post Installation Tips
- Remove the install directory: siremis/install
If you want to run again installation wizard:
- restore directory: siremis/install
- remove file: siremis/install.lock
Enjoy administration of Kamailio with Siremis. For further visit Kamailio/Siremis Knowledgebase.