Меню Рубрики

Установка dahdi для centos

Установка DAHDI

Описание DAHDI

DAHDI расшифровывается как Digium Asterisk Hardware Device Interface, интерфейс оборудования Asterisk фирмы Digium. DAHDI представляет собой набор драйверов и утилит для различных аналоговых и цифровых телефонных плат, в частности, разработанных фирмой Digium. Драйверы DAHDI являются независимыми от системы Asterisk и могут использоваться другими приложениями. Ранее DAHDI имел название Zaptel, поскольку принадлежал к проекту Zapata Telephony Project.

Код DAHDI может быть скачан отдельными блоками (dahdi-linux для драйверов DAHDI и dahdi-tools для утилит DAHDI), кроме того, DAHDI может быть скачан единым пакетом под названием dahdi-linux-complete (он содержит как драйверы, так и утилиты DAHDI).

Почему DAHDI разделен на 2 части?
DAHDI разделен на две части (драйверы linux и утилиты) поскольку драйверы могут быть портированы [кем-либо] на другие операционные системы (такие как FreeBSD). В конце концов мы будем иметь пакеты драйверов dahdi-linux, dahdi-freebsd, и так далее.

Текущие версии libpri, DAHDI и Asterisk можно скачать здесь: http://downloads.digium.com/pub/telephony/

Необходимые пакеты

Для корректной работы DAHDI необходимо установить системые библиотеки. Для большинства операционных систем, библиотеки имеют название, совпадающее с названием пакета, но к этому названию обычно добавляется приставка -dev или -devel. К примеру, для Red Hat Linux Вам необходимо установить как «openssl», так и «openssl-devel» пакеты.

Список библиотек, которые Вам понадобятся, включает в себя:

  • OpenSSL
  • ncurses
  • newt
  • libxml2
  • kernel headers (этот пакет нужен для драйверов DAHDI)

Скачивание DAHDI

Как уже говорилось, скачать DAHDI можно (и нужно) здесь: http://downloads.digium.com/pub/telephony/. Вы можете скачать отдельно архивы dahdi-linux и dahdi-tools, распаковать их и установить каждый индивидуально. Мы же рассмотрим более простой вариант — скачивание и распаковку полного пакета: dahdi-linux-complete. Для этого Вы открываете указанный выше URL, находите там каталог dahdi-linux-complete и в этом каталоге выбираете файл вида dadhi-linux-complete-2.X.Y+2.X.Y.tar.gz, где 2.X.Y — номер версии dahdi.

Чтобы скачать файл, запускаете команду вида:

cd /usr/src/
wget http://downloads.asterisk.org/pub/telephony/dahdi-linux-complete/dahdi-linux-complete-2.X.Y+2.X.Y.tar.gz

где 2.X.Y — номер версии dahdi, например:

cd /usr/src/
wget http://downloads.asterisk.org/pub/telephony/dahdi-linux-complete/dahdi-linux-complete-2.6.2+2.6.2.tar.gz

Распаковка DAHDI

Для распаковки DAHDI запускаете команду вида:

tar -zxvf dahdi-linux-complete-2.X.Y+2.X.Y.tar.gz

Сборка и установка DAHDI

Для настройки конфигурации, сборки и установки DAHDI на компьютере с подключением к интернету, запустите следующие команды:

cd dahdi-linux-complete-2.X.Y+2.X.Y
make
make install
make config

Для настройки конфигурации, сборки и установки DAHDI на компьютере без подключения к интернету, сначала скачайте:

wget http://downloads.digium.com/pub/telephony/firmware/releases/dahdi-fw-hx8-2.06.tar.gz
wget http://downloads.digium.com/pub/telephony/firmware/releases/dahdi-fw-oct6114-064-1.05.01.tar.gz
wget http://downloads.digium.com/pub/telephony/firmware/releases/dahdi-fw-oct6114-128-1.05.01.tar.gz
wget http://downloads.digium.com/pub/telephony/firmware/releases/dahdi-fw-vpmoct032-1.8.0.tar.gz
wget http://downloads.digium.com/pub/telephony/firmware/releases/dahdi-fw-tc400m-MR6.12.tar.gz
wget http://downloads.digium.com/pub/telephony/firmware/releases/dahdi-fwload-vpmadt032-1.25.0.tar.gz

