User Tools

Site Tools


asterisk._телефонное_оборудование_и_безопасность_2025

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
asterisk._телефонное_оборудование_и_безопасность_2025 [2025/06/24 13:24]
val [2.5 Подключение "Городских линий" через оборудование с интерфейсом FXO к Asterisk]
— (current)
Line 1: Line 1:
-====== Asterisk. Телефонное оборудование и безопасность 2025 ====== 
  
-===== Программа курса ===== 
- 
-  * [[http://​www.specialist.ru/​course/​asterisk2|Asterisk. Уровень 2. Телефонное оборудование и безопасность]] 
-===== Модуль 0. Подготовка стенда в классе ===== 
- 
-  * Узнать свой номер стенда 
- 
-===== Модуль 1. Развертывание компьютерной и телефонной сети предприятия ===== 
- 
-==== Теория ==== 
- 
-  * Базовая схема компьютерной сети предприятия 
-  * Базовая схема телефонии предприятия 
- 
-==== Лабораторные работы:​ Настройка ip и voip сети предприятия ==== 
- 
- 
-==== 1.1 Схема стенда,​ импорт,​ настройка и запуск VM gate и server ==== 
-<​code>​ 
-Запустите с правами Administrator 
- 
-C:​\cmder\Cmder.exe 
- 
-λ bash 
- 
-λ cd 
- 
-λ test -d conf && rm -rf conf 
- 
-λ git clone http://​val.bmstu.ru/​unix/​conf.git 
- 
-λ cd conf/​virtualbox/​ 
- 
-!!! 2 - это номер курса, вместо X укажите Ваш номер стенда,​ если не помните,​ спросите преподавателя !!! 
- 
-λ ./setup.sh X 2 
-</​code>​ 
-==== 1.2 Настройка сети VM gate и server ==== 
- 
-  * [[Настройка стендов слушателей#​Настройка виртуальных систем Unix]] с использованием [[Настройка стендов слушателей#​Скрипты автоконфигурации]] 
- 
-  * win10 host LAN: 192.168.X.29/​24 
- 
-  * gate: Адаптер1-eth0-LAN,​ Адаптер2-eth1-WAN 
-<​code>​ 
-# sh net_gate.sh 
- 
-# init 6 
-</​code>​ 
- 
-  * server: Адаптер1-eth0-LAN 
-<​code>​ 
-# sh net_server.sh 
- 
-# init 6 
-</​code>​ 
- 
-  * Создать в Putty профили gate, server и подключиться 
- 
-==== 1.3 Настройка сервисов DHCP и DNS ==== 
- 
-  * [[Сервис DHCP]] 
-<​code>​ 
-gate:~# sh conf/​dhcp.sh 
-</​code>​ 
- 
-  * [[Финальная настройка DNS сервера]] 
-<​code>​ 
-server:~# sh conf/dns.sh 
-</​code>​ 
- 
-  * Настройка клиента DNS на gate и server 
-<​code>​ 
-# cat /​etc/​resolv.conf 
-</​code><​code>​ 
-search corpX.un 
-nameserver 192.168.X.10 
-</​code><​code>​ 
-# nslookup ns 
-</​code>​ 
- 
-==== 1.4 Настройка сервера Asterisk, sip каналов и базового плана звонков ==== 
- 
-  * [[Сервис Asterisk#​Установка]] 
-  * [[Сервис Asterisk#​Настройка CHAN_SIP каналов]] 
-  * [[Сервис Asterisk#​Настройка базового плана нумерации]] 
- 
-==== 1.5 Подключение телефонов ==== 
- 
-  * Самостоятельная работа **"​Ручная"​** настройка пользовательского оборудования SIP Phone Panasonic KX-HDVXXX ([[SIP Phone Panasonic KX-HDVXXX#​Настройка через WEB интерфейс]]) на номер 401 
- 
-  * Импорт VM Windows10, включение ​ 
-  * Настройка WAN, IP/M 172.16.1.100+X/​24,​ G: 172.16.1.254,​ DNS: 192.168.X.10 
-  * Подключение [[ZoIPer]] к каналу 402 
-===== Вопросы ===== 
- 
-  * Перечислите варианты,​ позволяющие узнать IP адрес, полученный оборудованием?​ 
- 
-===== Модуль 2: Подключение телефонного оборудования к Asterisk ===== 
- 
-==== Теория ==== 
- 
-==== Обзор типов телефонного оборудования и вариантов подключения его к Asterisk ==== 
- 
-  * [[https://​ru.wikipedia.org/​wiki/​IP-%D1%82%D0%B5%D0%BB%D0%B5%D1%84%D0%BE%D0%BD|IP-телефон]] 
-  * [[https://​ru.wikipedia.org/​wiki/​%D0%A2%D0%B5%D0%BB%D0%B5%D1%84%D0%BE%D0%BD%D0%BD%D1%8B%D0%B5_%D0%BF%D0%BB%D0%B0%D1%82%D1%8B_%D1%80%D0%B0%D1%81%D1%88%D0%B8%D1%80%D0%B5%D0%BD%D0%B8%D1%8F|Телефонные платы расширения]] 
-  * [[https://​www.digium.com/​products/​telephony-cards|Digium Telephony Cards]] 
-  * [[https://​ru.wikipedia.org/​wiki/​VoIP-%D1%88%D0%BB%D1%8E%D0%B7|VoIP-шлюз]] 
- 
-==== Интерфейсы FXS, FXO и PRI ==== 
- 
-  * [[https://​ru.wikipedia.org/​wiki/​FXS|FXS (Foreign Exchange Station или Subscriber)]] 
-  * [[https://​ru.wikipedia.org/​wiki/​FXO|FXO (Foreign eXchange Office)]] 
-  * [[https://​en.wikipedia.org/​wiki/​Loop_start|Loop start (often called kewlstart)]] 
-  * [[https://​ru.wikipedia.org/​wiki/​Мультиплексирование_с_разделением_по_времени|Мультиплексирование с разделением по времени]] 
-  * [[https://​ru.wikipedia.org/​wiki/​ISDN|ISDN (Integrated Services Digital Network)]] 
-  * [[https://​ru.wikipedia.org/​wiki/​PRI|Интерфейс первичного уровня (Primary Rate Interface, PRI)]] 
-  * [[https://​ru.wikipedia.org/​wiki/​Q.931|Q.931 - протокол управления соединениями для цифровой телефонии ISDN]] 
-==== Схема интеграции VoIP и классического телефонного оборудования предприятия ==== 
- 
-  * [[https://​ru.wikipedia.org/​wiki/​%D0%9E%D1%84%D0%B8%D1%81%D0%BD%D0%B0%D1%8F_%D0%90%D0%A2%D0%A1|Офисная АТС, учрежденческая АТС (УАТС)]] 
-  * [[https://​ru.wikipedia.org/​wiki/​IP-%D0%90%D0%A2%D0%A1|IP-АТС,​ IP-УАТС (IP-PBX, от Internet Protocol и Private Branch Exchange)]] 
- 
-==== Использование методик расчета количества каналов для подключения Asterisk к PSTN и PBX ==== 
- 
-  * [[https://​ru.wikipedia.org/​wiki/​%D0%AD%D1%80%D0%BB%D0%B0%D0%BD%D0%B3|Эрланг (обозначение Эрл) — безразмерная единица интенсивности нагрузки]] 
- 
- 
- 
- 
- 
-==== Лабораторные работы:​ Подключение голосовых шлюзов и IP телефонов к Asterisk ==== 
- 
- 
- 
- 
-==== 2.1 Интеграция Asterisk с классической PBX с использованием персонального голосового шлюза Linksys SPA-3102 ==== 
- 
-Статья:​ [[https://​wikival.bmstu.ru/​lib/​exe/​fetch.php?​media=voip_for_mobile_users.pdf|Возможности IP телефонии для мобильных пользователей]] 
- 
-**Сценарий**:​ Забыли про номерной план 4XX!!! В компании используется аналоговая ATC с номерным планом 1XX, разворачиваем рядом Asterisk, и переводим отдельных абонентов на более высокий класс обслуживания с помощью персональных шлюзов. 
- 
-**Методическая рекомендация**:​ Выполнять лабораторную работу в два этапа, отдельно для интерфейсов FXS и FXO 
- 
-  * 2.1.1 Переключение телефона 1XX сотрудника на Asterisk и предоставление ему услуг 
- 
-  * **Демонстрирует преподаватель** 
-<​code>​ 
-server# cat /​etc/​asterisk/​sip.conf 
-</​code><​code>​ 
-... 
-[101] 
-type=friend 
-secret=tpassword101 
-host=dynamic 
- 
-;[102] 
-... 
-</​code><​code>​ 
-gate# dhcp-lease-list 
-</​code>​ 
- 
-  * [[Linksys SPA-3102#​Включение WEB интерфейса на WAN интерфейсе]] (Узнать назначенный устройству IP адрес) 
-  * [[Linksys SPA-3102#​Настройка VoIP параметров]] 
- 
-  * **Делаем все** 
-  * Подключение к VoIP - [[Сервис Asterisk#​Шаблон конфигурации для осуществления исходящих вызовов]] и параметры NAT из [[Сервис Asterisk#​Настройка CHAN_SIP каналов]] 
-  * Сервис FollowMe ([[Сервис Asterisk#​Переадресация вызовов на внешний номер]]) 
- 
-  * **Демонстрирует преподаватель** 
-<​code>​ 
-server# cat /​etc/​asterisk/​extensions.conf 
-</​code>​ 
-<​code>​ 
-... 
-exten => 101,​1,​Dial(SIP/​${EXTEN},​10) 
-      same => n,​FollowMe(${EXTEN}) 
-      ​ 
-;exten => 102,​1,​Dial(SIP/​${EXTEN},​10) 
-;      same => n,​FollowMe(${EXTEN}) 
-... 
-</​code>​ 
- 
-  * 2.1.2 Соединение телефонов 1XX, подключенных к Asterisk с телефонами,​ подключенными к АТС 
- 
-<​code>​ 
-server# cat /​etc/​asterisk/​sip.conf 
-</​code><​code>​ 
-... 
-[fxo101] 
-type=friend 
-secret=fpassword101 
-host=dynamic 
- 
-;[fxo102] 
-... 
-</​code><​code>​ 
-server# cat /​etc/​asterisk/​extensions.conf 
-</​code><​code>​ 
-... 
-exten => _1XX/​101,​1,​Dial(SIP/​fxo101/​${EXTEN}) 
- 
-;exten => _1XX/​102,​1,​Dial(SIP/​fxo102/​${EXTEN}) 
-</​code>​ 
- 
-  * Linksys SPA-3102 ([[Linksys SPA-3102#​Настройка FXO/​LINE/​PSTN Line]]) 
- 
-==== 2.2 Подключение оборудования к Asterisk с использованием телефонных плат ==== 
- 
-**Сценарий**:​ Делаем Linksys из Asterisk и Платы Digium TDM 
- 
-  * **Демонстрирует преподаватель** 
- 
-  * [[Плата Digium TDM]] 
- 
-==== 2.3 Подключение телефонного оборудования к MGMT сети ==== 
- 
-**Методическая рекомендация**:​ проверку доступности стойки со стендов слушателей можно совместить с первой половиной (многопортовый FXS шлюз) следующей работы 
- 
-  * **Демонстрирует преподаватель** 
- 
-<​code>​ 
-Для системы server использовать алиасы и адрес 192.168.1.10/​24 
- 
-Для системы host (win у прохода) использовать адрес 192.168.X.5/​24 
-плюс дополнительный адрес 192.168.1.5/​24 на LAN  
-(!!! сделать,​ чтобы не было два default и зависимости от gate) 
- 
-Для системы client1 оставить dhcp (поможет в отладке лабы provisioning для spa3102) 
-</​code>​ 
- 
-  * Debian/​Ubuntu:​ [[Настройка сети в Linux#​Статическая настройка параметров]] 
-  * Настройка IP параметров [[TAU-32M.IP]] 
-  * Настройка IP параметров [[SMG-1016]] 
- 
-==== 2.4 Интеграция Asterisk с PBX с использованием многопортового голосового шлюза TAU-32M.IP ==== 
- 
-**Сценарий **: В компании используется аналоговая ATC с номерным планом 1XX, разворачиваем рядом Asterisk, и переводим отдельных абонентов на более высокий класс обслуживания с помощью многопортового шлюза с FXO/FXS интерфейсами. 
- 
-  * **Демонстрирует преподаватель** 
- 
-Примечание:​ 
- 
-  * Закомментировать все элементы конфигурации,​ относящиеся к spa3102 
-  * К линиям на столах слушателей подключены телефоны,​ которые играют роль абонентов Asterisk с номерами 103 ... 108, подключенными к порты FXS 3..8. Их линии ATC подключаются к портам FXO 11..16 
-  * В 109-ю линию включается телефон преподавателя - абонент классической PBX 
-  * Методически преподавтель показывает все этапы, слушатели делают окончательный вариант 
-  * Для тестирования доступности оборудования в стойке,​ при ее передаче,​ убрать на шлюзе алиас 192.168.1.1/​24 
- 
-Конфигурация:​ 
- 
-  * TAU-32M.IP [[TAU-32M.IP#​Настройка параметров SIP и плана номеров]] 
- 
-<​code>​ 
-server# cat /​etc/​asterisk/​sip.conf 
-</​code><​code>​ 
-;[101] 
-;... 
-... 
-;[fxo101] 
-;... 
-... 
-[tau32m] 
-type=peer 
-host=192.168.1.2 
-;​directmedia=no 
-</​code>​ 
- 
-  * TAU-32M.IP [[TAU-32M.IP#​Настройка FXS интерфейсов]] 
-  * TAU-32M.IP [[TAU-32M.IP#​Настройка FXO интерфейсов для звонков PBX->​TAU32->​SIP]] 
-  * TAU-32M.IP [[TAU-32M.IP#​Настройка FXO интерфейсов для звонков SIP->​TAU32->​PBX]] 
- 
-<​code>​ 
-server# cat /​etc/​asterisk/​extensions.conf 
-</​code><​code>​ 
-... 
-;exten => _1XX,​1,​Dial(SIP/​${EXTEN},​10) 
-;... 
- 
-;exten => _1XX/​101+X,​1,​Dial(SIP/​fxo101+X/​${EXTEN}) 
- 
-exten => _1XX,​1,​Dial(SIP/​tau32m/​${EXTEN},​10) 
-;      same => n,​NoOp(${DIALSTATUS}) 
- 
-      same => n,​GotoIf($["​${DIALSTATUS}"​ = "​CHANUNAVAIL"​]?​call_pbx) ​   
- 
-      same => n,​FollowMe(${EXTEN}) 
-      same => n,Hangup() 
-      ​ 
-      same => n(call_pbx),​Dial(SIP/​tau32m/​fxo${CALLERID(num)},,​D(ww${EXTEN})) 
-... 
-</​code>​ 
- 
-==== 2.5 Подключение "​Городских линий"​ через оборудование с интерфейсом FXO к Asterisk ==== 
- 
-  * **Делаем все** 
- 
-  * Подготовительное задание:​ [[Сервис Asterisk#​Шаблон конфигурации для обработки входящих вызовов]] 
- 
-  * **Демонстрирует преподаватель** 
- 
-**Общий сценарий**:​ Старую АТС выключили. В компанию приходит несколько городских линий для абонентов 4XX. 
- 
-**Сценарий 1**:  Подключаем несколько (2-3) городских линий 84951234560+X к Asterisk с помощью однопортовых шлюзов слушателей с FXO интерфейсом. Телефон на столе преподавателя (84951234560) и телефоны слушателей,​ шлюзы которых не используются,​ играют роль абонентов PSTN. Так же, нужно добавить функционал отправки вызова обратно в город (на телефон слушателя) в случае отсутствия ответа. 
- 
-  * [[Linksys SPA-3102#​Настройка параметров аналоговой линии]] (Демонстрация важности настройки Disconnect Tone) 
- 
-<​code>​ 
-server# cat /​etc/​asterisk/​sip.conf 
-</​code><​code>​ 
-... 
-[pstn2] 
-type=friend 
-secret=ppassword2 
-host=dynamic 
- 
-[pstn3] 
-type=friend 
-secret=ppassword3 
-host=dynamic 
- 
-[pstn4] 
-type=friend 
-secret=ppassword4 
-host=dynamic 
-</​code><​code>​ 
-server# cat /​etc/​asterisk/​extensions.conf 
-</​code><​code>​ 
-... 
-exten => _8XXXXXXXXXX,​1,​Dial(SIP/​voip1_00000X/​${EXTEN}) 
-exten => _8XXXXXXXXXX,​n,​Dial(SIP/​pstn2/​${EXTEN}) 
-exten => _8XXXXXXXXXX,​n,​Dial(SIP/​pstn3/​${EXTEN}) 
-exten => _8XXXXXXXXXX,​n,​Dial(SIP/​pstn4/​${EXTEN}) 
-... 
-exten => frompstn,​1,​Dial(SIP/​401&​SIP/​402,​10) 
-       same => n,​Goto(default,​84951234565,​1) 
-... 
-</​code>​ 
- 
-  * Linksys SPA-3102 ([[Linksys SPA-3102#​Настройка FXO/​LINE/​PSTN Line]]) 
- 
-**Сценарий 2**:  Подключаем городские линии Asterisk с помощью много-портового шлюза с FXO интерфейсами. ​ 
- 
-Реализация:​ 
- 
-  * Номера 84951234560 и 84951234561 играют роль городских линий, пришедших в офис и подключаются к портам FXO 9 и 10, которые объединяются в fxogroup 84951234569 (выдуманный номер, играющий роль общего номера для обоих линий). 
-  * Телефонные линии слушателей 84951234560+X включены в телефоны играют роль абонентов PSTN  
-  * Звонок из города,​ производится на любой из номеров 84951234560 или 84951234561 эмулируя передачу телефонным оператором вызова номера 84951234569 в свободную линию клиента. 
-  * Звонок в город производится с телефона 402 преподавателя (два параллельных звонка с двух каналов) 
- 
-Конфигурация:​ 
- 
-  * TAU-32M.IP [[TAU-32M.IP#​Объединение FXO интерфейсов в группу для звонков SIP->​TAU32->​PBX]] 
- 
-<​code>​ 
-server# cat /​etc/​asterisk/​extensions.conf 
-</​code><​code>​ 
-... 
-exten => _8XXXXXXXXXX,​1,​Dial(SIP/​tau32m/​84951234569,,​D(ww${EXTEN})) 
-... 
-exten => 84951234569,​1,​Dial(SIP/​401&​SIP/​402,​10) 
-;       same => n,​Goto(default,​84951234567,​1) 
-... 
-</​code>​ 
- 
-==== 2.6 Подключение Asterisk к PBX через оборудование с интерфейсом PRI ==== 
- 
-**Сценарий**:​ В компании используется классическая ATC с PRI интерфейсом,​ разворачиваем рядом Asterisk, новые IP телефоны,​ план нумерации для них. Соединяем абонентов старой АТС и Asterisk с помощью шлюза с PRI интерфейсом. Программируем в классической ATC транк в номерной план Asterisk через PRI интерфейс. 
- 
-  * **Демонстрирует преподаватель** 
- 
-=== Настройка Asterisk и голосового шлюза === 
- 
-  * [[SMG-1016]] 
- 
-<​code>​ 
-server# cat /​etc/​asterisk/​sip.conf 
-</​code><​code>​ 
-... 
-;[tau32m] 
-; ... 
-... 
-[smg1016] 
-type=peer 
-host=192.168.1.3 
-;​directmedia=no 
-</​code><​code>​ 
-server# cat /​etc/​asterisk/​extensions.conf 
-</​code><​code>​ 
-... 
-;exten => _1XX,​1,​Dial(SIP/​tau32m/​${EXTEN}) 
-;... 
-... 
-exten => _1XX,​1,​Dial(SIP/​smg1016/​${EXTEN}) 
-... 
-exten => _8XXXXXXXXXX,​1,​Dial(SIP/​smg1016/​${EXTEN}) 
-... 
-</​code>​ 
- 
-==== 2.7 Подключение к Asterisk телефонных аппаратов ==== 
- 
-  * Настройка SIP каналов 
- 
-<​code>​ 
-server# cat /​etc/​asterisk/​sip.conf 
-</​code><​code>​ 
-... 
-;[101] 
-; ... 
-... 
-[403] 
-type=friend 
-secret=tpassword403 
-host=dynamic 
- 
-[404] 
-type=friend 
-secret=tpassword404 
-host=dynamic 
-</​code>​ 
- 
-  * [[Сервис Asterisk#​Мониторинг текущего состояния абонента (BLF)]] (поддержка должна быть включена до настройки в телефоне) 
-  * Для дополнительных кнопочных панелей требуется внешний блок питания 
- 
- 
-==== 2.8 Использование Provisioning для настройки пользовательского телефонного оборудования ==== 
- 
-=== Настройка сервисов DHCP, TFTP и HTTP для поддержки Provisioning === 
- 
-  * Сервис DHCP [[Сервис DHCP#​Стандартная конфигурация]] [[Сервис DHCP#​Проверка конфигурации и запуск]] 
-  * [[Сервис ТFTP]] 
-  * [[Сервис HTTP#​Установка и запуск сервера Apache]] 
- 
-<​code>​ 
-gate# dhcp-lease-list 
-</​code>​ 
- 
-=== Подготовка файлов конфигурации VoIP оборудования для Provisioning === 
- 
-  * [[Cisco 7912#​Использование Provisioning]] для Cisco 7912 
-  * [[Linksys SPA-3102#​Использование Provisioning]] для Linksys SPA-3102 
-  * [[SIP Phone Panasonic KX-HDVXXX#​Использование Provisioning]] для SIP Phone Panasonic KX-HDVXXX 
-  * [[SIP Phone Digium D40#​Использование Provisioning]] для Digium D40 
- 
-<​code>​ 
-server# tcpdump -n -e -s0 -A host 192.168.X.IPPHONE 
-</​code>​ 
- 
-  * Linksys SPA-3102 [[Linksys SPA-3102#​Восстановление фабричных настроек]] 
-  * SIP Phone Panasonic KX-HDVXXX [[SIP Phone Panasonic KX-HDVXXX#​Сброс к заводским установкам]] 
- 
- 
- 
-=== Дополнительные задания === 
- 
-  * [[Сервис Asterisk#​Интеграция с Microsoft AD и LDAP]] 
-  * [[Сервис Asterisk#​Provisioning]] 
- 
-==== 2.9 Подключение Asterisk к PBX через плату с интерфейсом PRI ==== 
- 
-  * **Демонстрирует преподаватель** 
- 
-  * [[Плата OpenVox D130]] 
- 
-==== 2.10 Отладка и мониторинг телефонного оборудования по протоколу Syslog ==== 
- 
-  * [[Локализация системы#​Локализация временной зоны]] 
-  * [[Регистрация событий в Linux#​Регистрация сообщений,​ переданных по сети]] в Linux 
-  * Linksys SPA-3102 [[Linksys SPA-3102#​Отладка через Syslog]] 
- 
-===== Вопросы ===== 
- 
-  * В чем разница между FXO и FXS интерфейсами?​ 
-  * Чем отличаются сети с коммутацией пакетов от сетей с коммутацией каналов?​ 
-  * Какая формула используется для расчета необходимого количества телефонных линий? 
-  * Какое сообщение используется в PRI для инициализации исходящего вызова?​ 
-  * Как определить,​ поддерживает ли оборудование Provisioning?​ 
-  * В каком файле хранится конфигурация драйвера для телефонной платы? 
-===== Модуль 3: Управление прохождением голосового трафика через NAT и FIREWALL ===== 
- 
-==== Теория ==== 
- 
-  * [[https://​www.mango-office.ru/​support/​tekhnicheskaya_podderzhka/​sip_oborudovanie/​obshchie_voprosy_po_sip_telefonam/​translyatsiya_setevykh_adresov_nat_vidy_skhemy_raboty/​|Трансляция сетевых адресов (NAT) и SIP]] 
-  * [[http://​voiplab.by/​wiki/​asterisk/​61-asterisk-13-za-nat-net-zvuka-v-odnu-storonu-net-slyshimosti|Asterisk 11 за NAT, нет звука в одну сторону,​ нет слышимости... Что делать?​]] 
-  * [[http://​asterisk.ru/​knowledgebase/​RTP+Symmetric|Симметричный RTP]] 
-  * Варианты расположения VoIP участников с точки зрения NAT и FIREWALL 
-  * Особенности протоколов сигнализации SIP и IAX с точки зрения NAT и FIREWALL 
-  * Элементы конфигурации Asterisk с точки зрения NAT и FIREWALL 
-==== Лабораторные работы:​ Прохождения голосового трафика через NAT и FIREWALL ==== 
- 
-==== - 3.1 Распространение IP телефонии за пределы офиса ==== 
- 
-  * [[Сервис Asterisk#​Подключение Asterisk к Asterisk по протоколу IAX]] 
- 
-или, для видеозвонков:​ 
- 
-  * [[Сервис Asterisk#​Видеозвонки]] 
-  * [[Сервис Asterisk#​Настройка базового функционала IP PBX]] для подключение Asterisk к Asterisk по протоколу SIP 
-  * [[Сервис Asterisk#​Настройка плана нумерации]] 
- 
-==== 3.2 Настройка NAT и FIREWALL на интернет шлюзе предприятия ==== 
- 
-  * Отключаем маршруты в сети слушателей 
-  * Настраиваем NAT ([[Сервис NAT#​Трансляция на основе адреса отправителя]]) 
- 
-==== 3.3 Подключение SIP абонента (server.corpX.un),​ находящегося за NAT к Asterisk провайдера ==== 
- 
-<​code>​ 
-voip1.un# cat /​etc/​asterisk/​sip.conf 
-</​code><​code>​ 
-... 
-[000001] 
-... 
-;nat=yes 
-nat=force_rport,​comedia 
-;​canreinvite=no 
-directmedia=no 
-qualify=yes 
-... 
-[000006] 
-... 
-;nat=yes 
-nat=force_rport,​comedia 
-qualify=yes 
-;​canreinvite=no 
-directmedia=no 
-... 
-</​code><​code>​ 
-server# service asterisk restart 
-</​code>​ 
- 
-==== 3.4 Подключение Asterisk, находящегося за NAT к VoIP провайдеру ==== 
- 
-=== CHAN SIP === 
- 
-!!!Примечание!!! 
- 
-Эксперимент работает не сразу, попробовать ​ 
- 
-  * pfctl -F states на voip1.un 
-  * отключить windows firewall на host системе 
- 
-<​code>​ 
-server# cat /​etc/​asterisk/​sip.conf 
-</​code><​code>​ 
-[general] 
-... 
-localnet=192.168.1.0/​255.255.255.0 
-localnet=192.168.X.0/​255.255.255.0 
- 
-;;​externip=172.16.1.X 
-;​externaddr=172.16.1.X:​6050 
-externaddr=172.16.1.X 
-;;​defaultexpiry=60 
-... 
-[voip1_00000X] 
-... 
-nat=comedia 
-qualify=yes 
-directmedia=no 
-... 
-</​code>​ 
- 
-=== PJSIP === 
- 
-  * [[https://​wiki.asterisk.org/​wiki/​display/​AST/​Configuring+res_pjsip+to+work+through+NAT|Asterisk and Phones Connecting Through NAT to an ITSP]] 
-  * [[Сервис Asterisk#​Настройка RES_PJSIP каналов]] 
-==== 3.5 Использование DNS View для подключения к Asterisk предприятия ==== 
- 
-  * [[Сервис NAT#​Трансляция портов сервисов]] 
-  * Настраиваем DNS View ([[Финальная настройка DNS сервера]]) 
- 
- 
-==== 3.6 Подключение пользователей к Asterisk, находящемуся за NAT ==== 
- 
-!!!Примечание!!! 
- 
-На преподавательской системе прописать маршруты в сети слушателей (из-за сети 192.168.1.5/​24) 
- 
-<​code>​ 
-server# cat /​etc/​asterisk/​sip.conf 
-</​code><​code>​ 
-... 
-[402] 
-... 
-nat=force_rport,​comedia 
-directmedia=no 
-qualify=yes 
-... 
-[corpY] 
-... 
-nat=force_rport,​comedia 
-directmedia=no 
-;;​qualify=yes 
-... 
-</​code>​ 
- 
-==== 3.7 Подключение Asterisk к Asterisk ==== 
- 
-  * Достаточно перезапустить сервисы Asterisk для вступления в силу новых параметров DNS (см. /​etc/​asterisk/​dnsmgr.conf) 
- 
-<​code>​ 
-server# service asterisk restart 
-</​code>​ 
- 
- 
-===== Вопросы ===== 
- 
-  * Верно ли, что для получения входящих вызовов от VoIP провайдера Asterisk должен иметь публичный адрес? 
-  * Перечислите,​ какие задачи решают директивы конфигурации nat, directmedia,​ qualify, localnet/​externip?​ 
-  * Когда требуется открывать доступ к Asterisk из внешней сети? 
-  * В каком файле конфигурации Asterisk можно указать диапазон портов для голосового трафика?​ 
-  * Что должны разрешать правила в пакетном фильтре для передачи голосового трафика?​ 
-  * Что должны разрешать правила в пакетном фильтре для передачи SIP сигнализации?​ 
- 
-===== Модуль 4: Подключение внешних пользователей к телефонии предприятия ===== 
- 
-==== Теория ==== 
- 
-  * [[http://​voipapplication.blogspot.com/​2009/​01/​120000-phone-bill-voip-hacked-small.html|"​Voip hackers runs up a phone bill worth $120,​000"​.]] 
-==== Вопросы безопасности при подключении внешних пользователей ==== 
- 
-  * [[Сервис Asterisk#​Поддерживаемые версии]] 
-  * [[Сервис Asterisk#​Список проблем безопасности]] 
- 
-==== Варианты защиты Asterisk от несанкционированного использования ==== 
- 
-  * Сервис Asterisk ([[Сервис Asterisk#​Зашита от несанкционированного использования]]) 
-  * [[https://​code.google.com/​p/​sipvicious/​|SIPVicious security tools]] 
- 
-==== Лабораторные работы:​ Внешние пользователи и безопасность ==== 
- 
-==== 4.1 Использование хешей паролей ==== 
- 
-  * [[http://​asterisk-support.ru/​forum/​topics/​3032/​|SIP авторизация и MD5]] 
-  * [[Сервис Asterisk#​Использование хешей паролей для каналов типа user]] 
- 
-==== 4.2 Настройка безопасного распространения файлов конфигурации VoIP оборудования ==== 
- 
-<​code>​ 
-gate# dhcp-lease-list 
- 
-server# tcpdump -n -e -s0 -A host 192.168.X.IPPHONE and port 80 
-</​code>​ 
- 
-<​code>​ 
-server# cd /​var/​www/​html/​ 
- 
-server# mv -v spa-000E08NNNNNN.cfg /root/ 
-</​code>​ 
- 
-  * [[Пакет OpenSSL#​Использование алгоритмов симметричного шифрования]] 
-  * Linksys SPA-3102 [[Linksys SPA-3102#​Безопасное распространение файлов конфигурации]] 
-  * Linksys SPA-3102 [[Linksys SPA-3102#​Восстановление фабричных настроек]] 
- 
-  * [[Пакет OpenSSL#​Создание самоподписанного сертификата]] для системы server.corpX.un 
-  * [[Сервис HTTP#​Поддержка протокола HTTPS]] 
-  * SIP Phone Panasonic KX-HDVXXX [[SIP Phone Panasonic KX-HDVXXX#​Использование Provisioning]] 
- 
- 
-==== 4.3 Шифрование телефонного трафика ==== 
- 
-  * Требует телефона с поддержкой TLS SRTP, например - [[ZoIPer]] 3.15 (требует добавление самоподписанного сертификата в систему) или [[PhonerLite]] (принимает самоподписанный сертификат) 
-  * Прослушивание голосового трафика (на gate, [[Утилита Wireshark]],​ [[Файловый сервер SAMBA#​Публичный каталог доступный на запись]]) 
- 
-<​code>​ 
-gate# tcpdump -ni eth1 -s0 -w file1.dmp ​ 
-</​code>​ 
- 
-  * [[Пакет OpenSSL#​Создание самоподписанного сертификата]] для системы server.corpX.un 
-  * [[Сервис Asterisk#​Использование TLS]] в Asterisk 
- 
- 
- 
-==== 4.4 Настройка Asterisk для защиты от несанкционированного использования ==== 
- 
-  * [[https://​val.bmstu.ru/​unix/​voip/​python-2.7.10.msi]] 
-  * [[https://​val.bmstu.ru/​unix/​voip/​sipvicious-0.2.8.zip]] 
- 
-=== Ищем сервера Asterisk === 
-<​code>​ 
-gate.isp.un:​~#​ apt-get install sipvicious 
- 
-userX@gate.isp.un:​~$ svmap 172.16.1.1-172.16.1.13 
- 
- 
-C:​\bin\sipvicious-0.2.8>​svmap.py 172.16.1.1-172.16.1.254 
- 
-C:​\>​c:​\Python27\python.exe C:​\sipvicious-0.2.8\svmap.py 172.16.1.1-172.16.1.10 
-... 
-</​code>​ 
- 
-  * [[Сервис Asterisk#​Сокрытие версии]] 
- 
-=== Подключаемся под произвольной учетной записью === 
-<​code>​ 
-server# cat /​etc/​asterisk/​sip.conf 
-</​code><​code>​ 
-[general] 
-... 
-autocreatepeer=no 
-... 
-</​code><​code>​ 
-server# asterisk -rx 'sip show settings'​ | grep AutoCreate 
-</​code><​code>​ 
-  AutoCreate Peer:        Off 
-</​code>​ 
- 
-=== Звоним анонимно === 
- 
-!!! Для демонстрации необходимо установить струю версию [[ZoIPer]] !!! 
- 
-<​code>​ 
-server# cat /​etc/​asterisk/​sip.conf 
-</​code><​code>​ 
-[general] 
-... 
-allowguest=no 
-... 
-</​code><​code>​ 
-server# asterisk -rx 'sip show settings'​ | grep unknown 
-</​code><​code>​ 
-  Allow unknown access: Yes 
-</​code>​ 
- 
-=== Определяем имена каналов === 
- 
-<​code>​ 
-userX@gate:​~$ svwar --force -e100-999 172.16.1.X 
- 
-c:​\Python27\python.exe C:​\sipvicious-0.2.8\svwar.py --force -e100-999 172.16.1.X 
-... 
-server# asterisk -rx 'sip show settings'​ | grep rejects 
-</​code><​code>​ 
-  Always auth rejects: No 
-</​code><​code>​ 
-server# cat /​etc/​asterisk/​sip.conf 
-</​code><​code>​ 
-[general] 
-... 
-alwaysauthreject=yes 
-... 
-</​code>​ 
- 
-=== Подбираем пароль к каналу === 
-<​code>​ 
-server# cat /​etc/​asterisk/​sip.conf 
-</​code><​code>​ 
-... 
-[401] 
-secret=1234 
-... 
-</​code><​code>​ 
-C:​\bin\sipvicious-0.2.8>​svcrack.py -u401 -r1-9999 -z4 172.16.1.X 
-</​code>​ 
-  * [[Утилита hydra]] 
-<​code>​ 
-userX@gate:​~$ svcrack -u401 -d 10-million-password-list-top-1000000.txt 172.16.1.X 
-</​code>​ 
- 
-=== Ограничиваем доступ к каналу === 
- 
-  * [[Сервис Asterisk#​Использование шаблонов в именах CHAN_SIP каналов]] 
- 
-==== 4.5 Использование контекстов,​ для построения матрицы доступа SIP каналов к номерным планам ==== 
- 
-<​code>​ 
-server# cat /​etc/​asterisk/​sip.conf 
-</​code><​code>​ 
-[general] 
-... 
-context=default 
-... 
-subscribecontext=blf 
-... 
-[office](!) 
-context=from-office 
-... 
- 
-[internet](!) 
-context=from-internet 
-... 
- 
-[401] 
-context=from-office 
-... 
-[402] 
-context=from-internet 
-... 
-[403] 
-context=from-office 
-... 
-[404] 
-context=from-office 
-... 
-[voip1_00000X] 
-context=incoming 
-... 
-</​code><​code>​ 
-server# cat /​etc/​asterisk/​iax.conf 
-</​code><​code>​ 
-... 
-[corpY] 
-;type=user 
-context=from-corp 
-... 
-</​code><​code>​ 
-server# cat /​etc/​asterisk/​extensions.conf 
-</​code><​code>​ 
-[default] 
- 
-exten => _X.,​1,​Playback(vm-goodbye) 
-exten => _X.,​n,​Hangup() 
- 
-[blf] 
-exten => _4XX,​hint,​SIP/​${EXTEN} 
- 
-[from-office] 
-include => to-office 
-include => to-corp 
-include => to-pstn 
- 
-[from-internet] 
-include => to-office 
-include => to-corp 
- 
-[from-corp] 
-include => to-office 
- 
-[to-office] 
-;exten => _1XX ... 
- 
-exten => 301 ... 
- 
-exten => _4XX ... 
- 
-[to-corp] 
-exten => _00Y[41]XX,​1,​Set(CALLERID(num)=00X${CALLERID(num)}) 
-exten => _00Y[41]XX,​n,​Dial(IAX2/​corpY/​${EXTEN:​3}) 
- 
-[to-pstn] 
-exten => _8XXXXXXXXXX,​1,​Dial(SIP/​voip1_00000X/​${EXTEN}) 
- 
-[incoming] 
-exten => voip1_00000X,​1,​Dial(SIP/​401&​SIP/​402&​SIP/​403&​SIP/​404) 
-</​code>​ 
- 
-  * Сервис FollowMe ([[Сервис Asterisk#​Переадресация вызовов на внешний номер]]) 
- 
-<​code>​ 
-server# cat /​etc/​asterisk/​extensions.conf 
-</​code><​code>​ 
-... 
-[to-pstn] 
-;!!! Authenticate !!! 
- 
-exten => _89XXXXXXXXX,​1,​Dial(SIP/​voip1_00000X/​${EXTEN}) 
- 
-exten => _8495XXXXXXX,​1,​Dial(SIP/​voip1_00000X/​${EXTEN}) 
- 
-exten => _8499XXXXXXX,​1,​Dial(SIP/​voip1_00000X/​${EXTEN}) 
-... 
-</​code>​ 
- 
-==== 4.6 Меняем порт sip для внешних подключений к asterisk ==== 
- 
-  * [[Финальная настройка DNS сервера]] 
-  * [[Сервис NAT#​Трансляция портов сервисов]] 
- 
-<​code>​ 
-# nslookup -q=SRV _sip._udp.corpX.un 
-</​code>​ 
-==== 4.7 Использование возможностей пакетных фильтров и дополнительного ПО для защиты Asterisk от несанкционированного использования ==== 
- 
-  * [[Сервис Fail2ban]] 
- 
-===== Вопросы ===== 
- 
-  * Почему не рекомендуется использовать решения VPN для IP телефонии?​ 
-  * На что следует обратить внимание при настройке защиты Asterisk в первую очередь?​ 
-  * Что определяют параметры конфигурации autocreatepeer,​ allowguest, alwaysauthreject в конфигурации Asterisk? 
- 
-===== Модуль 5: Итоговая работа ===== 
- 
-  * [[Сервис Asterisk#​Настройка RES_PJSIP каналов]] 
- 
-===== Дополнительные задания ===== 
- 
-==== Задание 1: Настройка SIP оборудования ==== 
- 
-  * [[Сервис Asterisk#​Настройка базового функционала IP PBX]] 
-<​code>​ 
-gate# dhcp-lease-list 
-</​code>​ 
-  * [[Базовая станция DECT KX-UDS124]] 
-  * [[Микросотовый терминал KX-UDTXXX]] 
asterisk._телефонное_оборудование_и_безопасность_2025.1750760644.txt.gz · Last modified: 2025/06/24 13:24 by val