ServerAdmin.ru
26.7K subscribers
204 photos
24 videos
8 files
2.49K links
Авторская информация о системном администрировании.

Информация о рекламе: @srv_admin_reklama_bot
Автор: @zeroxzed

Второй канал: @srv_admin_live
Сайт: serveradmin.ru
Download Telegram
Полностью обновил статью, актуализировав софт до последней версии. Проверил несколько раз, по инструкции все собирается без ошибок. Несмотря на то, что сам предпочитаю использовать ванильный ванильный (vanilla) астериск, решил не бросать статью, так как она пользуется популярностью. Видимо где-то в выдаче высоко сидит.
https://serveradmin.ru/ustanovka-asterisk-i-freepbx-na-centos-7/

#статья #asterisk
Небольшая справочная пошаговая инструкция по установке Asterisk 16 на Centos 8. Обе системы на текущий момент последние LTS релизы, так что использоваться будут еще долго. По статье все настраивается копипастом. В конце видео для тех, у кого что-то не получится.
https://serveradmin.ru/ustanovka-asterisk-16-na-centos-8/

#статья #centos #asterisk
Написал обзорную статью по установке Freepbx на Centos 8. По итогу выходит, что Freepbx не готова к работе на 8-й версии Centos. У меня не получилось добиться работы без ошибок. Пробовал 14-ю и 15-ю версии и php 5.6 и 7.2. Рад получить отзывы, если кто-то уже пробовал в проде эту связку или хотя бы удалось настроить и проверить реальную работу.
https://serveradmin.ru/ustanovka-freepbx-na-centos-8/

#статья #centos #asterisk
Обновил и переработал старую и очень популярную статью по настройке астериска. Актуализировал под Centos 8 и последнюю LTS версию Asterisk 16. Так же убрал из конфига все, что связано с модулем macro, который объявлен устаревшим и заменил на gosub. Запись звонков, web панель со статистикой и все остальное тоже обновилось. По статье все работает, проверил.
https://serveradmin.ru/nastroyka-servera-telefonii-asterisk-s-nulya/

#статья #asterisk
У меня есть старая и очень популярная статья по настройке Asterisk - https://serveradmin.ru/nastroyka-servera-telefonii-asterisk-s-nulya/ Я ее начал писать, когда вообще не разбирался в теме и закончил, полностью освоив материал. По нему внедрил с нуля voip телефонию в одной организации. То есть статья полностью адаптирована для новичков.

Недавно я полностью актуализировал статью, но оставил sip протокол, который сейчас объявлен deprecated. Надо переходить на pjsip. Я немного покопал тему и удивился, что в интернете очень мало информации по ключевым отличиям. Лично мне было не понятно, зачем переходить на pjsip и переделывать конфиги и dialplan. Что я от этого получу? Переход ради перехода меня не устраивает. Вот основные отличия, которые я в итоге отметил для себя.

1️⃣ PJSIP поддерживает множественную регистрацию. С ним будет проще взаимодействовать с несколько одновременно подключенными устройствами к одному и тому же номеру.

2️⃣ Внедрен механизм Publishing Extension State - публикация состояния экстеншена. Если раньше для отслеживания состояния нужно было подключаться к астериску и следить за нужным экстеншеном, то теперь он сам может оповещать какой-то объект о своем состоянии.

3️⃣ В PJSIP реализован функционал Resource List Subscriptions. Он существенно уменьшает объем SUBSCRIBE трафика. Суть в том, что переработан механизм подписок, которые раньше росли в геометрической прогрессии при увеличении числа абонентов с подписками.

4️⃣ PJSIP более гибок в настройках внешних транков. Видел информацию, что лучше работает с различными реализациями NAT и фаерволов. Хотя лично я и с SIP не испытывал с этим особых проблем.

5️⃣ PJSIP реализован в виде пакета загружаемых модулей, в то время как chan_sip в виде единого модуля драйвера канала. Отличие архитектурное и принципиальное, хотя для конечного пользователя это особого значения не имеет.

В целом, это все. Каких-то других отличий, с которыми придется столкнуться во время настройки или перехода на pjsip, я не нашел. В подавляющем большинстве случаев, где мне приходилось настраивать астериск, все эти отличия были не принципиальны, так что практической пользы при переходе на pjsip я бы не получил. А что использовать вам - решайте сами.