после чего сохраните все эти файлы внутри папки dahdi-linux-complete:

источник

Установка Asterisk LTS на CentOS 7

В описанной инструкции рассмотрим пример установки с нуля Asterisk версии с длительной поддержкой на Linux CentOS 7.

Подготовка сервера

1. Устанавливаем необходимые программы

yum install gcc wget ntpdate automake libtool

* gcc нужен для сборки исходников, wget — для загрузки файлов из командной строки; ntpdate — синхронизации времени; automake — участвует в создании Makefile при запуске configure; libtool — обеспечивает процесс сборки и использования динамических библиотек.

2. Настраиваем время

Устанавливаем временную зону:

\cp /usr/share/zoneinfo/Europe/Moscow /etc/localtime

* в данном примере московское время.

Открываем на редактирование cron и создаем задание на автоматическую синхронизацию времени:

0 0 * * * /sbin/ntpdate ru.pool.ntp.org

* при таких настройках будет выполняться синхронизация раз в сутки в 00:00.

3. Настройка безопасности:

Создаем новый сервис в брандмауэре:

firewall-cmd —permanent —new-service=asterisk

Добавим в сервис нужные порты:

firewall-cmd —permanent —service=asterisk —add-port=5060/tcp

firewall-cmd —permanent —service=asterisk —add-port=5060/udp

firewall-cmd —permanent —service=asterisk —add-port=5061/tcp

firewall-cmd —permanent —service=asterisk —add-port=5061/udp

firewall-cmd —permanent —service=asterisk —add-port=4569/udp

firewall-cmd —permanent —service=asterisk —add-port=5038/tcp

firewall-cmd —permanent —service=asterisk —add-port=10000-20000/udp

* где 5060 — SIP, 5061 — SIP over TLS, 4569 — IAX, 5038 — AMI (Asterisk Manager Interface), 10000-20000 — диапазон для динамических портов.

Теперь добавляем созданный сервис как разрешенный:

Читайте также:  Установка velas в шевроле круз

firewall-cmd —permanent —add-service=asterisk

Установка Asterisk

Установка астериска выполняется путем сборки исходников. Сама процедура проходит в 3 этапа:

  1. Установка DAHDI (драйверов плат интерфейсов);
  2. Установка LibPRI (библиотека для работы с потоковыми TDM-интерфейсами);
  3. Собственно, сборка и установка Asterisk.

1. Сборка DAHDI

Загружаем исходник, распаковываем его и переходим в распакованный каталог:

tar -xvf dahdi-linux-complete-current.tar.gz

Выполняем сборку и установку:

Выходим из каталога с исходником:

2. Сборка LibPRI

Процедура, во многом, похожа на сборку DAHDI. Загружаем исходник, распаковываем его и переходим в распакованный каталог:

tar -xvf libpri-current.tar.gz

Выполняем сборку и установку:

Выходим из каталога с исходником:

3. Установка самого астериска

Для начала, загружаем исходник на сервер. Так как мы планируем установить LTS версию, заходим на страницу https://www.asterisk.org/downloads/asterisk/all-asterisk-versions, раздел «Long Term Support (LTS) Releases» и копируем ссылку на загрузку пакета:

* Certified Asterisk — бизнес версия с поддержкой для коммерческих клиентов.

Используя ссылку, скачиваем на сервер программу:

Распаковываем архив и переходим в него:

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

Чистим образовавшиеся временные файлы:

Добавляем библиотеку для работы с mp3:

./configure —prefix=/usr —sysconfdir=/etc —localstatedir=/var —libdir=/usr/lib64 —with-dahdi —with-pri —with-iconv —with-libcurl —with-speex —with-mysqlclient

* полный перечень опция и что они означают можно посмотреть командой ./configure -h.

Выбираем необходимые компоненты (в данном примере res_config_mysql, app_mysql, cdr_mysql):

Запускаем сборку и установку:

Устанавливаем скрипты для автозапуска АТС и готовые конфигурационные файлы:

Базовая настройка и запуск

Открываем конфигурационный файл:

Снимаем комментарии и редактируем следующие пункты:

runuser = asterisk
rungroup = asterisk
defaultlanguage = ru
documentation_language = ru_RU

