Ubuntu 11.04 + Asterisk 1.8.6 + FreePBX 2.9 + настройка Sipnet + модем Huawei E1750. — Часть 1. — (Установка Asterisk и FreePBX).

Это моя первая статья, и в ней я расскажу, как установить на Ubuntu 11.04 — Asterisk и FreePBX, также расскажу об основных настройках FreePBX, о настройке Sipnet аккаунта в FreePBX и о работе модема Huawei E1750 с Asterisk и FreePBX. В данной части будет описана установка Asterisk и FreePBX. Итак приступим.

Так как будем устанавливать всё на Ubuntu, чтобы не вводить каждый раз команду sudo перед всеми действиями, введем в терминале следующую команду и далее все будет выполняться от пользователя root.

root@computer:$ sudo -i

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. А теперь устанавливаем 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.)

Качаем файлы для поддержки 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

5. Начинаем настраивать 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

6. 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

7. 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

Сохраняем изменения нажав Ctrl+O и Ctrl+X для выхода.

Теперь сделаем автостарт FreePBX:

root@computer:$ nano /etc/rc.local

Перед строкой exit 0 добавим следующую строку:

/usr/local/sbin/amportal start

Сохраняем изменения нажав Ctrl+O и Ctrl+X для выхода.

8. Выставим права на папки для нормальной работы:

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

9. Перезагрузим систему для применения всех изменений и проверки авто запуска:

root@computer:$ reboot

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

Применим настройки нажав кнопку — Apply Confiruration Changes.

Если после этого появится ошибка связанная с файлом — sip_notify.conf:

Удалим файл — sip_notify.conf:

root@computer:$ sudo -i
root@computer:$ rm /etc/asterisk/sip_notify.conf

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

Если после установки модулей появится ошибка связанная с файлом — ccss.conf, удалим его:

root@computer:$ rm /etc/asterisk/ccss.conf

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

Вот и всё Asterisk и FreePBX полностью установлены. О том как настроить FreePBX для работы с Sipnet и модемом Huawei E1750 читайте в следующих частях.

