Гид по технологиям

Установка Asterisk и Asterisk GUI на Ubuntu 20.04

5 min read Телефония Обновлено 24 Nov 2025
Asterisk на Ubuntu 20.04 — установка и GUI
Asterisk на Ubuntu 20.04 — установка и GUI

Короткое описание

Asterisk — свободный VoIP‑сервер для построения телефонии на базе TCP/IP. В этом руководстве показано, как собрать Asterisk из исходников, установить Asterisk GUI и выполнить базовую настройку и защиту сервера на Ubuntu 20.04.

Важно: инструкции предполагают, что у вас есть доступ к серверу с правами root и статический IP. Перед началом сделайте полную резервную копию важных данных.

Предварительные требования

  • Сервер с Ubuntu 20.04.
  • Настроенный статический IP‑адрес на сервере.
  • Доступ root или эквивалент (sudo).

Начало работы

Обновите список пакетов:

apt-get update -y

Установите зависимости, необходимые для сборки Asterisk:

apt-get install gnupg2 software-properties-common git curl wget libnewt-dev libssl-dev libncurses5-dev subversion libsqlite3-dev build-essential libjansson-dev libxml2-dev uuid-dev -y

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

Установка Asterisk (сборка из исходников)

По умолчанию в репозиториях Ubuntu может не быть последней версии Asterisk. Скачиваем и собираем из исходников.

Скачивание архива (пример для ветки 17):

wget http://downloads.asterisk.org/pub/telephony/asterisk/asterisk-17-current.tar.gz

Распаковка архива:

tar -xvzf asterisk-17-current.tar.gz

Перейдите в распакованный каталог и скачайте исходники MP3 (необходимы некоторые дополнения):

cd asterisk-17.7.0
contrib/scripts/get_mp3_source.sh

Вы увидите файлы из каталога addons/mp3, как в примере вывода.

Установите дополнительные зависимости через скрипт:

contrib/scripts/install_prereq install

Запустите конфигурацию сборки:

./configure

Затем откройте меню выбора модулей для включения рекомендуемых пакетов:

make menuselect

В меню отметьте нужные плагины, дополнения звуковых пакетов и MOH (музыка при ожидании). После выбора нажмите Save & Exit.

Примеры экранов выбора (для ориентира):

Включение дополнений Asterisk в menuselect

Включение основных звуковых модулей в menuselect

Включение пакетов MOH (музыка при ожидании) в menuselect

Включение дополнительных пакетов звуковых файлов

После сохранения запустите сборку:

make

Ожидаемый итог сборки:

 +--------- Asterisk Build Complete ---------+
 + Asterisk has successfully been built, and +
 + can be installed by running:              +
 +                                           +
 +                make install               +
 +-------------------------------------------+

Установите бинарники, примеры конфигураций и системные файлы:

make install
make samples
make config
ldconfig

Создание системного пользователя для Asterisk

Создайте группу и системного пользователя, назначьте права на аудио и портовые устройства:

groupadd asterisk
useradd -r -d /var/lib/asterisk -g asterisk asterisk
usermod -aG audio,dialout asterisk

Измените владельца каталогов Asterisk на созданного пользователя:

chown -R asterisk.asterisk /etc/asterisk
chown -R asterisk.asterisk /var/{lib,log,spool}/asterisk
chown -R asterisk.asterisk /usr/lib/asterisk

Конфигурация работы от пользователя asterisk

Отредактируйте файл /etc/default/asterisk и назначьте пользователя и группу:

nano /etc/default/asterisk

Распакуйте и раскомментируйте:

AST_USER="asterisk"
AST_GROUP="asterisk"

Отредактируйте файл /etc/asterisk/asterisk.conf и установите runuser/rungroup:

nano /etc/asterisk/asterisk.conf

Распакуйте и раскомментируйте:

runuser = asterisk
rungroup = asterisk

Перезапустите службу и включите автозапуск:

systemctl restart asterisk
systemctl enable asterisk

Проверьте статус службы:

systemctl status asterisk

Вы можете подключиться к CLI Asterisk:

asterisk -rvv

Ожидаемый приветственный вывод укажет версию и пользователя, под которым запущен Asterisk.

Включение веб‑GUI Asterisk

Чтобы управлять Asterisk через веб, включите HTTP‑сервер в конфигурации.

Отредактируйте /etc/asterisk/http.conf:

nano /etc/asterisk/http.conf

Убедитесь, что параметры соответствуют (раскомментируйте и при необходимости поправьте):

enabled = yes
bindaddr = 0.0.0.0
bindport = 8088
prefix = asterisk
enable_static = yes
enablestatic = yes

redirect = / /static/config/index.html
uploads = /var/lib/asterisk/uploads/

Затем добавьте менеджерский аккаунт в /etc/asterisk/manager.conf:

nano /etc/asterisk/manager.conf

Пример минимальной конфигурации для доступа GUI (замените секрет на надёжный пароль):

enabled = yes
webenabled = yes

port = 5038
bindaddr = 0.0.0.0

[admin]
secret = admin1234
read = system,call,log,verbose,command,agent,user,config
write = system,call,log,verbose,command,agent,user,config,originate

Важно: не используйте простой пароль в продакшене. Ограничьте доступ по IP‑фильтру или VPN.