#asterisk
​​Делюсь информацией о полезном сервисе для настройки voip. Я постоянно им пользовался, когда разбирался с настройкой asterisk и тестировал различные конфигурации.

Речь идет о zadarma. В принципе, известный провайдер ip телефонии. Я о нем узнал, когда обслуживал call центр. Они через него пускали некоторый исходящий трафик, чтобы экономить.

Я сейчас не берусь сравнивать цены, так как это большой и отдельный труд все посчитать и понять, где тебе дешевле звонить. Но название намекает, что это лоу костер. Я у них же номер взял для сайта чисто по приколу :) Там автоответчик, иногда кто-то звонит и что-то оставляет. Я все слушаю, но за год ни одного реально полезного звонка не было, на который бы я ответил.

Рассказать я не об этом хотел. Удобство Zadarma в том, что после регистрации ты получаешь пир из внутренней сети оператора. Это обычный 6-ти значный номер, который можно подключить как транк для внешних звонков. И создать таких пиров можно несколько. Это все бесплатно. Вы сразу же получаете адрес сервера, логин, пароль. И можно подключать оборудование.

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

Таким же образом можно подключить несколько asterisk серверов и настроить связь между ними и т.д. В общем, много всего натестировать. Можно даже из мира позвонить через внешний номер zadarma и затем ввести свой добавочный 6-ти значный. Попадете на свой внутренний пир.

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

#asterisk
Вчера писал про сервис, который можно прикрутить к zabbix и слать смски или звонить по телефону. Вспомнился случай один из практики. Я настраивал мониторинг и в какой-то момент меня попросили сделать так, чтобы по определенным триггерам он мог позвонить на телефон и что-то сказать.

В целом, настройка тут очень простая. Я делал с помощью asterisk. Если вы с ним знакомы, то большого труда не составит все реализовать. Логика там такая. Zabbix запускает скрипт по событию, который формирует call файл для asterisk. А тот эти файлы в режиме реального времени мониторит и начинает сразу звонить, когда новый появляется. Я все это описывал в своей статье.

Так вот, триггер там был так себе, не супер критичный. Я бы на такое звонить не стал, о чем и сказал. Вообще, слать смс и звонить в любое время суток можно только по супер критичным метрикам. Например, у вас интернет магазин и он недоступен уже минут 10. Вот это достойно того, чтобы позвонить кому-то даже ночью, если у вас в это время идут продажи и бизнес встает при недоступности сайта.

А если у вас проц 30 минут загружен на 100%, но при этом все работает и нет дежурной смены, то админа не стоит из-за этого будить ночью. Утром встанет, разберется, если проблема останется. Там было событие (бизнес метрика, привязанная к базе), которое только предвещало беду, но еще не было бедой само по себе. Я все объяснил заказчику. Он сказал, что с него требуют такую настройку. Более того, тот, кто требует, хочет еще и сам такие звонки получать. Ему это нужно для какого-то контроля. Ну раз хочет, пусть получает. Я все настроил.

Через пару недель меня попросили отключить этот триггер. Он сработал 2 ночи подряд и позвонил этому начальнику. В итоге он понял, что плохая была идея и отыграл все назад. Они, кстати, больше вообще не попросили никаких оповещений в виде звонков на телефон.

❗️Надо очень аккуратно относиться к оповещениям мониторинга и настраивать только то, что действительно важно. Как только идет спам из мониторинга, на который забивают, считай, что мониторинга у вас нет. Я всегда это объясняю заказчикам и проговариваю, что хороший мониторинг это непрерывный процесс, который требует длительной калибровки. Не получится у вас один раз все настроить и с этим жить. Не видел такого ни разу. Все системы разные и триггеры с оповещениями 100% придется донастраивать в процессе.

#zabbix #мониторинг #asterisk
​​Кто-нибудь может пояснить один момент, который давно мне непонятен. Недавно занимался переносом и настройкой asterisk и с удивлением обнаружил, что его по-прежнему собирают из исходников.

У меня у самого на сайте куча статей по сборке астера из исходников под разные системы. Это единственная программа на Linux, которую регулярно приходится собирать самостоятельно.