Задаем права на следующие каталоги:

chown -R asterisk:asterisk /var/run/asterisk

chown -R asterisk:asterisk /etc/asterisk

chown -R asterisk:asterisk /var//asterisk

chown -R asterisk:asterisk /usr/lib64/asterisk

chown -R asterisk:asterisk /var/log/asterisk

Если программа запустится, мы увидим Asterisk Ready:

* все ошибки и предупреждения можно проигнорировать, но правильнее их исправить, отключив неиспользуемые модули.

Теперь можно запустить астериск как службу:

systemctl enable asterisk

Заведение пользователя

Создадим наш первый диалплан (правило обработки звонков):

[outcaling]
exten => _XXX,1,Dial(SIP/$,,m)

* в данном примере мы создаем контекст с именем outcaling для трехзначных номеров (XXX) с вызовом по SIP по внутреннему номеру.

Теперь создадим два внутренних номера:

[public](!)
type=friend
context=outcaling
host=dynamic
disallow=all
allow=alaw
allow=ulaw
language=ru
qualify=yes
canreinvite=yes
call-limit=4
nat=no

[101](public)
regexten=101
secret=1234
caller
callgroup=1
pickupgroup=1

[102](public)
regexten=102
secret=5678
caller
callgroup=1
pickupgroup=1

* сначала мы создали шаблон public, в который занесли общие параметры. Шаблон мы применили к создаваемым коротким номерам.
* где:

  • [101], [102] — имена для обозначения номеров.
  • type — типы проверки номеров. Могут быть peer, user или friend. Peer — вызовы сопоставляются с IP-адресами и номерами портов. User — проверка username. Friend — включает возможности peer и user (проверка username и IP-адреса источника) и лучше всего подходит для телефонов и телефонных программ.
  • regexten — добавочный номер. Если не задан, используется имя.
  • secret — пароль для аутентификации.
  • context — контекст или группа правил.
  • host — IP-адрес или имя клиента. Для автоматической регистрации используем dynamic.
  • callerid — идентификатор пользователя при звонке.
  • disallow — запрещает кодеки (задается перед параметром allow).
  • allow — разрешает кодеки. alaw и ulaw — алгоритмы для кодеков g711.
  • language — код используемого языка.
  • callgroup — задает группу устройства (для возможности перехвата).
  • pickupgroup — задает перечень групп, которые можно перехватывать.
  • qualify — включает или отключает периодическую проверку подключенного клиента.
  • canreinvite — включает или отключает прохождение голосового RTP трафика через Asterisk. Устанавливать, только если клиент поддерживает функцию SIP re-invites.
  • call-limit — ограничение количества одновременных вызовов.
  • nat — устанавливается в yes, если клиент находиться за NAT.

systemctl restart asterisk

Читайте также:  Установка гбо шевроле экспресс

Подключение телефона и проверка

Для проверки сервера устанавливаем софт-телефон на компьютер. Например, а качестве SIP-клиента под Windows можно установить бесплатную программу X-Lite, для Android — Zoiper.

Пример настройки клиента X-Lite:

Настраиваем подключение с логином и паролем 101 / 1234, второй — 102 / 5678. Пробуем позвонить.

источник

Моя Россыпь

понедельник, 4 марта 2013 г.

1. Обновляем систему перед установкой
#yum update
Ждем пока не пройдет обновление

2. Отключаем SElinux, для этого открываем файл /etc/sysconfig/selinux
#nano /etc/sysconfig/selinux
Оставляем одну строку, остальное комментируем:
SELINUX=disabled

4. Переходим в папку откуда будем ставить пакеты

5. Качаем пакеты Asterisk, LibPRI, (Digium Asterisk Hardware Device Interface)

#wget http://downloads.asterisk.org/pub/telephony/asterisk/asterisk-1.8.20.1.tar.gz
#wget http://downloads.asterisk.org/pub/telephony/libpri/libpri-1.4.14.tar.gz
#wget http://downloads.asterisk.org/pub/telephony/dahdi-linux-complete/dahdi-linux-complete-2.6.1+2.6.1.tar.gz
LibPRI — это библиотека, предназначенная для работы с потоковыми TDM-интерфейсами ISDN: PRI (Primary Rate Interface) и BRI (Basic Rate Interface)
DAHDI (Digium Asterisk Hardware Device Interface) – пакет позволяет использовать аппаратные средства (карты) для соединения Asterisk с традиционными аналоговыми или цифровыми телефонными сетями

