Установка 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 тоже подойдут.
Вот что нужно сделать:
Установите Linux и запишите IP-адрес системы.
Перейдите в режим root, затем загрузите текущие tar-файлы с http://downloads.digium.com/pub в /usr/src:
- Asterisk в /asterisk
- Zaptel в /zaptel
- Libpri в /libpri
- asterisk-addons в /asterisk-addons
- Следуйте приведенным ниже командам, чтобы распаковать каждый пакет в /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- Начните установку различных пакетов, следуя этим командам, снова как 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- Сейчас хорошее время, чтобы сделать резервные копии некоторых файлов. Создайте резервные копии как sip.conf, так и extensions.conf, которые находятся в папке /etc/asterisk, выполнив эти команды:
cd /etc/asterisk
cp sip.conf sip.backup
cp extensions.conf extensions.backup- Теперь, когда все установлено (если вы не получили ошибок, если да, то зайдите на linuxforums.org и оставьте сообщения о ваших проблемах [ЛУЧШИЙ ЛИНУКС-ФОРУМ!]), сейчас самое время запустить Asterisk в первый раз, введя эту команду:
cd /usr/sbin
asterisk -vvvvgc (это запустит в режиме отладки, что хорошо для выявления ошибок)- В базовой установке уже предустановлено несколько расширений, и вот они:
- расширение : 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:
Уберите комментарий с строки enabled=yes в /etc/asterisk/http.conf, чтобы включить встроенный микро HTTP-сервер Asterisk.
Если вы хотите, чтобы Asterisk действительно доставлял простые HTML-страницы, CSS, JavaScript и т. д., вам следует убрать комментарий с enablestatic=yes.
Настройте параметры bindaddr и bindport в соответствии с вашими требованиями к доступности или оставьте их по умолчанию.
Настройте префикс, если это необходимо, который должен быть началом любого URI на сервере для соответствия. По умолчанию это asterisk, и остальные инструкции предполагают это значение.
Разрешить доступ менеджера через HTTP
Убедитесь, что у вас установлены both enabled = yes и webenabled = yes в /etc/asterisk/manager.conf.
Вы также можете использовать httptimeout, чтобы установить значение по умолчанию для таймаута HTTP-соединений.
Убедитесь, что у вас есть имя пользователя/секрет менеджера.
После завершения этих изменений конфигурации вы можете перезагрузить или перезапустить 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-интерфейсов менеджера.
Обратите внимание, что для демонстрации не требуется никакой внешний веб-сервер.
Get new posts in your inbox
No spam. Unsubscribe anytime.