Я погуглил немного тему и не нашёл ни одной статьи или упоминания о каком-то более ли менее доверенном репозитории, откуда можно было бы брать пакеты Asterisk для Debian. На самом сайте разработчиков тоже только исходники.

В настоящий момент в стандартной репе Debian 11 есть Asterisk 16 LTS, но уже вышла 18 LTS, так что ставить 16 нет никакого смысла. В итоге опять пришлось собирать из исходников. Почему для астера нет нормального репозитория? Можно подумать, что он сейчас потерял популярность и массово не используется, но и 10 лет назад была такая же история. Все собирали его из исходников. Прям традиция сформировалась - хочешь настроить Asterisk, собери его сам.

Может я плохо смотрел и не нашёл то, что искал? Вы откуда Asterisk ставите?

#asterisk
​​В одном из обсуждений на тему Asterisk кто-то упомянул сборку Issabel PBX. Я не сразу понял, что это вообще такое и пошёл разбираться. Мне этот продукт не знаком. Сейчас самое популярное готовое решение для организации voip связи - FreePBX. Лично я очень не люблю эту панель. Мне не нравится интерфейс, неинтуитивная настройка, сложности с кастомизацией. Я быстрее обычный Asterisk настрою.

Когда стал смотреть внешний вид Issabel, понял, что он мне что-то напоминает. И вспомнил - Elastix. Мне доводилось много лет назад управлять телефонией на основе этой панели управления. Лично мне она нравилась больше, чем FreePBX. Но потом Elastix был куплен 3CX и перестал быть бесплатным. Точнее, там большие ограничения появились для бесплатной версии и фактически её перестали использовать.

Походил по сайту Issabel. Проект показался не очень живым. Информации мало, какие-то ссылки битые. Кто-нибудь пользуется им? Можете дать обратную связь? Стоит обратить на него внимание или можно уже забыть?

Сайт - https://www.issabel.org

#asterisk
На днях у меня случилась неприятная история с одним из серверов Asterisk. Пользователи стали жаловаться на то, что не работает межгород. Звонят по нему редко, так что заметили не сразу. Я проверил, и правда не звонит. Сервер оператора возвращает 500-ю ошибку:
Got SIP response 500 "Service Unavailable"

Звоню в тех. поддержку. Там ответили, что мы вас отключили ещё 2 недели назад за подозрительные звонки на Кубу. Тут я запереживал немного, стал проверять. Действительно было немного звонков туда от одной учётной записи. Пароль сменил, международные звонки вообще отключил. Позвонил оператору и попросил нас разбанить.

Я всегда запрещаю по максимому все звонки и вообще к телефонии отношусь очень аккуратно. На этом сервере удалённые подключения долго были запрещены, пиры только из офиса и vpn подключались. Потом меня очень попросили сделать возможность пользоваться телефонией со смартфонов. Я настроил отдельную группу номеров, которые могут подключаться извне, но разрешены были только локальные звонки.

Потом пришла удалёнка и люди со своими аппаратами разъехались по домам. Ограничить доступ стало невозможно, потому что каждому дома не настроишь VPN до офиса на его железе. Пришлось разрешить все звонки и таким удалёнщикам. Международные звонки по прежнему были отключены, но они нужны. Открывал их вручную по заявкам, но в какой-то момент это надоело, так как оперативно не получалось решить вопрос, а звонить надо здесь и сейчас. Открыл для всех. Закончилось это историей, с которой я всё начал.

На сервере настроен мониторинг исходящих звонков и активных подключений. Спам звонками заметил бы. Fail2ban тоже был и работал для защиты от переборов и некоторой другой активности. Подстраховался как мог, но всё равно не помогло. Слитая учётка особо не отсвечивала и звонила редко, раз в 5-10 минут. Повезло, что у оператора стояла защита на подозрительные направления. Международные звонки отключили сразу.

Как на 100% защититься от такой ситуации - не знаю. Сейчас все по домам сидят, работают. Всем нужна связь. Спасти может только сам оператор своими методами защиты и лимитом дневного бюджета. Рекомендую заранее связаться с провайдером и спросить, что будет, если учётка уйдёт на сторону и начнутся звонки на Кубу. Как уже сказал, я у себя международные звонки опять отключил, настроил уведомление себе на почту при попытке позвонить по 8-10... Раньше так и было, но расслабился. Так хотя бы сразу засветится проблемный пир.

