Ubuntu 11.04 + Asterisk 1.8.6 + FreePBX 2.9
Размещено: 31-05-2014, 01:53 | Просмотров: 8917 | Комментариев: 0
Так как будем устанавливать всё на Ubuntu, чтобы не вводить каждый раз команду sudo перед всеми действиями, введем в терминале следующую команду и далее все будет выполняться от пользователя root.
root@computer:$ sudo su

1. Теперь установим пакеты которые необходимы для работы Asterisk и FreePBX (во время установки пакетов потребуется ввести пароль для MySQL сервера в дальнейшем он нам понадобиться):
root@computer:$ apt-get update
root@computer:$ apt-get install php5-mysql libapache2-mod-php5 mysql-server libmysqlclient15-dev php-db php5-gd php-pear sox curl g++ libncurses-dev libxml2-dev subversion openssh-server openssh-client

2. Установим пакеты необходимые для работы плат и модемов (если не планируется использовать платы или модемы с Asterisk то данный шаг можно пропустить):
root@computer:$ apt-get install dahdi
root@computer:$ /etc/init.d/dahdi start
root@computer:$ cd /tmp
root@computer:$ wget https://downloads.asterisk.org/pub/telephony/dahdi-linux-complete/releases/dahdi-linux-complete-2.5.0+2.5.0.tar.gz
root@computer:$ cd /usr/src
root@computer:$ tar -zxvf /tmp/dahdi-linux-complete-2.5.0+2.5.0.tar.gz
root@computer:$ cd dahdi-linux-complete-2.5.0+2.5.0/
root@computer:$ make
root@computer:$ make install
root@computer:$ make config

3. Качаем исходники Asterisk и FreePBX и распаковываем их:
root@computer:$ cd /tmp
root@computer:$ wget https://downloads.asterisk.org/pub/telephony/asterisk/releases/asterisk-1.8.6.0.tar.gz
root@computer:$ wget https://mirror.freepbx.org/freepbx-2.9.0.tar.gz
root@computer:$ cd /usr/src
root@computer:$ tar xvfz /tmp/asterisk-1.8.6.0.tar.gz
root@computer:$ tar xvfz /tmp/freepbx-2.9.0.tar.gz

4. А устанавливаем make:
root@computer:$ apt-get install make

5. А теперь устанавливаем Asterisk:
root@computer:$ cd /usr/src/asterisk-1.8.6.0
root@computer:$ ./configure

Следующую команду выполняем в окне терминала размером 80×27 и выбираем модули Asterisk которые нам понадобятся для работы:
root@computer:$ make menuselect

Выбираем модули в категори Add-ons — app_mysql, cdr_mysql, format_mp3, res_config_mysql. (Чтобы выбрать категорию нажмите — Enter, чтобы отметить модуль нажмите — Space(пробел), вернутся к выбору категорий — Стрелка Влево, чтобы сохранить изменения и выйти нажмите — X.)
Ubuntu 11.04 + Asterisk 1.8.6 + FreePBX 2.9

Качаем файлы для поддержки mp3 формата:
root@computer:$ contrib/scripts/get_mp3_source.sh

Собираем и устанавливаем Asterisk:
root@computer:$ make
root@computer:$ make install
root@computer:$ make config
root@computer:$ make samples

6. Начинаем настраивать Asterisk.
Создаем пользователя asterisk и добавляем пользователя www-data в группу asterisk:
root@computer:$ adduser asterisk --disabled-password --gecos "Asterisk PBX"
root@computer:$ adduser www-data asterisk

Теперь сделаем так чтобы Apache запускался от пользователя asterisk:
root@computer:$ nano /etc/apache2/envvars

Закомментируем следующие строки поставив в начале строки символ #
#export APACHE_RUN_USER=www-data
#export APACHE_RUN_GROUP=www-data

И после них добавим новые строки
export APACHE_RUN_USER=asterisk
export APACHE_RUN_GROUP=asterisk

Чтобы сохранить изменения нажмите Ctrl+O и Ctrl+X для выхода.
Теперь применим изменения к Apache:
root@computer:$ apache2ctl graceful

7. Asterisk установлен переходим к установке FreePBX:
root@computer:$ cd /usr/src/freepbx-2.9.0

Создадим и настроим базы MySQL необходимые для работы FreePBX. Выполним для этого следующие команды — где MyPass это ваш пароль к MySQL серверу указанный в пункте 1 при его установке:
root@computer:$ mysqladmin create asterisk -pMyPass
root@computer:$ mysqladmin create asteriskcdrdb -pMyPass
root@computer:$ mysql asterisk < SQL/newinstall.sql -pMyPass
root@computer:$ mysql asteriskcdrdb < SQL/cdr_mysql_table.sql -pMyPass
root@computer:$ mysql -pMyPass

