Quick guide from my old notebooks to deploy Kamilio on a Centos 7 Box with minimal configuration
– Disable SELinux
Install base packages
– yum -y groupinstall Base
Perform server update
– yum -y update
Install Extra Packages for Enterprise Linux
– yum -y install epel-release
Install Database Service
– yum install mariadb-server mariadb php php-mysql php-gd php-curl
Configure Database Service to Start on Boot
– systemctl start mariadb
– systemctl enable mariadb
Check database service is now running
– systemctl status mariadb
Configure Database Root Password
– mysql_secure_installation
Add Kamailio’s Repo
– nano /etc/yum.repos.d/kamailio.repo
[kamailio]
name=RPMs for Kamailio on CentOS 7
type=rpm-md
baseurl=http://rpm.kamailio.org/stable/CentOS_7/
gpgcheck=1
gpgkey=http://rpm.kamailio.org/stable/CentOS_7/repodata/repomd.xml.key
enabled=1
Do system update
– yum update
Install Kamailio Packages
– yum install -y kamailio kamailio-ldap kamailio-mysql kamailio-postgres kamailio-debuginfo kamailio-xmpp kamailio-unixodbc kamailio-utils kamailio-tls kamailio-outbound kamailio-gzcompress kamailio-presence
Configure Kamailio to use the local mySQL Instance
– nano /etc/kamailio/kamctlrc
DBENGINE variable is set to MySQL. Remove the pound symbol to uncomment it.
Create Database for Kamilio
– kamdbctl create
Enter Y for each question
Edit /etc/kamailio/kamailio.cfg to configure Kamailio
– nano /etc/kamailio/kamailio.cfg
Add the following lines just below #!KAMAILIO.
#!define WITH_MYSQL
#!define WITH_TLS
#!define WITH_AUTH
#!define WITH_USRLOCDB
#!define WITH_NAT
#!define WITH_PRESENCE
#!define WITH_ACCDB
Start Kamailio Service
– service kamailio start
Configure Kamailio service to start on boot
– systemctl enable kamailio
You are now up and running