Кстати, косвенно помогла моя педантичность в выписывании масок для звонков. Я не разрешаю одним правилом всё подряд, а аккуратно выписываю разрешённые направления. В логах была куча попыток позвонить через номера, начинающиеся с 00, 01, 02, 03, ~1, +1, +2 и т.д. То есть куча левых направлений. Но все они отфутболились, потому что для них не было настроенных масок для звонков. Только _810X. и внутрироссийские.

А вы как защищаетесь от таких атак? Понятно, что самый надёжный способ подключать пиров только через VPN, но мне кажется, это малореально в текущих условиях. Придётся преднастроенные смартфоны и телефоны сразу с настроенными роутерами выдавать. Я, кстати, так тоже делал, но это немассовое решение (юзеру выдавался настроенный mikrotik и sip телефон комплектом). Также покупал аппараты с поддержкой OpenVPN внутри. Были такие Грандстримы. Но ненадёжно работало и трудно дебажить проблемы связи, пришлось отказаться.

Напишите в комментариях, кому интересно, стоит мне отдельным постом написать, как я мониторю и защищаю сервер Asterisk. Тема узкая и, думаю, что мало кому интересная в наши дни.

#asterisk #sip #security
Технический пост, который уже давно нужно было сделать, но всё руки не доходили. На канале много содержательных заметок по различным темам. Иногда сам через поиск ищу то, о чём писал. Ниже набор наиболее популярных тэгов по которым можно найти что-то полезное (и не очень).

#remote - все, что касается удалённого управления компьютерами
#helpdesk - обзор helpdesk систем
#backup - софт для бэкапа и некоторые мои заметки по теме
#zabbix - всё, что касается системы мониторинга Zabbix
#мониторинг - в этот тэг иногда попадает Zabbix, но помимо него перечислено много различных систем мониторинга
#управление #ITSM - инструменты для управления инфраструктурой
#devops - в основном софт, который так или иначе связан с методологией devops
#kuber - небольшой цикл постов про работу с kubernetes
#chat - мои обзоры на популярные чат платформы, которые можно развернуть у себя
#бесплатно - в основном подборка всяких бесплатностей, немного бесплатных курсов
#сервис - сервисы, которые мне показались интересными и полезными
#security - заметки, так или иначе связанные с безопасностью
#webserver - всё, что касается веб серверов
#gateway - заметки на тему шлюзов
#mailserver - всё, что касается почтовых серверов
#elk - заметки по ELK Stack
#mikrotik - очень много заметок про Mikrotik
#proxmox - заметки о популярном гипервизоре Proxmox
#terminal - всё, что связано с работой в терминале
#bash - заметки с примерами полезных и не очень bash скриптов или каких-то команд. По просмотрам, комментариям, сохранениям самая популярная тематика канала.
#windows - всё, что касается системы Windows
#хостинг - немного информации и хостерах, в том числе о тех, кого использую сам
#vpn - заметки на тему VPN
#perfomance - анализ производительности сервера и профилирование нагрузки
#курсы - под этим тэгом заметки на тему курсов, которые я сам проходил, которые могу порекомендовать, а также некоторые бесплатные курсы
#игра - игры исключительно IT тематики, за редким исключением
#совет - мои советы на различные темы, в основном IT
#подборка - посты с компиляцией нескольких продуктов, объединённых одной тематикой
#отечественное - обзор софта из реестра отечественного ПО
#юмор - большое количество каких-то смешных вещей на тему IT, которые я скрупулезно выбирал, чтобы показать вам самое интересное. В самом начале есть шутки, которые придумывал сам, проводил конкурсы.
#мысли - мои рассуждения на различные темы, не только IT
#разное - этим тэгом маркирую то, что не подошло ни под какие другие, но при этом не хочется, чтобы материал терялся, так как я посчитал его полезным
#дети - информация на тему обучения и вовлечения в IT детей
#развитие_канала - серия постов на тему развития данного telegram канала

Остальные тэги публикую общим списком без комментариев, так как они про конкретный софт, понятный из названия тэга:
#docker #nginx #mysql #postgresql #gitlab #asterisk #openvpn #lxc #postfix #bitrix #икс #debian #hyperv #rsync #wordpress #zfs #grafana #iptables #prometheus #1с #waf #logs #netflow
​​Безопасность IP-АТС Asterisk

