Найти тему

Установка Kamailio v5.3 в Debian 10

Оглавление

Пакеты Kamailio включены в официальный репозиторий стабильной версии Debian начиная с версии 8.0 и остаются в текущей стабильной версии (10.x, кодовое имя Buster). Установка Kamailio в Debian 10 – предмет сегодняшней статьи.

Обзор

Целью данного руководства является установка Kamailio с MySQL с использованием пакетов deb.

Для получения более подробной информации о проекте Kamailio посетите: kamailio.org.

Альтернативные хранилища APT

Если вы хотите использовать более свежую версию Kamailio, вы можете использовать репозитории APT, размещенные в проекте Kamailio.

Список APT – репозиториев, предлагаемых Kamailio – проектом для различных версий Debian или Ubuntu, включая сборки для стабильных и разрабатываемых версий, представлен по адресу:

Kamailio APT Repos: Debian – Ubuntu

Например, если вы хотите установить Kamailio v5.2.x в Debian Strech, добавьте следующие URL-адреса в конфигурацию APT:

deb http://deb.kamailio.org/kamailio52 stretch main
deb-src http://deb.kamailio.org/kamailio52 stretch main

Команды установки APT

apt инструмент используется для установки пакетов. Сначала запустите команду update для синхронизации с удаленным репозиторием, затем установите пакеты MySQL-server, Kamailio core и mysql.

apt update
apt install mysql-server
apt install kamailio kamailio-mysql-modules

Как только вышеприведенные команды будут завершены, вы можете проверить доступно ли приложение kamailio:

which

Есть много пакетов Kamailio, для различных модулей. Вы можете увидеть все доступные:

apt search kamailio

Например, чтобы загрузить модуль websocket, вы должны установить пакет kamailio-websocket-modules:

apt install kamailio-websocket-modules

Конфигурационные файлы

Файлы конфигурации находятся в папке /etc/kamailio/.

kamctlrc

Файл /etc/kamailio/kamctlrc позволяет настраивать инструменты kamctl и kamdbctl. Вам необходимо отредактировать его и установить SIP_DOMAIN свой домен службы SIP (или IP-адрес, если у вас нет имени хоста DNS, связанного с вашей службой SIP).

Установите также, DBENGINE чтобы активировать MYSQL и отрегулируйте другие настройки по вашему желанию. Очень важны пароли для подключения к MySQL серверу, соответственно, DBRWPW и DBROPW. По умолчанию их значения kamailiorw и kamailioro. Вы должны изменить их перед выполнением ‘kamdbctl create‘ (шаг подробно описан в разделе «Создание базы данных»).

kamailio.cfg

Это /etc/kamailio/kamailio.cfg файл конфигурации для kamailio. Отредактируйте его, чтобы включить некоторые функции, поставляемые с ним.

Чтобы включить использование MySQL серверной части сервера, аутентификацию пользователя и постоянное местоположение пользователя, добавьте после первой строки:

#!define WITH_MYSQL
#!define WITH_AUTH
#!define WITH_USRLOCDB

Создание базы данных

Чтобы создать необходимую структуру базы данных Kamailio, запустите:

kamdbctl create

Имя базы данных, созданное в MySQL называется kamailio. В процессе установки MySQL для доступа к серверу создаются два пользователя:

  • kamailio – (с паролем, установленным DBRWPW в kamctlrc) – пользователь с полными правами доступа к базе данных kamailio.
  • kamailioro – (с паролем, установленным DBROPW в kamctlrc) – пользователь, имеющий права доступа к базе данных kamailio только для чтения.

Доступ для этих двух пользователей ограничен localhost, но, как указано выше, рекомендуется изменить их пароли по умолчанию.

Если вы изменили значение DBRWPW в kamctlrc, вы должны обновить значение DBURL определения внутри kamailio.cfg.

#!define DBURL "mysql://kamailio:_NEW_DBRWPW_@localhost/kamailio"

Скрипты запуска

Сценарии Init.d

В зависимости от системы запуска, у вас может быть скрипт /etc/init.d/kamailio, который вы можете использовать для запуска или остановки Kamailio.

Сначала вы должны отредактировать файл /etc/default/kamailio и настроить параметры запуска скрипта kamailio.

/etc/init.d/kamailio start
/etc/init.d/kamailio stop

Сценарии systemd

Если по умолчанию система запускается через systemd, то Kamailio можно управлять с помощью systemctl:

systemctl start kamailio
systemctl stop kamailio

Во-первых, вам также может понадобиться отредактировать /etc/default/kamailio и настроить параметры запуска скрипта Kamailio, в частности, тот, который позволяет запускать Kamailio.

Добавление пользователей

Чтобы добавить пользователей, вы можете использовать команду kamctl:

kamctl add userid password

Пример:

kamctl add alice secret

Затем вы можете настроить свой телефон для регистрации в Kamailio, используя имя пользователя и пароль, указанные в приведенной выше команде. Установка Kamailio в Debian 10 произведена, далее необходимо настроить SIP-сервер под свои задачи.