Установка FreePBX 13 Asterisk 13 на Ubuntu 14

freepbx3 Данная статья предполагает установку Asterisk 13 на Сервер Ubuntu 14 + FreePBX 13 с самого нуля.

 Первоначальная настройка системы

При начальной установке Ubuntu выберите обязательно OpenSSH server и LAMP сервер. Установите дополнительные пакеты на ваше усмотрение.
ubuntuinstall

1. MySQL пароль
Через некоторое время система предложит задать root пароль для MySQL. Просто пропустите этот пункт оставив пароль пустым и нажав Enter.

2. После установки сервера, зайдите в терминал Ubuntu и обновите системные пакеты.

apt-get update && sudo apt-get upgrade -y

3. Установите требуемые зависимости

apt-get install -y build-essential linux-headers-`uname -r` openssh-server apache2 mysql-server\
  mysql-client bison flex php5 php5-curl php5-cli php5-mysql php-pear php5-gd curl sox\
  libncurses5-dev libssl-dev libmysqlclient-dev mpg123 libxml2-dev libnewt-dev sqlite3\
  libsqlite3-dev pkg-config automake libtool autoconf git unixodbc-dev uuid uuid-dev\
  libasound2-dev libogg-dev libvorbis-dev libcurl4-openssl-dev libical-dev libneon27-dev libsrtp0-dev\
  libspandsp-dev subversion libmyodbc

4. Перезагрузите сервер

reboot

5. Установите PearDB

pear install Console_Getopt

6. Скачайте исходные файлы

cd /usr/src
wget http://sourceforge.net/projects/lame/files/lame/3.99/lame-3.99.5.tar.gz &&
wget http://downloads.asterisk.org/pub/telephony/dahdi-linux-complete/dahdi-linux-complete-current.tar.gz &&
wget http://downloads.asterisk.org/pub/telephony/libpri/libpri-current.tar.gz &&
wget http://soft-switch.org/downloads/spandsp/spandsp-0.0.6pre21.tgz &&
git clone https://github.com/akheron/jansson.git &&
wget http://www.pjsip.org/release/2.4.5/pjproject-2.4.5.tar.bz2 &&
wget http://downloads.asterisk.org/pub/telephony/asterisk/asterisk-13-current.tar.gz

7. Скомпилируйте и установите Lame (mp3)

cd /usr/src &&
tar zxvf lame-3.99.5.tar.gz &&
cd lame-3.99.5 &&
./configure &&
make &&
make install

8. Скомпилируйте и установите DAHDI и LibPRI (Если у вас нет физически установленных карт T1, E1, то можно пропустить)

cd /usr/src &&
tar xvfz dahdi-linux-complete-current.tar.gz &&
tar xvfz libpri-current.tar.gz &&
rm -f dahdi-linux-complete-current.tar.gz libpri-current.tar.gz &&
cd dahdi-linux-complete-* &&
make all &&
make install &&
make config &&
cd /usr/src/libpri-current &&
make &&
make install

9. Скомпилируйте и установите pjproject

cd /usr/src &&
tar -xjvf pjproject-2.4.5.tar.bz2 &&
cd pjproject-2.4.5 &&
CFLAGS='-DPJ_HAS_IPV6=1' ./configure --prefix=/usr --enable-shared --disable-sound\
--disable-resample --disable-video --disable-opencore-amr &&
make dep &&
make &&
make install

10. Скомпилируйте и установите jansson

cd /usr/src/jansson &&
autoreconf -i &&
./configure &&
make &&
make install

11. Скомпилируйте и установите SpanDSP

cd /usr/src/ &&
tar zxvf spandsp-0.0.6pre21.tgz &&
cd spandsp-0.0.6 &&
./configure &&
make &&
make install

12. Скомпилируйте и установите Asterisk

cd /usr/src &&
tar xvfz asterisk-13-current.tar.gz &&
rm -f asterisk-13-current.tar.gz &&
cd asterisk-* &&
./configure &&
contrib/scripts/get_mp3_source.sh &&
make menuselect

После ввода команды make menuselect, вам будет предложено выбрать устанавливаемые модули. Большинство требуемых модулей выбираются автоматически. Для поддержки mp3 включите модуль ‘format_mp3’.

Asteriskmenuselect1

В разделе Core Sound Packages выберете поддержку русскоязычных файлов (если требуется)

Asteriskmenuselect2

В разделе Extra Sound Packages выберете дополнительные звуковые файлы.

Asteriskmenuselect3

 

Для работы факсов в меню Resource Modules необходимо активировать два модуля:
[*] res_fax
[*] res_fax_spandsp

Если до этого приложение было собрано корректно, то должна быть возможность выбрать эти модули, поставив около них звездочку.
Asteriskmenuselect4

 

В завершении выберете Save & Exit и продолжите установку.

make &&
make install &&
make config &&
ldconfig

13. Создайте пользователя Asterisk и задайте права пользователя.
Последняя строчка удаляет дефолтную папку html.

