Установка Asterisk · 5 min read · Feb 07, 2026

Установка Asterisk PBX и веб-интерфейса Asterisk Provisioning на Linux

Установка Asterisk PBX и веб-интерфейса Asterisk Provisioning на Linux

Я прочитал о Asterisk и хотел протестировать его, так как вскоре буду управлять/устранять неполадки с ним на работе, поэтому я решил поработать с ним и получить некоторый базовый опыт. Сначала я настроил систему на базе Linux RedHat ES4, но думаю, что подойдет любая дистрибуция Linux. Kubuntu/Ubuntu, Fedora или Mandriva тоже подойдут.

Вот что нужно сделать:

  1. Установите Linux и запишите IP-адрес системы.

  2. Перейдите в режим root, затем загрузите текущие tar-файлы с http://downloads.digium.com/pub в /usr/src:

  • Asterisk в /asterisk
  • Zaptel в /zaptel
  • Libpri в /libpri
  • asterisk-addons в /asterisk-addons
  1. Следуйте приведенным ниже командам, чтобы распаковать каждый пакет в /usr/src (в этом примере я использую актуальные версии, измените номера версий на те, которые вы загрузили):
tar -zxvf asterisk-1.4.4.tar.gz  
ln -s asterisk-1.4.4 asterisk  
tar -zxvf zaptel-1.4.2.1.tar.gz  
ln -s zaptel-1.4.2.1 zaptel  
tar -zxvf libpri-1.4.0.tar.gz  
mv libpri-1.4.0 libpri  
tar -zxvf asterisk-addons-1.4.1.tar.gz  
mv asterisk-addons-1.4.1 asterisk-addons
  1. Начните установку различных пакетов, следуя этим командам, снова как root:

Должно быть выполнено перед сборкой Asterisk (ПРИМЕЧАНИЕ: Возможно, вам потребуется перезагрузить систему, если вы видите ошибки о недостающих исходниках ядра.):

cd /usr/src/zaptel  
./configure  
make menuselect (убедитесь, что ваше окно терминала настроено как минимум на 80x21, иначе команда выбора меню выдаст ошибку)  
make  
make config

Опционально (я все равно это сделал): Если у вас есть цифровые карты Zaptel:

cd ../libpri  
make clean  
make install

Должен быть установлен после zaptel и (если вам это нужно) libpri (я тоже это сделал):

cd ../asterisk  
./configure  
make menuselect # для дополнительной конфигурации  
make  
make install  
make samples  
make config

Опционально. Должен быть выполнен после установки Asterisk:

cd ../asterisk-addons  
./configure  
make  
make install
  1. Сейчас хорошее время, чтобы сделать резервные копии некоторых файлов. Создайте резервные копии как sip.conf, так и extensions.conf, которые находятся в папке /etc/asterisk, выполнив эти команды:
cd /etc/asterisk  
cp sip.conf sip.backup  
cp extensions.conf extensions.backup
  1. Теперь, когда все установлено (если вы не получили ошибок, если да, то зайдите на linuxforums.org и оставьте сообщения о ваших проблемах [ЛУЧШИЙ ЛИНУКС-ФОРУМ!]), сейчас самое время запустить Asterisk в первый раз, введя эту команду:
cd /usr/sbin  
asterisk -vvvvgc (это запустит в режиме отладки, что хорошо для выявления ошибок)
  1. В базовой установке уже предустановлено несколько расширений, и вот они:
  • расширение : 1000 (первое, которое стоит попробовать!)
  • расширение : 1234 (это расширение. Позвоните на vmail и введите это как расширение и пароль 4242)
  • расширение : 1235 (наберите это и оставьте сообщение себе)
  • расширение : 1236 (другое расширение)
  • Основное Vmail : 8500
  • Внешний тест для SIP вызова : 500
  • тест эха : 600

Так что звоните на эти номера, используя SIP-телефон, такой как X-Lite, или SIP-совместимый настольный телефон, такой как Mitel 5212/5224. Чтобы сделать звонок, введите номер расширения #, за которым следует знак @ и IP-адрес системы, на которой работает программное обеспечение Asterisk. Убедитесь, что брандмауэр отключен или настроен для разрешения входящего/исходящего трафика на порту 5060.

ПОЗДРАВЛЯЕМ! Вы это сделали!

Asterisk Manager

