Курсы по использованию Asterisk

IP-телефония — технология будущего. Обучитесь работе с IP-АТС Asterisk для того чтобы внедрить и профессионально использовать при решении коммуникационных задач.

Работайте с Asterisk профессионально!

Многоуровневая защита IP-АТС Asterisk

Телефонные станции очень часто становятся объектами хакерских атак. Узнайте, каким образом необходимо строить многоуровневую защиту для Вашей IP-АТС.

Не оставьте хакерам шансов. Защитите свой Asterisk от атак.

Используйте Веб-Интерфейс для удобства настройки

Панель управление FreePBX позволяет легко и удобно управлять всей системой. Научитесь эффективно использовать FreePBX для решения своих задач.

Управление станцией и статистика в окне браузера.

Научитесь работать с Asterisk из консоли

Для понимания работы с Asterisk необходимо уметь настраивать его вручную с конфигурационными файлами и командной строкой CLI Asterisk.

Научитесь «тонкой» настройке Asterisk

Цель курсов - максимум практики.

Обучение нацелено на практическую работу с IP-оборудованием: платы потоков E1, VoIP-телефонные аппараты, голосовые шлюзы FXS и прочее.

Обучение на реальном оборудовании — залог успеха.

Обзор шлюза Parabel Asteroid

База знаний Настройка VoIP-оборудования

Рассмотрим подключение и настройку шлюза от Parabel с GSM-портами.

1. Установка сим карт
2. Настройка утилиты minicom
3. Настройка шлюза
4. Установка и настройка DAHDI
5. Настройка Asterisk (диалплан) и FreePBX

 

Установка сим карт


Для начала нужно вставить sim-карты в устройство, для этого откручиваем 4 болта с нижней панели. С левой стороны видим 2а слота для карточек.Шлюз в базовой комплектации идет без GSM-антенны, ее нужно покупать отдельно если планируете ставить шлюз в серверную и выводить ближе к окну. В принципе, астероид работает и без антенны, но при условии что находится рядом с окном и качество приема gsm сигнала выше среднего.

Вставляем sim-карты

Далее включаем устройство и смотрим на индикаторы. SIM-карта от мтс заведомо не работает, поэтому мы видим лишь индикатор питания.

Вот описание индикаторов из официального мануала

Power – индикация подачи питания на GSM канал. Загорается после загрузки программного обеспечения канала, при установленной SIM карте.

Net – индикация наличия GSM сети. Загорается при установленной SIM карте, достаточном уровне сигнала сети, если найден оператор связи и канал успешно зарегистрирован на базовой станции оператора

InCall – индикация входящего вызова. Вызов инициирован GSM оператором в направлении Asterisk сервера. Светодиод гаснет после получения отбоя от обеих сторон.

OutCall – индикация исходящего вызова. Вызов инициирован Asterisk сервером в направлении GSM оператора. Светодиод гаснет после получения отбоя от обеих сторон.

 

Настройка утилиты minicom


Далее нужно подключиться к шлюзу и настроить его. При этом сервер астериск и сам шлюз должны находиться в одном домене коллизий (либо на одном коммутаторе, либо в одной сети коммутаторов но без разделения маршрутизатором). Для этого нам понадобится утилита minicom.

Если minicom нет в системе то устанавливаем, для Centos это

yum install minicom –y

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

Что бы узнать под каким номером определила система наше устройство запускам на сервере

tailf /var/log/messages

Далее выдергиваем и опять вставляем кабель в сервер, при этом наблюдаем за консолью, где увидим примерно следующее

Из этого видно, что система определила шлюз как ttyUSB0

Переходим к minicom и запускаем с параметром установки

minicom –s

Переходим в настройки порта (Serial port setup) и выставляем настройки как на скриншоте ниже. Самое важное тут это Serial device в котором мы указываем ttyUSB0 (то что мы видели в предыдущем пункте запуская команду tailf /var/log/messages) и скорость (Bps/Par/Bits)

Применяем настройки, затем сохраняем настройки как дефолтные (Save setup as dfl)

 

Настройка шлюза


Пробуем подключиться к шлюзу Parabel Asteroid

В командной строке сервера пишем

minicom

Пока проходит инициализация, экран будет обновляться несколько раз, затем мы попадаем в консоль шлюза

Если будет использоваться 2 и более шлюзов, то нужно менять мак адрес устройства в пункте 2. Если один то оставляем без изменения. Далее это DST MAС (мак адрес устройства куда будет слать пакеты шлюз) Если на сервере asterisk уже стоят драйвера DAHDI (об этому чуть ниже) то в статусе шлюза уже будет указан mac адрес оконечного устройства и его нужно будет лишь переписать в 3 пункте

В любом случае DST MAC нужно изменить на mac адреса сервера астериск иначе шлюз будет слать широковещательные пакеты и их будут получать все устройства в сети (а это не есть хорошо)

Далее выходим в главное меню нажимая 0 и сохраняем настройки шлюза, пункт 9. После перегружаем шлюз вручную или же так же через консоль (находим пункт самостоятельно)

 

Установка и настройка DAHDI


Скачиваем сборку DAHDI на сайте парабела.

Для нашей версии asterisk и FreePBX DIstro подошла версия DAHDI 2.6.1+2.6.1, версия сборки 2.6.2

Распаковываем и запускаем поочередно

./build.sh