42 комментария

  • sattellite

    15.09.2011

    Ubuntu + FreePBX. Для побаловаться дома?
    Debian/Gentoo + Asterisk PBX реально для продакшн решения.

    Reply
  • admin

    19.09.2011

    Можно и для побаловаться дома (потестить что к чему, разобраться как работает и как настраивать), а можно и использовать как корпоративный сервер vo-ip в небольшой конторе )

    Reply
  • klistrod

    04.10.2011

    exit: 1
    Tue, 04 Oct 2011 15:09:08 +0300 — Unable to connect to manager localhost:5038 (111): Connection refused
    [FATAL] Unable to connect to Asterisk Manager from /var/lib/asterisk/bin/retrieve_conf, aborting

    1 error(s) occurred, you should view the notification log on the dashboard or main screen to check for more details.

    Вот такую ошибку выдает FreePBX ….

    Reply
    • admin

      04.10.2011

      По этой инфе и не сказать, что именно не так. Если сам Asterisk установился нормально, то скорее всего какой-то параметр неправильно был указан во время установки FreePBX.

      Reply
  • klistrod

    05.10.2011

    копался на форумах, пишут что в FreePBX 2.9 про пользователя и пароль amportal.conf manager.conf freepbx.conf

    Ставил на Debian 6, пошаманю еще раз.

    Reply
  • Дмитрий

    05.10.2011

    root@ubuntu:/usr/src/freepbx-2.9.0# ./install_amp
    Checking for PEAR DB..OK
    Checking for PEAR Console::Getopt..OK
    Checking user..OK
    Checking if Asterisk is running..running with PID: 819..OK
    Checking for /etc/amportal.conf..OK
    Reading /etc/amportal.conf..OK
    Checking for /etc/asterisk/asterisk.conf..OK
    Reading /etc/asterisk/asterisk.conf..OK
    Using asterisk as PBX Engine
    Checking for Asterisk version..1.8.6.0
    Checking for selinux..PHP Notice: Undefined offset: 0 in /usr/src/freepbx-2.9.0/install_amp on line 902
    OK
    Connecting to database..FAILED
    Try running ./install_amp —username=user —password=pass (using your own user and pass)
    [FATAL] Cannot connect to database

    Подскажите плз че делать??!

    Reply
    • admin

      05.10.2011

      FreePBX во время установки не может подсоединиться к MySQL серверу. Если MySQL сервер установлен и перед установкой FreePBX выполнены действия по созданию и настройке баз для неё, то ошибку могут вызывать только неверно указанные имя пользователя и пароль для подключения к MySQL, которые вы указываете во время установки FreePBX.

      Reply
      • korser

        16.11.2011

        Подскажите где и как подправить неверно указанные имя пользователя и пароль для подключения к MySQL, которые указывается во время установки FreePBX.
        Вроде все делал по описанию — нет подключения к базе данных и все на этом. Остальное все установилось.

        Reply
  • Дмитрий

    05.10.2011

    нашел ошибку, поставил все точно как у Вас в инструкции, остановился на том что после ребута не попадаю на веб админку freepbx…((

    Reply
    • admin

      07.10.2011

      Вы не можете залогиниться или у вас не открывается сама админка? Если у вас не открывается сама админка, то это может быть из-за того, что неверно была указана директория веб сервера, в статье конфиг указан из расчета, что основная директория веб сервера /var/www/. Может у вас она например /var/www/html/. Тогда при установке надо было указать не /var/www/freepbx а /var/www/html/freepbx.

      Reply
  • klistrod

    08.10.2011

    Прошлый раз ставил на Debian были ошибки как я понял в основном изза разницы ядра…
    Счас сделал в один один как тут описанно заработало обсалютно все кроме русского языка в freepbx ….
    что можете подсказать?

    Reply
  • klistrod

    08.10.2011

    Сам разобрался) Может кому поможет

    nano /usr/share/locale/locale.alias
    Удаляем строку с кодировкой для russian и добавляем 3 строки вместо нее:
    russian ru
    ru ru_RU
    ru_RU ru_RU.UTF-8

    Затем:
    #locale-gen ru_RU
    #/etc/init.d/apache2 restart

    Reply
    • Илья

      17.06.2012

      Огромное спасибо за статью, русский язык заработал после
      Затем:
      locale-gen ru_RU
      /etc/init.d/apache2 restart

      Автору респект!

      Reply
    • A

      16.11.2015

      Огромное спасибо автору за общую статью!Не одну АТС для небольшого офиса по ней построил!

      Reply
  • klistrod

    21.10.2011

    Странная штука с локальной сети в FreePBX пускает, а делаешь проброс портов из интернета не получается на нее зайти….

    Reply
    • admin

      26.10.2011

      У меня работает с такими настройками:
      Во FreePBX в Tools > Asterisk SIP Settings

      NAT — no
      IP Configuration — Static IP
      External IP — мой внешний IP

      Advanced General Settings
      Bind Address — мой локальный IP
      Bind Port — 5060

      С роутера проброшены следующие порты:
      5060 udp
      10000-20000 udp

      Если используете IAX то нужно пробросить и порты для него.

      Reply
  • klistrod

    04.11.2011

    Что делать иногда Fop не перегружается…..

    Reply
  • Ivan

    05.11.2011

    все делал по статье — астер установился, freepbx то-же (по крайней мере при установке никаких ошибок не выскакивало) только вот куда установился хз… https://192.168.0.10/freepbx/ пишет The requested URL /freepbx/ was not found on this server.
    Apache/2.2.20 (Ubuntu) Server at 192.168.0.10 Port 80
    если зайти https://192.168.0.10/

    It works!
    This is the default web page for this server.
    The web server software is running but no content has been added, yet.

    по адресу var/www/ — нет папки freepbx (вроде туда должен стать по умолчанию)
    куда копать???

    Reply
    • Ivan

      05.11.2011

      да! забыл указать
      Linux asterisk 3.0.0-12-generic #20-Ubuntu SMP Fri Oct 7 14:50:42 UTC 2011 i686 i686 i386 GNU/Linux
      ubuntu 11.10
      asterisk-1.8.8.0-rc2
      freepbx-2.9.0

      Reply
    • admin

      05.11.2011

      Если папки /var/www/freepbx нету то скорее всего во время установки FreePBX не был указан(или был указан неверно путь).

      По умолчанию ставится в /var/www/html

      Reply
      • Ivan

        05.11.2011

        хм.. где его указывать при установке не подскажете?? (путь имеется ввиду)

        Reply
      • Ivan

        05.11.2011

        проблема решилась редактированием /etc/apache2/sites-available/default с указанием путей куда проинсталился т.е. /var/www/html

        Reply
        • Алексей Саблин

          26.03.2012

          Ivan, а можно указать для примера кусок текста, куда и что Вы прописали? А то у меня тоже не грузится сама панель, при указании к ней прямого пути в веб-браузере.

          Reply
  • Artem

    26.12.2011

    Установил по инструкции, при переходе на адрес https://ip.address/freepbx отображает список Voicemail & Recordings (ARI),Flash Operator Panel (FOP), FreePBX Administration, но при переходе на FreePBX Administration и Voicemail & Recordings (ARI) выдает внутреннюю ошибку сервера, при том что Flash Operator Panel открывается. Не подскажете в чем может быть ошибка?

    Reply
  • Серегей

    14.02.2012

    Не работает флеш панель так как надо, получается что она не показывает кто онлайн кто нет, тоесть хоть в сети хоть нет иконка одинаковая, до этого ставил готовую сборку и там все работало, может кто знает в чем дело?

    Reply
  • tgies

    25.02.2012

    Although in russian it was a great help to me. Thanks to google translate…

    Reply
  • Алексей Саблин

    28.03.2012

    Нормально попадаю в FreePBX, только по ip: 127.x.x.x (во время установки пропустил ввод ip), а как поменять ip на внутрисетевой, т.е. на 192.168.x.x?

    И еще у меня машина при запуске первый раз рестартует с указанием ip 127.0.1.1 для apach, кажется.

    Reply
  • Максим

    15.07.2012

    Автору РЕСПЕКТ И УВАЖУХА!!! редко такие четкие доки на русском и без описек :)) так держать!!!

    Reply
  • Николай

    30.10.2012

    Спасибо за статью. Написано понятно и полезно. Правда до конца еще не доделал :), но решил поблагодарить заранее.

    Reply
  • Novel

    16.11.2012

    Друзья поясните пожалуйста делаю все по инструкции дохожу до пункта:
    И запускаем установку FreePBX:
    root@computer:$ ./install_amp

    Указываю пароль и адрес в следующем тексте:
    Enter your PASSWORD to connect to the ‘asterisk’ database:
    [amp109] 123456789
    Enter a PASSWORD to connect to the Asterisk Manager interface:
    [amp111] 123456789
    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.1.21
    Enter a PASSWORD to perform call transfers with the Flash Operator Panel:
    [passw0rd]
    123456789
    Говорит:
    Connecting to database..FAILED
    Try running ./install_amp —username=user —password=pass (using your own user and pass)
    [FATAL] Cannot connect to database
    root@qwerty-VirtualBox:/usr/src/freepbx-2.9.0# [passw0rd]
    В чем проблема?

    Reply
  • Sky-er

    16.02.2013

    Ошибка означает, что установка прервалась т.к. не смогла подключиться к базе mysql.
    нужно указать явно
    ./install_amp —username=root —password=pass (пароль для рутого доступа к mysql)

    Reply
  • ЮРІЙ

    21.02.2013

    Добрий вечір . Сьогодні установив усе працює дякую. Є одне питання який пароль і логін в даній установці на ARI ніяк не можу зайти, чи можна в конфігу змінити ?

    Reply
  • Паша

    17.03.2013

    >Если у вас не открывается сама админка, то это может быть из-за того, что неверно была указана директория веб сервера, в статье конфиг указан из расчета, что основная директория веб сервера /var/www/. Может у вас она например /var/www/html/. Тогда при установке надо было указать не /var/www/freepbx а /var/www/html/freepbx.

    Блин все равно админки нет. Я и так пробовал и так пробовал. Пишет сервак работает но типо отобразить ему нечего. Помогите пожалуйста. Желательно написать какой фал открыть и что как где переправить. Спасибо заранее!

    Reply
  • Роман

    16.05.2013

    Спасибо автору !
    решение на 100% энтерпрайс.
    я развернул уже 10 астеров на 1000 абонентов — за год 2 раза перегружал.
    трабла только одна — как перенести записи разговоров в другое место и затем очистить базу.

    Reply
  • Kirill

    03.06.2013

    После того как выполнил команду «root@computer:$ ./install_amp » — ошибся в настройке. Скажите — как исправить введенное?

    Reply
    • Михаил

      24.08.2013

      Удали файл /etc/amportal.conf и запусти установку заново

      Reply
  • Юрий

    05.11.2013

    Здравствуйте.
    Также столкнулся с проблемой, что после всей процедуры не открывается админка по адресу https://ip/freepbx/. Удалил файл /etc/amportal.conf, запустил установку ./install_amp заново. Указал путь /var/www/html/freepbx. Но ошибка все равно выходит: chown: невозможно получить доступ к «/var/www/freepbx»: Нет такого файла или каталога. Хотя католаг существует. Подскажите в чем проблемка.

    Reply
    • Павел

      14.05.2014

      Установил все по инструкции, при заходе на вебморду кидает на https://localhost/admin/ и пишет «The requested URL /admin/ was not found on this server.»
      Проблема в настройках апача?

      Reply
    • Igor

      17.06.2014

      попробуй chown: /var/www/html/freepbx

      Reply
    • Vlas

      24.02.2016

      Указал путь /var/www/html/freepbx. Но ошибка все равно выходит: chown: невозможно получить доступ к «/var/www/freepbx»
      Мне кажется — ответ в самом вопросе =))

      Reply
  • Павел

    14.05.2014

    Установил все по инструкции, при заходе на вебморду кидает на https://localhost/admin/ и пишет «The requested URL /admin/ was not found on this server.»
    Проблема в настройках апача?

    Reply
  • Igor

    17.06.2014

    Вобщем поставил все вроде по инструкции.
    получилось захожу https://192.168.0.253/
    получаю
    Voicemail & Recordings (ARI)

    Flash Operator Panel (FOP)

    FreePBX Administration

    кликаю на FreePBX Administration
    получаю ошибку 500

    похоже завтра придется все снести и ставить заново

    Reply

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