Добавление репозитория Kamailio для её установки.
dnf config-manager --add-repo https://rpm.kamailio.org/centos/kamailio.repo
Установка Kamailio.
dnf install kamailio
После установки в директории /etc/kamailio будут созданы конфигурационные файлы.
Основные из их это kamailio.cfg и kamctlrc.
Данные файлы содержат информацию о том как разработчики реализовали тот или иной функционал.
Сделаем резервную копию этих файлов и создадим вместо них пустые, в которых будем вносить изменения.
cp /etc/kamailio/kamailio.cfg /etc/kamailio/kamailio.cfg.example
yes | cp /dev/null /etc/kamailio/kamailio.cfg
И
cp /etc/kamailio/kamctlrc /etc/kamailio/kamctlrc.example
yes | cp /dev/null /etc/kamailio/kamctlrc
Теперь в файле kamailio.cfg указываем минимальный конфиг для запуска kamailio.
mcedit /etc/kamailio/kamailio.cfg
request_route {
exit;
}
request_route - это основной маршрут через который проходят все SIP запросы.
Теперь добавляем в автозагрузку и стартуем kamailio.
systemctl enable kamailio
systemctl start kamailio
После внесения изменения в конфигурационный файл можно проверить файл на наличие ошибок.
kamailio -c
Подключение базы данных MariaDB к kamailio
В качестве ДБ мы выбрали MariaDB
Ссылка на инструкцию по минимальной настройке
Установка пакета с драйвером для нужной БД.
dnf install kamailio-mysql
В файле kamctlrc указываем данные для подключения
mcedit /etc/kamailio/kamctlrc
SIP_DOMAIN=XX.XX.XX.XX # Можно указать домен или ip адрес сервера
DBENGINE=MYSQL # Используемый драйвер для MYSQL или MariaDB
DBHOST=localhost # IP адрес базы данных к которой будем подключаться
DBPORT=3306 # Порт для подключения, по умолчанию 3306 для MYSQL или MariaDB
DBNAME=kamailio # Название создаваемой базы данных
DBRWUSER="kamailio" # Имя пользователя с правами на запись и чтение
DBRWPW="****" # Пароль для пользователя
DBROUSER="kamailioro" # Имя пользователя с правами только на чтение
DBROPW="****" # Пароль для пользователя
DBROOTUSER="root" # Корневой пользователь с правами на создание
DBROOTPW="****" # Пароль для корневого пользователя
Выполняем инициализацию базы данных Kamailio.
kamdbctl create
Инициализируем подключение в конфигурационном файле
mcedit /etc/kamailio/kamailio.cfg
#!define DBURL "mysql://kamailio:"****"@localhost:5433/kamailio"
loadmodule "db_mysql.so" # Подключаем пакет kamailio-mysql
Дописываем подключение к БД
modparam("auth_db", "db_url", DBURL); # указываем URL для подключения, берем его из ранее созданной директивы DBURL
Ссылка на вторую часть