Asterisk 14 на CentOS 7: Установка из исходников

Данное руководство описывает установку Asterisk 14 из исходного кода на CentOS 7 без использования графических интерфейсов, таких как FreePBX, Elastix или AsteriskNOW. Описание актуально для Asterisk 14.x, хотя примеры используют версию 14.6.0 (не являющуюся LTS, срок поддержки — 1 год).

Подготовка сервера

В качестве операционной системы используется CentOS 7. В качестве аппаратной платформы подойдёт физический сервер, виртуальная машина (например, VirtualBox или Hyper-V) или даже Raspberry PI (RaspPBX). Для определения необходимых характеристик физического сервера можно использовать [ссылку_на_калькулятор].

В данном руководстве используется виртуальная машина VirtualBox со следующими параметрами:

  • ОС: Linux Red Hat 64 bit
  • ОЗУ: 1 Гб
  • Диск: 15 Гб
  • Сеть: мост (bridge mode), проводное подключение.

Установка CentOS 7 выполнена методом NetInstall ([ссылка_на_видео]).

Настройка сети и системы

После запуска виртуальной машины и входа в систему, установите текстовый редактор vim:

yum install vim

Рекомендуется использовать статический IP-адрес. Отредактируйте файл конфигурации сетевой карты:

vim /etc/sysconfig/network-scripts/ifcfg-enp0s3

Измените BOOTPROTO с dhcp на static и добавьте:

  • IPADDR: желаемый IP-адрес
  • GATEWAY: шлюз
  • NETMASK: маска подсети
  • DNS1: DNS-сервер (например, шлюз или публичный DNS Google)

Перезапустите сетевой сервис:

systemctl restart network.service

Для удобства используйте Putty, подключившись по статическому IP-адресу.

Отключение SELinux

Отключите SELinux для предотвращения конфликтов:

vim /etc/sysconfig/selinux

Измените SELINUX=enforced на SELINUX=disabled.

Установка зависимостей

Подключите репозиторий EPEL и обновите пакеты:

yum install epel-release
yum update -y

Перезагрузите систему. Установите зависимости Asterisk:

yum install -y gcc gcc-c++ mariadb-devel mariadb-server php make sendmail newt

(gcc, gcc-c++ — компиляторы; MariaDB — СУБД; php; make — утилита сборки; sendmail; newt — интерфейс управления модулями Asterisk).

Установка DAHDI и LibPRI (опционально)

DAHDI (Digium Asterisk Hardware Device Interface) — драйвер для аналоговых карт, LibPRI — для ISDN (PRI и BRI). Установка необязательна, если не используются соответствующие карты, но рекомендуется. DAHDI требуется некоторым приложениям, например, ConfBridge. Установка выполняется в /usr/src.

Установка PEAR и PJProject

Установите PEAR (фреймворк для PHP):

<команда_установки_PEAR>

Установите PJProject (мультимедийная библиотека для драйвера josip): (<команды для скачивания, распаковки и установки PJProject>)

Установка Asterisk

Загрузите Asterisk (<команда_загрузки_Asterisk>), распакуйте архив и перейдите в каталог. Запустите make menuselect:

make menuselect

Выберите устанавливаемые модули. Рекомендуется установить звуковые файлы в форматах, отличных от GSM (например, MP3), поддержку MP3 (Add-ons -> format_mp3), языковые пакеты (Core Sound Packages) и музыку на удержании (Music On Hold File Packages). Сохраните изменения (F12).

Завершите установку:

make
make install
make samples
make config

Настройка базы данных и пользователя

Создайте пользователя с правами доступа к необходимым директориям (<пункт 15 из файла конфигурации>). Перезапустите Asterisk:

systemctl restart asterisk

Подготовьте базу данных MariaDB: запустите mariadb, войдите в mysql (без пароля по умолчанию), создайте пользователей, базы данных asterisk и asteriskcdrdb и предоставьте необходимые права.

Запуск Asterisk CLI

Запустите Asterisk CLI:

asterisk -rvvv

Установка завершена.

Что будем искать? Например,программа