Прежде чем продолжать тему безопасности в Asterisk я посмотрел 3,5 часовое видео на эту тему и рекомендую его всем, кому это актуально. Информация там интересная и полезная, потому что видно, рассказывает практик с большим опытом. Но из-за формата видео, оно очень длинное, а реально практической информации там от силы на пол часа. Тут бы идеально зашла статья с примерами реализации всего сказанного, но как я уже говорил, хорошие качественные статьи сейчас особо нет смысла писать, поэтому их и нет. Приходится довольствоваться такими вебинарами.

Сразу отмечу, что оставлять Asterisk доступным из интернета эта нормальная практика, если соблюдать определённые предосторожности. Автор как раз описал кейс, который есть у меня. Люди ездят в Европу и им нужна sip связь через смартфон, чтобы совершать звонки. С впнами или другими ограничениями у них там 100% возникнут какие-то проблемы. Этот вопрос можно проработать без закрытия прямого доступа к астеру.

💡 Итак, практические рекомендации из видео:
Защита АТС на уровне сети. Обязательно Firewall с fail2ban, по возможности VPN и в отдельный VLAN всё, что связано с voip. Если есть возможность, на Firewall отключаем ненужные страны. Если умеем смотреть L7, отсекаем левые User-Agent, либо разрешаем только свои. Автор предложил ещё один любопытный способ защиты. Вешаем астер на рандомное доменное имя, которое никто не знает и отсекаем всех тех, кто обращается к серверу не по нему. Для этого тоже надо уметь смотреть L7. Либо еще один вариант защиты. Вешаем астер на 2 внешних ip, основной и второй как ловушка для ботов. Люди пользуются только одним ip, а всех, кто обращается ко второму баним сразу для обоих ip адресов. То есть используем технологию honey pot.
Защита на уровне конфигурации. Тут целый набор рекомендаций: скрываем версию сервера, ставим сложные пароли, вводим pin коды для дорогих направлений, ставим call-limit, сажаем всех в разные контексты по группам, аккуратно настраиваем dialplan, разграничивая направления масками, запрещаем звонки ночью и в выходные, если не надо и т.д.
Защита самой системы. Тут всё стандартно и ничего интересного. Защищаем саму ОС, обновляем своевременно систему и PBX и т.д. В общем, всё что админы и так стандартно должны делать, но иногда не делают, потому что не всегда можно просто взять и обновить Asterisk, особенно, если надо перейти на следующую ветку.
Защита периферийного оборудования. Тут было много интересных историй и рекомендаций. Многие не обращают особое внимание на защиту, когда сервер закрыт в локалке или в vpn и не смотрит наружу. Но это особо ничего не гарантирует, потому что креды от пира могут утечь и внутри закрытого периметра. Один из таких случаев я, кстати, рассказывал. Взломали микротик и через него пробросили vpn к sip северу и звонили. В общем случае все меры предосторожности должны соблюдаться по максимуму, даже если астериск не доступен извне.

Отдельно расскажу про мониторинг. В видео про него практически ничего не было. Скажу, что я обычно мониторю на Asterisk:
channels, которые видно через "sip show channels". Если появляется какой-то всплеск идёт оповещение и блокируется ip, который открывает их слишком много.
количество исходящих звонков. Если их больше среднего, срабатывает триггер.
статус некоторых пиров и транков
работу службы Fail2ban, Iptables и наличие цепочек fail2ban в правилах
отдельно смотрю в "sip show channels" спам инвайтами и баню тех, кто спамит слишком часто. Я не знаю, зачем некоторые это делают и чем опасен такой спам. Баню на всякий случай.

Остальной мониторинг по стандарту - загрузка ресурсов, трафик, аптайм, доступность, работа служб и т.д.

Отдельно дам рекомендацию тем, кто думает поднимать свою IP-АТС любой реализации. Если есть возможность, купите телефонию как сервис или наймите внешних подрядчиков на внедрение и поддержку. Это реально проблемная история, которая требует опыта и постоянной вовлечённости.

#asterisk #security
​​Посмотрел очередное выступление с Asterconf 2021, которое мне показалось интересным и полезным для тех, кто работает с Asterisk:

Автоматизация разворачивания станций на Asterisk с использованием Docker контейнеров, https://www.youtube.com/watch?v=_IF7IzcDmRQ

До этого тоже смотрел все видео с конференции на канале, но показались больше теоретическими и не очень интересным. А тут прям конкретика с примерами, подходами, софтом и т. д. Интересно было послушать. Как-то вообще не видел, чтобы Asterisk запускали в Docker. Это такой софт, который один раз поставил и обновляешь очень не часто, только если прижмёт и надо будет по безопасности закрывать дыры. То есть вопросы с частым деплоем вообще не стоят.

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

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

00:00 Начало выступления
00:09 Проблемы STANDALONE ASTERISK
01:37 WHAT's DOCKER.IO
02:02 Преимущества DOCKER
02:38 Подготовка образа
02:59 Dockerfile
03:25 Базовый образ и сборка Asterisk
03:45 Сборка дополнительных модулей
03:53 Подготовка финального образа
04:14 Установка Sox, Jboss, Webif
04:21 Supervisor, sngrep, crontab, fail2ban
04:33 Supervisor: A Process Control System
05:02 Конфигурация Supervisor
05:07 Стартовый скрипт
05:23 BUILD & PUBLISH
05:47 Размещение образа в Dockerhub
05:53 Deploy: docker-compose
06:23 Установка и запуск
06:42 Время развертывания - 2 минуты
07:12 Кастомизация образа
07:48 Обновление
08:04 Решение проблем
08:23 Ответы на вопросы

#asterisk #видео
​​Мониторинг и траблшутинг VOIP

Ниже мой краткий конспект интересного выступления с AsterConf 2021 на тему мониторинга и разбора проблем с VOIP. Я так или иначе стараюсь просматривать выступления со всех популярных конференций. Если что-то кажется интересным и полезным, то конспектирую для вас и себя в том числе.

📌 Мониторинг:
- Базовые метрики серверов (процессор, память, диск, сеть и т.д.). Мониторить просто, толку мало, особенно когда серверов, связанных со связью, несколько.
- Использовать сервисные метрики от SIP3, Homer, VoIPMonitor. Это специализированные open source системы для мониторинга SIP трафика. Минус этого решения - +еще одна система мониторинга.
- Что собираем: RFC-6076. Основное: ASR, SCR, SER, SEER, ISAs.
- Следим за временными метриками (пример из SIP3): sip_call_duration, sip_call_trying-delay, sip_call_setup-time, sip_call_establish-time, sip_call_cancel-time, sip_call_disconnect-time.
- Следим за RTP метриками: Rating Factor, Mean Opinion Score (latency, jitter, packet loss).

📌 Разбор проблем:
- Качественный разбор проблем возможен только если есть хороший мониторинг.
- Чем подробнее данные о трафике, который собирается, тем проще дебажить проблемы. В довесок к хранению должен быть хороший поиск по сохранённым данным. Соответственно, нужны системы для сбора, хранения и анализа трафика. Автор предлагает SIP3, но как я понял, это уже платный функционал.

Видео - https://www.youtube.com/watch?v=1I7Mxc_7rAw
Презентация - https://voxlink.ru/wp-content/uploads/2022/04/03_agafonov.pdf

#asterisk #мониторинг #voip
​​Продолжаю утреннюю тему диагностики VOIP серверов и анализа SIP трафика. В самом начале выступления, про которое я рассказал, автор упомянул, что весь дальнейший рассказ будет актуален для тех, кому возможностей SNGREP недостаточно. Я не стал поднимать эту тему в утренней заметке, потому что данная утилита заслуживает отдельного упоминания.

С помощью SNGREP можно анализировать SIP трафик, в том числе и в режиме реального времени. Причём это консольное приложение настолько удобно и наглядно сделано, что им можно пользоваться, даже если вы в SIP полный профан. Разобраться не составит труда.

Я впервые его поставил и запустил, когда мне достался в обслуживание небольшой call центр. На собеседовании я сказал, что знаю asterisk, хотя вообще не знал его (предполагал, что могу поставить). Это тот случай, когда можно приврать, если уверен в своих способностях. Linux админил давно, но с астером просто не сталкивался. За месяц освоил на очень хорошем уровне. Мог уже сам внедрять сервера и писать диалпланы. В итоге никто и не понял, что я не разбираюсь в астериске, а через 2 года, когда увольнялся, со мной очень не хотели расставаться.