6. Распаковываем скаченные архивы

#tar -xvzf asterisk-1.8.20.1.tar.gz
#tar -xvzf libpri-1.4.14.tar.gz
#tar -xvzf dahdi-linux-complete-2.6.1+2.6.1.tar.gz
7. Устанавливаем пакеты, необходимые для установки этих программ из исходников
#yum install kernel-devel gcc make gcc-c++ libxml2-devel
#yum install perl ncurses-devel
#yum -y install make gcc gcc-c++ kernel kernel-headers-`uname -r` kernel-devel-`uname -r` ncurses-devel newt-devel libtiff-devel libxml2-devel sqlite-devel glibc-headers
8. Устанавливаем DAHDI
#cd dahdi-linux-complete-2.6.1+2.6.1
#make all
#make install
Если установка прошла успешно, увидим надпись:
###################################################
###
### DAHDI tools installed successfully.
### If you have not done so before, install init scripts with:
###
### make config
###
###################################################
Затем обязательно поставить конфиги DAHDI:
#make config
При этом DAHDI добавиться в автозагрузку

9. Делаем первый запуск драйвера DAHDI #service dahdi start
Должны успешно стартовать все подключенные драйвера DAHDI

10. Устанавливаем пакет LibPRI #cd ..
#cd libpri-1.4.14

11. Наконец устанавливаем Asterisk #cd ..
#cd asterisk-1.8.20.1
Если хотим, что бы Asterisk был с поддержкой SQL ставим сервер MySQL
#yum install mysql-server mysql mysql-devel mysql-connector-odbc unixODBC unixODBC-devel –y
Затем:
#./configure
Если в конце отработки скрипта появился символ Asterisk, то все хорошо:

После этого устанавливаем примеры
#make samples
Устанавливаем doxygen, он необходим для выполнения команды make progdocs, которая устанавливает документацию по Asterisk
#yum install doxygen
#make progdocs
Для CentOS, который использует папки /etc/rc.d/init.d/ или /etc/init.d/, также желательно выполнить команду make config. Это обеспечит установку сценариев запуска и конфигурацию системы (с помощью команды chkconfig) для автоматического выполнения Asterisk при запуске
#make config
Проверяем попал ли Asterisk в автозагрузку:
#chkconfig asterisk —list

12. Делаем первый запуск Asterisk#/etc/init.d/asterisk start
Проверяем, что Asterisk запустился:
# service asterisk status
asterisk (pid 23002) is running.

13. Делаем контрольную перезагрузку сервера и контролируем, что после перезагрузки все службы запустились:
#ps ax | grep asterisk
1449 ? S 0:00 /bin/sh /usr/sbin/safe_asterisk
1453 ? Sl 0:04 /usr/sbin/asterisk -f -vvvg -c
1608 pts/0 S+ 0:00 grep asterisk
заходим в консоль Asterisk
#asterisk -r
и проверяем «видит» ли Asterisk драйвер DAHDI
asterisk1*CLI> dahdi show version
DAHDI Version: 2.6.1 Echo Canceller: HWEC

14. Если Asterisk используется исключительно в защищенной локальной сети, то выключаем firewall. Делаем это с помощью специальной утилиты, если она установлена:
#system-config-firewall
Запустив службу в графическом окне снимаем метку Enabled, нажимаем «ОК» и подтверждаем свое решение.

Если утилита не установлена — не беда!
Открываем файл iptables
#nano /etc/sysconfig/iptables
И варварски удаляем все строчки оставляя только две значимые. Получается примерно так:
# Firewall configuration written by system-config-firewall
# Manual customization of this file is not recommended.
*filter
:INPUT ACCEPT [0:0]:FORWARD ACCEPT [0:0]:OUTPUT ACCEPT [0:0]-A INPUT -i eth0 -j ACCEPT
-A INPUT -i lo -j ACCEPT
COMMIT

Читайте также:  Установка racechip ultimate на прадо 150