./install.sh

Более подробно о установке и настройке DAHDI можно почитать тут.

Далее редактируем файл /etc/dahdi/system.conf который будет реагировать с устройством на уровне ядра

Для нашего астероида Asteroid-1G3S-EC (2-GSM, 7-FXO, 16-FXS) настройки выглядят так

#Parabel Asteroid
dynamic=eth,eth0/00:55:55:55:55:00,30,1
alaw=1-30
e&m=3,7
fxols=8-15,23-30
fxsls=16-22
loadzone=ru
defaultzone=ru

В файле /etc/dahdi/modules комментируем все модули, т.к. данный шлюз не использует ни один из них.

Для вступления изменений в силу выполняем:

amportal stop
service dahdi restart
amportal start

Для проверки вводим:

dahdi_tool

Состояние устройств должно быть «OK», если стоит другое, то нужно перепроверить конфигурацию DAHDI и устройств.

Так же командой dahdi_test проверяем скорость отклика сервера, значения не ниже 99,9 — хороший результат. Значения ниже 99.9 будут приводить к ухудшению качества звука, скрежету и обрывам голоса.

Далее нам нужно настроить астериск на работу с DAHDI для этого в файле /etc/asterisk/chan_dahdi.conf нам нужно описать все каналы и задать им параметры.

Для нашего устройства это выглядит так:

[channels]
language=ru
busydetect=yes
busycount=3
echocancel=no
echocancelwhenbridged=no
signalling=em
relaxdtmf=yes
group=1
context=from-gsm
channel=3,7
signalling=fxs_ls
context=from-trunk
group=2
channel=16-22
signalling=fxo_ls
context=from-internal
group=3
channel=8-15,23-30
#include dahdi-channels.conf
;Include AMP configs
#include chan_dahdi_additional.conf

Gsm каналы мы завели в контекст from-gsm, зачем и для чего это сделано рассмотрим чуть ниже. Внешние каналы FXO мы завели в контекст from-trunk ну и внутренние соответственно во from-internal.

Обязательно проверить включенные файлы dahdi-channels.conf и chan_dahdi_additional.conf, в них могуть быть так же описаны каналы и тогда эти настройки будут перебивать наши.

 

Настройка Asterisk (диалплан) и FreePBX


Запускаем астериск делаем dahdi restart а затем dahdi show channels и если в предыдущем пункте все сделано правильно, то увидим наши каналы, контекст в котором они находятся и статус

Перейдем к настройке диалплана астериска, настроем исходящую связь через gsm порты

[from-internal-custom]
exten = > _0289XXXXXXXXX,1,Dial (DAHDI/3/${EXTEN:2})
exten = > _0189XXXXXXXXX,1,Dial (DAHDI/7/${EXTEN:2})

Для звонков через МТС мы сделали префекс 02 а для мегафона 01. Проверяем, если все хорошо, видим примерно следующее:

А на самом астероиде это выглядит так:

Теперь разберемся со входящей связью.

Чуть выше каналы 3,7 мы завели в контекст from-gsm. Если вы хотите знать на какого оператора звонят (sim-карту), вам нужно завести каналы 3 и 7 в разные контексты например from-gsm и from-gsm2.

Так как входящий вызов шлюз передает на exten, т.е. на номер равный номеру звонящего, нам нужно переопределить CALLERID и сделать его равным exten

[from-gsm]
exten = > _.,1,NoOp (EXTEN=${EXTEN})
same = > n,Set (CALLERID (all)=${EXTEN})
same = > n,Goto (from-trunk,79269269269,1)
[from-gsm2]
exten = > _.,1,NoOp (EXTEN=${EXTEN})
same = > n,Set (CALLERID (all)=${EXTEN})
same = > n,Goto (from-trunk,79159159159,1)

Иначе, если каналы 3,7 завести в контекст from-trunk (как это делается обычно для входящих линий) то при входящем звонке астериск звонящий номер будет считать DIDом вместо CIDа. Остается лишь настроить входящую маршрутизацию. Кто забыл как это делается, напомним: Connectivity – Inbound Routes

Звоним и проверяем что все работает

на шлюзе это выглядит так

 

 

И еще напомним как сделать внутренних абонентов dahdi.

Если вы не знаете какой порт шлюза будет использоваться, открываете консоль астериска и подключаете к астероиду телефон (см. схему разводки на стр. 48). Наблюдаем примерно следующее:

Это значит что для данного телефона используется порт 26. Теперь можно создать внутренний номер во freepbx, для этого создаем устройство с использованием технологии DAHDI указываем желаемый внутренний номер, например 206 и указываем канал – 26

Либо номер можно создать в /etc/asterisk/chan_dahdi.conf

;;;;;;[206]
signalling=fxo_ks
pickupgroup=
mailbox=206@device
immediate=no
echotraining=800
echocancelwhenbridged=no
echocancel=yes
context=from-internal
callprogress=no
callgroup=
callerid=206 <206>
busydetect=no
busycount=7
accountcode=
channel=>26

На этом обзор и настройку шлюза можно закончить. Если у вас что-то не получается, вы всегда можете воспользоваться нашими услугами по настройке. Со стоимостью можно ознакомиться тут.

Parabel, шлюз e1, сервер, GSM-шлюз, asterisk, установка, dahdi, настройка, шлюз, Подключение, FreePBX, Channel