Процесс установки и много примеров использования sngrep я привёл в своей статье Анализ SIP трафика в Asterisk с помощью sngrep. Она написана давно, но с тех пор ничего принципиально не изменилось. Скорее всего не изменилось вообще ничего.

Настоятельно рекомендую использовать sngrep, если у вас есть хотя бы один сервер Asterisk в управлении.

#asterisk #sip
​​Для мониторинга voip трафика по протоколу sip есть отличное бесплатное open source решение - VoIPmonitor. С его помощью можно контролировать и оценивать качество голосовой связи. Сразу уточню, что бесплатен только сам бэкенд, который собирает данные, кладёт в базу, анализирует. Веб интерфейс для удобной работы с данными платный. Бесплатно - только cli.

VoIPmonitor перехватывает вызовы в реальном времени и сохраняет статистику и дампы файлов в БД для последующего анализа. На него можно отзеркалить весь трафик порта. Если это технически невозможно, то можно передавать трафик через агента, установленного на voip сервере. VoIPmonitor использует снифер, обнаруживает SIP INVITE пакет и перехватывает RTP в обоих направлениях. При завершении вызова статистика считывается, с её помощью рассчитывается приблизительное значение MOS по методике описанной в спецификации G.107.

VoIPmonitor решает следующие задачи:
- мониторинг и дебаг SIP VoIP звонков;
- сохранение всех звонков в CDR базе;
- расшифровка и проигрывание звонков через веб интерфейс;
- настройка правил для выявления фрода;
- мониторинг колл-центров;
- биллинг.

Особенности программы:
- поддерживает протоколы:  SIP RTP RTCP SKINNY(SCCP) MGCP SS7 SCTP WebRTC TCP SSL TLS, транспорт по UDP и TCP;
- выходные данные: CDR, full SIP/RTP pcap, WAV OGG audio, T.38 PDF FAX
- поддерживает уведомления;
- ролевая модель доступа к данным;
- поддерживает расшифровку tls и srtp;

Из описания очевидно, что решение профессиональное и владельцам единственного сервера asterisk для офиса вряд ли пригодится. Хотя кто знает. Настроить его не сложно, как и установить. Продукт старый и известный. Руководств по настройке много, так что проблем быть не должно. Вот пример инструкции для Debian 11.

К сожалению, я не нашёл через поиск в гугле хоть какой-нибудь простой веб интерфейс для VoIPmonitor. Если кто-то знает таковой, прошу поделиться информацией. Можно установить официальную панель в режиме trial на 30 дней.

Сайт - https://www.voipmonitor.org/
Исходники - https://github.com/voipmonitor/sniffer
Demo - http://www.voipmonitor.org/demo/admin.php

#asterisk #voip
​​Напомню, для тех, кто не знает. У Zabbix есть готовый шаблон для 6-й версии по мониторингу Asterisk. Раньше я подобные вещи самостоятельно колхозил скриптами и рукотворными шаблонами, а теперь всё работает из коробки.

При этом официальный шаблон не использует никакие скрипты. Все метрики собираются HTTP запросами через Asterisk Manager API. Обработка настроена там же в шаблоне через предобработку на JavaScript. Поддерживается версия Asterisk 13 и выше.

Для настройки достаточно включить в manager.conf:
webenabled=yes
И сделать отдельного пользователя для Zabbix. Я бы ещё обязательно ограничил доступ к AMI на уровне Firewall, если кроме мониторинга его никто не использует. Да даже если использует, ограничил бы доступ по ip только для тех, кому он нужен. Затем в макросах хоста нужно будет указать url к AMI и учётные данные пользователя. Вот и вся настройка.

Шаблон имеет готовые правила автообнаружения пиров и очередей. Также он собирает информацию о статусе службы, аптайме, активных каналах, звонках, очередях, статусах пиров и т.д. Большой список метрик, которые можно посмотреть на сайте Zabbix в разделе с интеграциями:
https://www.zabbix.com/ru/integrations/asterisk

Сам шаблон можно взять в репозитории. Не забудьте выбрать ветку со своей версией Zabbix Server. По умолчанию там уже для 6.2.

#zabbix #asterisk