root@computer:$ GRANT ALL PRIVILEGES ON asterisk.* TO asteriskuser@localhost IDENTIFIED BY 'MyPass';
GRANT ALL PRIVILEGES ON asteriskcdrdb.* TO asteriskuser@localhost IDENTIFIED BY 'MyPass';
flush privileges;
quit;

Перезапустим Asterisk:
root@computer:$ /etc/init.d/asterisk start

И запускаем установку FreePBX:
root@computer:$ ./install_amp

Во время установки указываем только следующие параметры все остальные оставляем стандартными(не указываем). Вместо MyPass ваш пароль, а вместо 192.168.0.101 — ваш ip.
root@computer:$ Enter your PASSWORD to connect to the 'asterisk' database:
[amp109] MyPass
Enter a PASSWORD to connect to the Asterisk Manager interface:
[amp111] MyPass
Enter the path to use for your AMP web root:
[/var/www/html]
/var/www/freepbx
Enter the IP ADDRESS or hostname used to access the AMP web-admin:
[xx.xx.xx.xx]
192.168.0.101
Enter a PASSWORD to perform call transfers with the Flash Operator Panel:
[passw0rd]
MyPass

8. FreePBX установлена, теперь надо изменить настройки для её нормальной работы:
root@computer:$ nano /etc/amportal.conf

Проверяем в этом конфиге установлена ли авторизация через базу данных.
AUTHTYPE=database

Если в AUTHTYPE выбран database всё ок. Если нет то меняем параметр на database.
Далее меняем пароль для доступ к админке записи разговоров для этого в следующей строке меняем MyPass на ваш пароль.
ARI_ADMIN_PASSWORD=MyPass

Сохраняем изменения нажав Ctrl+O и Ctrl+X для выхода.
Делаем исправление в конфиге кодировки, если вы в дальнейшем захотите использовать русский интерфейс в FreePBX (мне например удобнее оригинальный английский, но если вам будет нужен русский делаем следующее действие):
root@computer:$ nano /usr/share/locale/locale.alias

Удаляем стандартную строку кодировки russian и вместо нее добавляем следующие строки:
russian ru
ru ru_RU
ru_RU ru_RU.UTF-8

Затем:
root@computer:$ locale-gen ru_RU
root@computer:$ /etc/init.d/apache2 restart

Сохраняем изменения нажав Ctrl+O и Ctrl+X для выхода.
Теперь сделаем автостарт FreePBX:
root@computer:$ nano /etc/rc.local

Перед строкой exit 0 добавим следующую строку:
/usr/local/sbin/amportal start

Сохраняем изменения нажав Ctrl+O и Ctrl+X для выхода.
9. Выставим права на папки для нормальной работы:
root@computer:$ chown -R asterisk:asterisk /var/run/asterisk
root@computer:$ chown -R asterisk:asterisk /var/www/freepbx
root@computer:$ chown -R asterisk:asterisk /var/lib/asterisk

10. Перезагрузим систему для применения всех изменений и проверки авто запуска:
root@computer:$ reboot

Asterisk и FreePBX установлены. Зайдем в админку FreePBX по адресу — https://192.168.1.101/freepbx/ — где вместо 192.168.1.101 ваш ip. Логин и пароль по умолчанию — admin / admin.
Ubuntu 11.04 + Asterisk 1.8.6 + FreePBX 2.9

Применим настройки нажав кнопку — Apply Confiruration Changes.
Если после этого появится ошибка связанная с файлом — sip_notify.conf:
Ubuntu 11.04 + Asterisk 1.8.6 + FreePBX 2.9

Удалим файл — sip_notify.conf:
root@computer:$ rm /etc/asterisk/sip_notify.conf

После этого установим и обновим модули FreePBX. Для этого перейдём в меню Admin - Module Admin и нажмем кнопку Check Online, выберем модули которые хотим обновить и установить и нажмем кнопку Process, по окончанию скачки, обновления и установки модулей нажмем кнопку Return и затем применим изменения Apply Configuration Settings.
Ubuntu 11.04 + Asterisk 1.8.6 + FreePBX 2.9

Если после установки модулей появится ошибка связанная с файлом — ccss.conf, удалим его:
root@computer:$ rm /etc/asterisk/ccss.conf

Ошибка исчезнет после следующего применения настроек или после перезагрузки.