Рестартуем службу iptables
#service iptables restart

источник

ИТ База знаний

Полезно

— Узнать IP — адрес компьютера в интернете

— Онлайн генератор устойчивых паролей

— Онлайн калькулятор подсетей

— Калькулятор инсталляции IP — АТС Asterisk

— Руководство администратора FreePBX на русском языке

— Руководство администратора Cisco UCM/CME на русском языке

— Руководство администратора по Linux/Unix

Навигация

Серверные решения

Телефония

Настройка программных телефонов

Корпоративные сети

Популярное и похожее

Как собрать логи Asterisk?

Настройка IVR в Asterisk через консоль

Настройка IVR в Asterisk через консоль

Базовые команды Asterisk CLI

Установка Asterisk 14 на CentOS 7

В данной статье расскажем как установить последнюю версию Asterisk 14.3.0 на операционную систему CentOS 7. Следуя нашей инструкции, Вы без труда сможете собрать Asterisk из источников. Итак, поехали!

Пошаговое видео

  • Подготовка

    Перед началом установки, убедимся, что у нас выключена опция SElinux, по умолчанию он включен. Поэтому открываем любой текстовый редактор, например vim или nano и отключаем. Для этого:

    Ищем строчку SELINUX = и вписываем disabled:

    Сохраняем изменения и производим перезагрузку командой reboot . Далее, добавляем в CentOS репозиторий EPEL:

    Все ссылки актуальны на момент написания статьи (22.02.2017). Сегодня 30.03.2020 (статья написана 1132 дня назад), поэтому, в случае недоступности нужного файла, воспользуйтесь поиском в сети интернет.

    Устанавливаем зависимости, лучше это делать в несколько команд

    Запускаем сервис mariadb (MySQL):

    Теперь необходимо скачать и установить телефонные драйверы, такие как pjproject, и DAHDI, а также приложения jansson и lame.

    Скачивание и установка драйвера DAHDI

    Скачивание и установка приложения кодирования lame:

    Скачивание и установка jansson. Можно воспользоваться yum -y install jansson-devel или:

    Последним шагом в подготовке к установке Asterisk, является скачивание и установка библиотеки для работы с ISDN интерфейсами — libpri:

    Установка Asterisk

    Всё готово, теперь скачаем Asterisk

    После ввода команды menuselect перед вами откроется помощник установки модулей. По умолчанию, все необходимые модули уже включены, нам остаётся только добавить, то что хотим. Так, например, мы рекомендуем в разделе Add-ons включить поддержку mp3, установив параметр format_mp3, как показано на рисунке ниже:

    В разделе Core Sound Packages установить нужные форматы звуковых пакетов, например, для русского и английского языков:

    В разделе Music On Hold File Packages установить все значения для поддержки кодеков разных производителей оборудования:

    Наконец, в Extras Sound Packages установите нужные форматы и нажмите F12:

    Вы увидите сообщение о том, что преднастройка успешно завершена:

    Начинаем установку, для этого вводим команду

    По завершению отработки данной команды, мы увидим сообщение о том, что сборка Asterisk успешно завершена и теперь можно начать его установку:

    На этом установка Asterisk завершена, о чём сообщает следующий вывод

    Теперь необходимо создать пользователя с правами доступа к директориям Asterisk

    После этого, нужно перепустить Asterisk, чтобы изменения вступили в силу

    Теперь необходимо подготовить MySQL для работы с Asterisk:

    Создадим пользователя для работы с базами MySQL для Asterisk

    Далее необходимо создать две базы данных для работы с Asterisk:

    И настраиваем права для пользователя, которого создали в прошлом шаге:

    Теперь мы можем зайти в командную строку (CLI) Asterisk и начинать конфигурацию:

    core show help покажет список доступных команд и их описания

    Полезна ли Вам эта статья?

    Пожалуйста, расскажите почему?

    Нам жаль, что статья не была полезна для вас 🙁 Пожалуйста, если не затруднит, укажите по какой причине? Мы будем очень благодарны за подробный ответ. Спасибо, что помогаете нам стать лучше!

    Подпишитесь на нашу еженедельную рассылку, и мы будем присылать самые интересные публикации 🙂 Просто оставьте свои данные в форме ниже.

    источник