Установка Asterisk GUI

Загрузите репозиторий GUI (пример через SVN):

svn checkout http://svn.digium.com/svn/asterisk-gui/branches/2.0

Перейдите в каталог и соберите GUI:

cd 2.0/
./configure
make
make install

После установки менеджер уведомит о необходимости внести изменения в конфигурационные файлы для корректной работы GUI.

Перезапустите Asterisk:

systemctl restart asterisk

Доступ к веб‑GUI

Откройте в браузере:

http://your-server-ip:8088/asterisk/static/config/index.html

Вход: укажите admin и пароль, который вы прописали в manager.conf.

Страница входа в веб-интерфейс Asterisk GUI

После успешного входа вы увидите панель управления GUI.

Панель управления Asterisk GUI

Мини‑методология развёртывания (короткий план)

  1. Подготовка ОС: обновления, базовые пакеты, резервные копии.
  2. Установка зависимостей и инструментов сборки.
  3. Скачивание и сборка Asterisk в тестовом окружении.
  4. Настройка пользователей и прав, проверка запуска сервиса.
  5. Включение GUI, проверка доступа, смена паролей.
  6. Базовая безопасность: firewall, fail2ban, ограничение менеджера по IP.
  7. Перенос в продакшен после тестов и мониторинга.

Роли и чек‑листы

Администратор системы:

  • Выполнить обновление и установить зависимости.
  • Настроить системного пользователя asterisk.
  • Настроить автозапуск и мониторинг службы.

Сетевой инженер:

  • Открыть порты 5060 (SIP, если используется), 5061 (SIPS), 8088 (GUI) и 5038 (AMI) в firewall, только при необходимости.
  • Настроить NAT и проброс RTP (диапазон портов для аудио).

Инженер безопасности:

  • Заменить пароли в manager.conf на сложные.
  • Ограничить доступ к AMI по IP или через VPN.
  • Установить fail2ban для защиты SIP/AMI от перебора.

Рекомендации по безопасности

  • Измените admin1234 на сильный и уникальный пароль.
  • Разрешайте доступ к 5038 и 8088 только из доверенных сетей.
  • Используйте TLS/SRTP для защиты сигнализации и медиапотока.
  • Включите логирование и периодически проверяйте необычные попытки доступа.
  • Подключение к PSTN через доверенного провайдера с шифрованием.

Когда этот подход не подходит

  • Если вам нужен быстрый тестовый стенд — проще использовать готовые пакеты из репозиториев или Docker‑образ.
  • Для высоконагруженных продакшен‑инстансов может лучше подойти коммерческая поддержка или дистрибутивы с готовыми оптимизациями.
  • Если вы не хотите поддерживать сборку из исходников и ручные обновления, используйте пакеты и контейнеры с регулярными обновлениями.

Альтернативные подходы

  • Установка из дистрибутивных пакетов (speed, проще обновлять).
  • Развёртывание в Docker-контейнере: удобно для тестов и агрегации версий.
  • Использование готовых дистрибутивов на базе Asterisk с GUI (например FreePBX) для сокращения ручной конфигурации.

Отладка и типичные проблемы

  • Сервис не запускается: проверьте логи в /var/log/asterisk и status systemd.
  • Отсутствие аудио: проверьте проброс RTP‑диапазона и NAT, порты UDP.
  • GUI не доступен: убедитесь, что http.conf включает enabled и порт 8088 открыт во внешнем firewall.
  • Невозможно подключиться к AMI: проверьте bindaddr и права в manager.conf.

Критерии приёмки

  • Сервис Asterisk запущен и отвечает на asterisk -rvv.
  • Веб‑GUI доступен по адресу и удачно авторизует администратора.
  • Базовая телефония (SIP‑регистрация/вызов внутри сети) работает.
  • Ограничен доступ к менеджеру AMI и GUI для посторонних сетей.

Глоссарий

  • VoIP: передача голоса по IP‑сетям.
  • AMI: Asterisk Manager Interface, API для управления сервером.
  • MOH: music on hold, музыка ожидания.
  • RTP: протокол реального времени для передачи аудио/видео.

Резюме

  • Сборка из исходников даёт гибкость и контроль, но требует поддержки обновлений.
  • Для быстрой установки используйте пакеты или контейнеры.
  • Обязательно применяйте базовые меры безопасности: сложные пароли, firewall, ограничение по IP.

Короткие шаги после установки: смените секреты, настройте firewall, протестируйте SIP/RTP и настройте резервное копирование конфигураций.

Поделиться: X/Twitter Facebook LinkedIn Telegram
Автор
Редакция

Похожие материалы

Рабочие пространства в Ubuntu — создание и настройка
Ubuntu

Рабочие пространства в Ubuntu — создание и настройка

Создать загрузочный Live CD Linux
Linux

Создать загрузочный Live CD Linux

Индивидуальные звуки уведомлений на Android
Android.

Индивидуальные звуки уведомлений на Android

Создать логотип в Canva — пошагово
Дизайн

Создать логотип в Canva — пошагово

Windows в кармане: 4 способа портативного Windows 10
Windows

Windows в кармане: 4 способа портативного Windows 10

Ремонт своими руками в SketchUp
Ремонт

Ремонт своими руками в SketchUp