Существует также менеджер Asterisk. Чтобы включить его, вам нужно отредактировать файл /etc/asterisk/manager.conf и раскомментировать четыре строки ниже, удалив ;:

;[mark] (это имя пользователя для использования в astman)  
;secret = mysecret (это пароль для использования в astman)  
;read = system,call,log,verbose,command,agent,user,config  
;write = system,call.log,verbose,command,agent,user,config

так, чтобы это выглядело так:

[mark] (это имя пользователя для использования в astman)  
secret = mysecret (это пароль для использования в astman)  
read = system,call,log,verbose,command,agent,user,config  
write = system,call.log,verbose,command,agent,user,config

Сохраните файл.

Вам также нужно будет перезапустить Asterisk. Для этого на командной строке введите

restart 

Теперь.

После перезапуска, на командной строке Asterisk вы можете ввести manager show users, что покажет вам, какие пользователи менеджера настроены, следовательно, наш - mark с паролем mysecret.

Теперь откройте новое окно терминала, перейдите в режим root и введите:

/usr/sbin/astman localhost

имя пользователя = mark
пароль = mysecret

Позвоните на 1000, и вы увидите свой звонок там.

Вы также можете использовать веб-версию, называемую AJAM:

Асинхронный Javascript Asterisk Manager (AJAM)

AJAM - это новая технология, доступная в Asterisk 1.4, которая позволяет веб-браузерам или другим HTTP-совместимым приложениям и веб-страницам напрямую получать доступ к интерфейсу менеджера Asterisk (AMI) через HTTP. Настройка вашего сервера для обработки AJAM включает несколько шагов:

Настройте HTTP-сервер Asterisk:



  1. Уберите комментарий с строки enabled=yes в /etc/asterisk/http.conf, чтобы включить встроенный микро HTTP-сервер Asterisk.

  2. Если вы хотите, чтобы Asterisk действительно доставлял простые HTML-страницы, CSS, JavaScript и т. д., вам следует убрать комментарий с enablestatic=yes.

  3. Настройте параметры bindaddr и bindport в соответствии с вашими требованиями к доступности или оставьте их по умолчанию.

  4. Настройте префикс, если это необходимо, который должен быть началом любого URI на сервере для соответствия. По умолчанию это asterisk, и остальные инструкции предполагают это значение.

Разрешить доступ менеджера через HTTP

  1. Убедитесь, что у вас установлены both enabled = yes и webenabled = yes в /etc/asterisk/manager.conf.

  2. Вы также можете использовать httptimeout, чтобы установить значение по умолчанию для таймаута HTTP-соединений.

  3. Убедитесь, что у вас есть имя пользователя/секрет менеджера.

После завершения этих изменений конфигурации вы можете перезагрузить или перезапустить Asterisk, и вы должны иметь возможность указать вашему веб-браузеру конкретные URI, которые позволят вам получить доступ к различным веб-функциям. Полный список можно получить, введя show http в CLI Asterisk.

Примеры:

http://localhost:8088/asterisk/manager?action=login&username=mark&secret=mysecret

Это войдет в “HTML”-интерфейс менеджера. После входа в систему Asterisk сохраняет cookie в вашем браузере (действительно в течение времени httptimeout), который используется для подключения к той же сессии.

http://localhost:8088/asterisk/rawman?action=status 

Предполагая, что вы уже вошли в менеджер, этот URI даст вам “сырой” вывод менеджера для команды “status”.

http://localhost:8088/asterisk/mxml?action=status

Это даст вам тот же вид статуса, но представленный как AJAX-данные, теоретически совместимые с RICO ( http://www.openrico.org).

http://localhost:8088/asterisk/static/ajamdemo.html 

Если вы включили поддержку статического контента и выполнили make install, Asterisk предоставит демонстрационную страницу, которая представляет собой живой, но очень простой интерфейс, похожий на “astman”. Вы можете войти с вашим именем пользователя/секретом для менеджера и получить базовый вид каналов, а также передавать и завершать звонки. Он протестирован только в Firefox, но, вероятно, может работать и в других браузерах.

Включена примерная библиотека ( astman.js), чтобы облегчить создание HTML-интерфейсов менеджера.

Обратите внимание, что для демонстрации не требуется никакой внешний веб-сервер.

Share: X/Twitter LinkedIn

Get new posts in your inbox

No spam. Unsubscribe anytime.