Настройка asterisk в Debian 10
Обновлено: 21.11.2024
<р>1.4. Установка в Debian
Помните, что Asterisk очень требователен к процессору, поэтому очень тщательно выбирайте устанавливаемые пакеты.
Для установки Asterisk на сервер с Debian с ядром 2.6 требуются дополнительные пакеты:
Если вам нужно скомпилировать zttool (инструмент zaptel), вам потребуется установить заголовочные файлы newt (пакет: libnewt-dev). Используйте эту команду для его установки:
Если вам не удалось установить необходимый пакет, вы всегда можете добавить этот пакет с помощью следующей команды:
Примечание. Не забудьте пакеты, упомянутые в первом руководстве.
Вот список необходимых пакетов:
Компиляция в Debian
После получения исходного кода нам нужно его скомпилировать. Для этого мы следуем инструкциям, приведенным ранее в разделе «Общая установка».
Вот еще раз шаги:
Примечание. Поскольку на сервере Debian установлено ядро 2.6, мы используем make linux26.
Предупреждения об ошибках и их решения:
Если вы пытаетесь сделать asterisk и получаете предупреждение:
Make not found, do
apt-get install make
Если вы получили сообщение об ошибке: gcc не найден, выполните
apt-get install gcc
Если вы получаете сообщение об ошибке "Компилятор C не может создавать исполняемые файлы."
apt-get install libc-dev
Если вы получили сообщение об ошибке: "поддержка termcap не найдена", вы явно недостаточно хорошо прочитали приведенный выше текст, apt-get install libncurses5-dev исправит это за вас.
pbx_dundi.c:44:18: zlib.h: Нет такого файла или каталога
pbx_dundi.c: В функции `update_key':
pbx_dundi.c:1326: предупреждение: неявное объявление функции `crc32'
pbx_dundi.c: в функции `dundi_decrypt':
pbx_dundi.c:1382: предупреждение: неявное объявление функции `uncompress'
pbx_dundi.c:1382: ошибка : `Z_OK' необъявленный (первое использование в этой функции)
pbx_dundi.c:1382: error: (Каждый необъявленный идентификатор сообщается только один раз
pbx_dundi.c:1382: error: для каждой функции он появляется в .)
pbx_dundi.c: В функции `dundi_encrypt':
pbx_dundi.c:1407: предупреждение: неявное объявление функции `compress'
pbx_dundi.c:1408: ошибка: `Z_OK' необъявленный (первое использование в этой функции)
make[1]: *** [pbx_dundi.o] Ошибка 1
make[1]: Выход из каталога `/usr/src/asterisk-1.2.0- beta2/pbx'
make: *** [subdirs] Error 1
Вы явно забыли apt-get install zlib1g-dev
Это позаботится обо ВСЕХ зависимостях и запустит рабочую систему примерно за 5 минут.
У меня проблемы с установкой:
make[1]: Вход в каталог `/usr/src/asterisk/asterisk/channels'
gcc -pipe -Wall -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations -g3 -Iinclude -I. ./include -D_REENTRANT -D_GNU_SOURCE -O6 -march=i686 -fomit-frame-pointer -Wno-missing-prototypes -Wno-missing-declarations -DZAPATA_PRI -DCRYPTO -fPIC -c -o chan_phone.o chan_phone.c
chan_phone.c:41:29: ошибка: linux/compiler.h: Нет такого файла или каталога
make[1]: *** [chan_phone.o] Ошибка 1
make[1]: Выход из каталога `/usr/src/asterisk/asterisk/channels'
сделать: *** [подкаталоги] Ошибка 1
Следуйте решению Ахилла от 15 марта. Это работает!!
при компиляции zaptel просто создайте символическую ссылку в /usr/src следующим образом
"Похоже, у вас не установлены исходные коды ядра 2.6.15-27-686.
apt-cache search kernel-headers-2.6.15-27-686
apt-get install kernel-headers-2.6.15-27-686
> При переходе на gcc-3.3 zaptel нормально компилируется.
Переход на gcc-3.3 zaptel нормально компилируется.
Я следовал всем инструкциям, поэтому не знаю, где ошибка. Я использую Ubuntu.
/lib/modules/2.4.27-2-386/build/include/asm/processor.h: На верхнем уровне:
/lib/modules/2.4.27-2-386/build/include /asm/processor.h:75: ошибка: тип массива имеет неполный тип элемента.
сделать: *** [zaptel.o] Ошибка 1
Выполните поиск apt-cache 2.6.8, а затем выполните apt-get "правильную строку"
У меня еще есть пакет заголовка.
Я попробовал apt-get install kernel-source-2.6.8, я также попытался загрузить их и смолить xvzf в /usr/src. Я делаю много
ln -s исходный код ядра linux
ln -s исходный код ядра linux26
ln -s исходный код ядра linux-2.6
ln -s исходный код ядра linux-2.6
ln -s исходный код ядра linux-2.6.8
(потому что я не знаю, чего он хочет)
И теперь я пытаюсь скомпилировать новое ядро.
apt-get install make
У них есть текущие стабильные пакеты для Asterisk.
Вышеприведенный список пакетов не является логическим сочетанием пакетов из базовой установки. Например, «Не забудьте пакеты, упомянутые в первом руководстве." подразумевает, что мне нужен bison-devel, но его нет в списке. Так он нужен?
Кроме того, многие из этих имен пакетов не существуют в моем репозитории Ubuntu на базе Debian.
Например, у меня нет ncurses или ncurses-devel. У меня *есть* есть libncurses5 и libncurses5-dev. Будут ли они работать на меня? Кроме того, у меня нет zlib или zlib-devel. У меня *есть* zlib1g и zlib1g-dev. Есть и другие примеры такого несоответствия.
Примечание. Будут установлены только модуль format_mp3 и MySQL (если у вас установлена версия MySQL).
Все остальные модули необходимо установить вручную:
- asterisk-oh323c-0.1
cd asterisk-oh323c-0.1
./configure
make
сделать установку
сделать образец
- res_sqlite для SQLite3
сделать
сделать обновление
сделать установить
Я не знаю, насколько актуальны текущие пакеты Debian, но они не могут быть такими же актуальными, как cvs для стабильной версии.
CloudwaferHQ – 21 ноября 2019 г.
Asterisk – это платформа с открытым исходным кодом для создания коммуникационных приложений. Asterisk превращает обычный компьютер в коммуникационный сервер, питая системы IP-АТС, шлюзы VoIP, серверы конференций и другие нестандартные решения. Его используют малые предприятия, крупные компании, колл-центры, операторы связи и государственные учреждения по всему миру. Asterisk поддерживает несколько стандартных IP-протоколов передачи голоса, включая протокол инициации сеанса (SIP), протокол управления медиашлюзом (MGCP) и H.323.
В этом руководстве мы объясним, как установить Asterisk на сервер Debian 9.
Предварительные требования: добавьте порты SIP в Config Server Firewall (CSF)
Порты 5060 и 5061, как на TCP, так и на UDP, связаны с протоколом инициации сеанса (SIP) IANA. Следовательно, нам нужно будет добавить эти порты в наш файл csf.conf.
Вы можете прочитать наше руководство по настройке CSF в Ubuntu и CentOS для получения дополнительной информации о CSF.
Перезагрузите CSF, чтобы применить наши изменения, с помощью следующей команды:
Шаг 1: Загрузите Asterisk
Перейдите в каталог /usr/src и загрузите Asterisk с помощью команды wget. На момент написания этого руководства последней стабильной версией Asterisk была версия 17.
Измените и загрузите исходный код Asterisk с помощью следующей команды wget:
Затем распакуйте загруженный архив с помощью команды tar, как показано ниже:
После распаковки измените рабочий каталог на каталог Asterisk:
Шаг 2: Установите зависимости Asterisk
Для правильной работы Asterisk требуется несколько зависимостей. Сначала запустите приведенный ниже сценарий, чтобы загрузить исходные файлы MP3, необходимые для сборки модуля MP3 и использования файлов MP3:
Затем запустите скрипт install_prereq, чтобы разрешить все зависимости в нашей системе Debian:
Далее вы увидите телефонный код ITU-T по умолчанию 61. Но в нашем случае мы меняем его на 234 для Нигерии.
По завершении должно отображаться следующее:
Шаг 3. Установите Asterisk
После установки зависимостей мы можем теперь установить Asterisk, запустив скрипт configure, который подготовит код Asterisk к компиляции:
Это запустит процесс сборки, и вскоре на экране появится меню, позволяющее настроить функции, которые вы хотите создать.
Чтобы использовать формат MP3 с функцией «Музыка при удержании», выберите «Дополнения» , перейдите к format_mp3 и выберите его. Выберите дополнительные основные звуковые пакеты и пакеты Music on Hold в левом меню и включите формат .wav для нужного языка. Вы можете использовать F12 для сохранения и выхода. Затем начните процесс компиляции с помощью команды make:
Наконец, теперь мы можем установить Asterisk и установить примеры файлов конфигурации:
Далее мы можем установить общие файлы конфигурации с образцом документации, введя следующую команду:
Мы также можем установить основные файлы конфигурации АТС, выполнив следующую команду:
Наконец, установите сценарий инициализации Asterisk, который настраивает автоматический запуск Asterisk при загрузке:
Вы также можете запустить ldconfig для обновления кэша общих библиотек:
Для получения более подробных инструкций по настройке Asterisk см. руководство проекта Asterisk
Asterisk в наборе средств связи с открытым исходным кодом. Он поддерживает системы IP-АТС, серверы конференций и шлюзы VoIP и широко используется в центрах обработки вызовов и на предприятиях. Он имеет множество функций и позволяет совершать звонки с использованием TCP/IP без каких-либо затрат. Кроме того, он имеет такие функции, как запись звонков, меню голосового ответа, голосовая почта и т. д. Он может превратить обычный компьютер в систему IP-АТС. Программное обеспечение Asterisk настроено более чем на 1 миллион серверов.
Требования:
- Минимум 2 ГБ ОЗУ (при использовании для небольшого домашнего офиса) или больше в зависимости от размера вашего офиса, предприятия и т. д.
- Свежий компьютер Ubuntu 20.04 или 18.04 или Debian 9/10 с корневым доступом
Шаг 1. Обновление сервера
Первым шагом будет обновление вашего VPS для любых новых обновлений или любых обновлений безопасности
Шаг 2. Установка необходимых пакетов
Шаг 3. Установка Asterisk в Ubuntu/Debian
Сначала необходимо клонировать репозиторий исходного кода Asterisk с официального сайта
На следующем шаге нам нужно запустить сценарий оболочки, который загрузит необходимые источники MP3 для необходимого модуля MP3 для Asterisk
Это должно дать следующий результат:
Далее нам нужно запустить скрипт install_prereq для установки необходимых зависимостей для Asterisk и других утилит для него. Этот шаг займет немного времени.
После запуска этого скрипта будут установлены необходимые зависимости, а в середине процесса вам будет предложено ввести код вашего телефона, как показано на следующем рисунке
После этого шага вы увидите следующее приглашение:
Шаг 4. Сборка и установка Asterisk
После установки необходимых зависимостей и предварительных пакетов мы можем перейти к следующему шагу создания АТС Asterisk из загруженных файлов.
Чтобы проверить, установлены ли все необходимые зависимости на сервере, выполните следующую команду
После выполнения приведенной выше команды вы увидите логотип Asterisk на экране, как показано ниже
Следующий шаг — выбрать установку необходимых модулей, а также скомпилировать следующие. Чтобы получить доступ к меню, выполните следующую команду
Мы можем использовать клавиши со стрелками для навигации и нажимать клавишу ввода для выбора. Сначала мы должны выбрать «format_mp3»
Вы также можете выбрать другие основные звуковые модули, если они вам нужны
После того, как выберите пакеты, нажмите Tab и нажмите «Сохранить и выйти». Теперь выполните следующую команду для сборки Asterisk (обратите внимание, что это может занять некоторое время)
Это даст следующий результат:
Следующий шаг — успешная установка Asterisk. Этот шаг также может занять некоторое время в зависимости от скорости сети вашего сервера, скорости процессора и т. д.
Вы увидите следующий вывод:
Затем мы можем перейти к установке примеров и файлов конфигурации, а также файлов конфигурации базовой АТС
Шаг 5. Создание пользователя и запуск Asterisk
Всегда рекомендуется создавать пользователя без полномочий root для Asterisk из соображений безопасности и других различных причин. На этом шаге мы создадим новую группу пользователей, которая будет запускать службы Asterisk
Добавить пользователя звездочки в группу:
Теперь мы должны изменить владельца файлов Asterisk на пользователя:
Теперь мы наконец можем запустить Asterisk 18 на нашем сервере, выполнив следующую команду:
Чтобы проверить, запущен ли asterisk, выполните следующую команду
Чтобы включить звездочку при загрузке, выполните следующую команду
Выполните следующую команду для проверки и подключения к Asterisk CLI
Звездочка в Ubuntu/Debian
Если вы видите следующий вывод, это означает, что Asterisk 18 успешно настроен на вашем VPS/сервере. Это руководство было протестировано на Ubuntu 20.04 и Debian 10, и ожидается, что оно будет без проблем работать и на Ubuntu 18.04 и Debian 9.
Я фрилансер и полупрофессиональный игрок в VALORANT из Пакистана, эксперт в области сетевого и системного администрирования и разработки WordPress.
Это руководство описывает установку графического интерфейса Asterisk v16 и Freepbx v15 из исходного кода на Debian v9 или v10.
Проверено
Минимальная установка Debian v9 (Stretch) и v10 (Buster) x64
Asterisk v16
Freepbx v15
PHP v7.3
Предположения
Текстовый режим консоли (multi-user.target)
Установка выполняется от имени пользователя root ( su - )
Предпосылки
Первоначальное обновление и установка
Другое
Node.js
ODBC
МонгоБД
Требуется, только если вы планируете использовать XMPP
Либьянссон
Asterisk v16 требует libjansson >= 2.11.
Установить часовой пояс
Установить
ДАХДИ
Требуется только при использовании физического сервера и установке телекоммуникационного оборудования. В настоящее время версии новее 2.10.2 ( 2.11.0 и 2.11.1 ) не устанавливаются правильно.
Если make all не работает, попробуйте перезагрузиться и запустить apt install linux-headers*
Звездочка
При обновлении существующей установки с более старой версией Asterisk лучше сначала запустить rm -rf /usr/lib/asterisk/modules.
Установить дополнительные зависимости
Для проверки введите nano -v config.log .
Установить параметры компиляции
Создайте пользователя Asterisk, скомпилируйте, установите и установите предварительное право собственности.
Бесплатная биржа
При желании установите все модули (не рекомендуется). Возможно, вам придется выполнить следующие команды дважды.
Настройте Freepbx на запуск при загрузке
Настроить Apache
Добавить AllowOverride All в веб-каталог, чтобы .htaccess был активен.
Изменить пользователя/группу Apache по умолчанию, отключить index.html, включить модуль перезаписи
Перезагрузка и доступ к графическому интерфейсу
Послеустановочные задачи являются обязательными.
Задачи после установки
Заблокируйте сервер базы данных.
Отвечайте Y на все.
Ротация файлов журнала
Если этого не сделать, файлы журналов будут бесконечно увеличиваться.
Тест ODBC
Используйте имя пользователя и пароль в файле /etc/asterisk/res_odbc_additional.conf для проверки подключения к базе данных через ODBC.
Проверка доступа ODBC к звездочке
Если вы планируете использовать аппаратные SIP-телефоны, вам, вероятно, потребуется включить tftp-сервер.
Создайте файл конфигурации tftp.
Создайте каталог и перезапустите демон, чтобы запустить tftp.
Разное. настройки
Установите лимит памяти php и максимальный размер загружаемого файла.
Устранение неполадок
На данный момент в Freepbx есть ошибка, связанная с Debian/Ubuntu. Если нажатие кнопки Apply Config в графическом интерфейсе зависает, попробуйте следующее временное решение.
Читайте также: