Годная статья , автор молодец, по этому запостю ее к себе с маленькими обновлениями.
Установку Asterisk 12 будем проводить на ОС Ubuntu 14.04.01 server x86_64, установленную на Oracle VM VirtualBox.
Заходим в терминал Ubuntu и обновим системные пакеты.
sudo apt-get upgrade
Перезагрузим систему
Синхронизируем время, для этого установим сервер NTP
Установим зависимости, которые будут необходимы для корректной работы Asterisk
В процессе установки нужно будет ввести пароль для root пользователя MYSQL
Перезагружаем систему
Создадим папку, куда будем скачивать дистрибутивы Asterisk, DAHDI и LibPRI
cd /usr/src/asterisk-12
Скачиваем исходники Asterisk 12.8.1 (на момент написания инструкции последняя актуальная версия), DAHDI (пакет, ранее называвшийся zaptel, который осуществляет обработку аналоговых и цифровых интерфейсов), libPRI (библиотека, предназначенная для работы с потоковыми TDM-интерфейсами ISDN: PRI (Primary Rate Interface) и BRI (Basic Rate Interface))
sudo wget http://downloads.asterisk.org/pub/telephony/dahdi-linux-complete/dahdi-linux-complete-2.10.1+2.10.1.tar.gz
sudo wget http://downloads.asterisk.org/pub/telephony/libpri/libpri-1.4.15.tar.gz
Распаковываем скаченные исходники
sudo tar xvfz libpri-1.4.15.tar.gz
sudo tar xvfz asterisk-12.8.1.tar.gz
Для начала компилируем DAHDI
sudo make all
sudo make install
sudo make config
Далее компилируем LibPRI
sudo make
sudo make install
Начнем установку Asterisk 12. Необходимые модули устанавливаем командой make menuselect.
sudo ./configure
При установке может вылететь ошибка
Для этого делаем следующее
sudo wget http://www.digip.org/jansson/releases/jansson-2.7.tar.gz
sudo tar xvfz jansson-2.7.tar.gz
cd jansson-2.7/
sudo ./configure --prefix=/usr/
sudo make clean
sudo make
sudo make install
sudo ldconfig
Далее запускаем еще раз установку Asterisk
sudo ./configure
sudo make menuselect
По большей части, все необходимые модули уже включены. Вы можете что-то добавить или удалить. При выборе модуля у него будет короткое описание, за что он отвечает.
В разделе Add-ons выбираем модули format_mp3(понадобиться чтобы делать голосовое меню не в gsm формате, а в mp3) и все опции относящиеся к MySQL. Они понадобятся в случае подключения FreePBX.
Не забудьте загрузите модуль meetme.
Во вкладке Core Sound Packages – выберите необходимые форматы звуковых пакетов.
В Music On Hold File Packages включаем все модули.
В Extras Sound Packages включаем первые 4 модуля содержащие EN
После настройки нажмите F12 для сохранения данных и выхода в окно консоли.
Далее вводим команду:
Во время выполнения функции make у меня вылезла ошибка.
*** ***
*** ---> READ THIS OR YOUR BUILD WILL FAIL <--- ***
*** ***
*** format_mp3 has been selected to be installed, but the ***
*** mp3 decoder library has not yet been downloaded into ***
*** the source tree. To do so, please run the following ***
*** command: ***
*** ***
*** $ contrib/scripts/get_mp3_source.sh ***
*** ***
**************************************************************
[CC] app_mysql.c -> app_mysql.o
[LD] app_mysql.o -> app_mysql.so
[CC] cdr_mysql.c -> cdr_mysql.o
[LD] cdr_mysql.o -> cdr_mysql.so
[CC] format_mp3.c -> format_mp3.o
format_mp3.c:39:24: fatal error: mp3/mpg123.h: Нет такого файла или каталога
#include "mp3/mpg123.h"
^
compilation terminated.
make[1]: *** [format_mp3.o] Ошибка 1
make: *** [addons] Ошибка 2
Для её устранения, вводим требуемую команду.
Запускаем опять команду make
Далее вводим команды
sudo make samples
sudo make config
Перезагружаем сервер
Проверяем работоспособность Asterisk. Вводим команду
Далее автор предлагает обезопасить систему путем ввода и передачи брозд правления новому пользователю. Я этого не делал, но все же приведу цитату.
Если необходимо обезопасить систему, можем задать пользователя для управления Asterisk. Создаем пользователя, его каталог и пароль. Далее даем ему права для работы с Asterisk.
sudo mkdir /home/username
sudo passwd username
sudo chown -R asterisk. /var/run/asterisk
sudo chown -R asterisk. /etc/asterisk
sudo chown -R asterisk. /var/{lib,log,spool}/asterisk
sudo chown -R asterisk. /usr/lib/asterisk
Перезагружаем сервер
Заходим под пользователем asterisk
Проверяем работоспособность Asterisk. Вводим команду
И попадаем в консоль управления Asterisk.
Сделаем некоторую настройку для MySQL. Заходим в MySQL.
Здесь сокращения:
-h host
-u user
-p password
Пробел после них отсутствует
Или mysql –u username -p
После ввода пароля мы окажемся в консоле mysql. Создадим пользователя asterisk с localhost и паролем ‘password’.
Пользователь создан. Для проверки посмотрим список пользователей:
Создадим базу данных asteriskcdrdb, asterisk.
create database asteriskcdrdb;
Далее определяем владельца базы данных
GRANT ALL PRIVILEGES ON asteriskcdrdb.* TO asterisk@localhost IDENTIFIED BY 'password';
flush privileges;