useradd -m asterisk &&
chown asterisk. /var/run/asterisk &&
chown -R asterisk. /etc/asterisk &&
chown -R asterisk. /var/{lib,log,spool}/asterisk &&
chown -R asterisk. /usr/lib/asterisk &&
rm -rf /var/www/html

Откройте файл

nano /etc/default/asterisk

и раскоментируйте строки
AST_USER=»asterisk»
AST_GROUP=»asterisk»
для запуска Астериска от пользователя asterisk

15. Перезагрузитесь

reboot

Проверьте состояние Asterisk подключившись к консоли

asterisk -vvvr
Установка и настройка FreePBX.

14. Настройте Apache

sed -i 's/\(^upload_max_filesize = \).*/\120M/' /etc/php5/apache2/php.ini &&
cp /etc/apache2/apache2.conf /etc/apache2/apache2.conf_orig &&
sed -i 's/^\(User\|Group\).*/\1 asterisk/' /etc/apache2/apache2.conf &&
sed -i 's/AllowOverride None/AllowOverride All/' /etc/apache2/apache2.conf &&
a2enmod rewrite &&
service apache2 restart

15. Настройка ODBC
Откройте файл /etc/odbcinst.ini и добавьте следующие строки. Обратите внимание, что эта команда предполагает, что вы устанавливаете на новую машину и что файл пуст. Если это не так, то лучше сделать это вручную.

cat >> /etc/odbcinst.ini << EOF
[MySQL]
Description = ODBC for MySQL
Driver = /usr/lib/x86_64-linux-gnu/odbc/libmyodbc.so
Setup = /usr/lib/x86_64-linux-gnu/odbc/libodbcmyS.so
FileUsage = 1
EOF

Откройте файла /etc/odbc.ini и добавьте следующий раздел. Обратите внимание, что, опять же, эта команда предполагает, что вы устанавливаете на новую машину, и файл пуст. Если это не так, то лучше сделать это вручную.

cat >> /etc/odbc.ini << EOF
[MySQL-asteriskcdrdb]
Description=MySQL connection to 'asteriskcdrdb' database
driver=MySQL
server=localhost
database=asteriskcdrdb
Port=3306
Socket=/var/run/mysqld/mysqld.sock
option=3
EOF

16. Установка FreePBX 13

cd /usr/src
wget http://mirror.freepbx.org/modules/packages/freepbx/freepbx-13.0-latest.tgz &&
tar vxfz freepbx-13.0-latest.tgz &&
rm -f freepbx-13.0-latest.tgz &&
cd freepbx &&
./start_asterisk start &&
./install -n

Если вы задали root пароль MySQL запустите скрипт установки без ключа -n. Тогда во время установки вам будет предложено ввести пароль

cd /usr/src
wget http://mirror.freepbx.org/modules/packages/freepbx/freepbx-13.0-latest.tgz &&
tar vxfz freepbx-13.0-latest.tgz &&
rm -f freepbx-13.0-latest.tgz &&
cd freepbx &&
./start_asterisk start &&
./install

Вот и все.

Подключимся к FreePBX

http://IP.Address.FreePBX.Server/admin
Первым делом, вам будет предложено задать имя пользователя и пароль FreePBX

2016-04-12_16-25-21

9 комментариев к “Установка FreePBX 13 Asterisk 13 на Ubuntu 14”

  1. СПАСИБО!!! Это САМАЯ ЛУЧШАЯ и СВЕЖАЯ на данный момент инструкция которая есть в интернете!

  2. Добрый день! Подскажите, я испрользую более новую версию ubuntu и имею php 7 версии, а потому при настройке ассоциаций из пункта 3 у меня выходят ошибки, что пакеты не найдены. Я, к огромнейшему сожалению, пока новичoк и не смог сам изменить код, для правильно исполнения команды (стало выводить еще больше ошибок), что нужно прописать, что бы не возникало проблем с пакетами?

    <>

    • Добрый день, Алексей.
      Даже не знаю чем Вам помочь. Данную инструкцию писал для себя, поэтому делюсь как есть.

      • Можно попробовать не ставить LAMP а вручную поставить mysql 5.5 и php5.5 но я не проверял

  3. У вас в инструкции нет раздела по созданию баз MySQL и юзера.
    В результате получаем ошибку при запуске FreePBX
    Invalid Database Permissions. The error was: SQLSTATE[HY000] [2002] Can’t connect to local MySQL server through socket ‘/var/run/mysqld/mysqld.sock’ (2)

    • Добрый день, Павел. Немного не верно. Астериск устанавливается на чистую систему с установленным LAMP пакетом (в него уже включен MYSQL). Смотрите пункт «Первоначальная настройка системы» При начальной установке Ubuntu выберите обязательно OpenSSH server и LAMP сервер.

  4. Добрый день.
    А разве не нужно после создания пользователя включить запуск астериска от его пользователя — раскоментировав в /etc/default/asterisk
    AST_USER=»asterisk»
    AST_GROUP=»asterisk»
    ??
    Без этого получаю ошибку FreePbx retrive_conf не обноружен

    • Добрый день. Вы правы, проверил всю инструкцию на виртуалке, многое изменилось. Теперь все работает, как надо.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

*