Делюсь с вами простым и эффективным трюком в Asterisk, который позволит наблюдать за тем или иным направлением звонков. Реализация может быть разная в зависимости от структуры диалплана используемого решения и модуля sip или pjsip.
Например, есть офис, где звонки на международные направления заблокированы всем или части пользователей. Очень явными признаками взлома учётки Asterisk являются попытки набора международных номеров. Для маски международных звонков добавил такое правило:
Когда кто-то наберёт номер с маской 810 и т.д. в почту сразу же прилетит уведомление о том, кто звонит и куда конкретно. Дальше в диалплане можно разрешить этот звонок, либо отклонить и что-то сказать пользователю. Не суть. Смысл в том, что Asterisk может сразу же сам отправить email. Это удобно, когда нет какого-то расширенного мониторинга с уведомлениями.
Я лично на 810 всегда ставлю какие-то заглушки, если звонки туда не нужны, либо совершаются очень редко. По ним сразу видно, что на сервере происходит что-то подозрительное.
#asterisk
Например, есть офис, где звонки на международные направления заблокированы всем или части пользователей. Очень явными признаками взлома учётки Asterisk являются попытки набора международных номеров. Для маски международных звонков добавил такое правило:
exten => _810XX.,1,System(echo "To" ${EXTEN} "Ext" ${CALLERID(num)} \| mail -s "8-10 ALARM" admin@firma.ru)Когда кто-то наберёт номер с маской 810 и т.д. в почту сразу же прилетит уведомление о том, кто звонит и куда конкретно. Дальше в диалплане можно разрешить этот звонок, либо отклонить и что-то сказать пользователю. Не суть. Смысл в том, что Asterisk может сразу же сам отправить email. Это удобно, когда нет какого-то расширенного мониторинга с уведомлениями.
Я лично на 810 всегда ставлю какие-то заглушки, если звонки туда не нужны, либо совершаются очень редко. По ним сразу видно, что на сервере происходит что-то подозрительное.
#asterisk
👍43👎2
Небольшая информация из практической деятельности. Мне давно знакома проблема, когда не устанавливается SIP соединение для регистрации пира или транка с регистрацией. Возникает она в моём случае либо после проблем с интернетом или переключения каналов, либо при работе через VPN вместе с указанными выше проблемами. В общем, когда возникают какие-то неполадки со связью, есть небольшая вероятность, что внешне транки и пиры отвалятся.
При этом какие-либо действия со стороны Asterisk не помогают. Есть можно перезапускать, перезагружать сервер, но регистрации как не работали, так и не будут работать. Когда я первый раз столкнулся с подобной ситуацией, очень сильно напрягся. Потратил примерно день, прежде чем нашёл решение. С тех пор его запомнил и проверяю в первую очередь.
Если у вас по неведомым причинам не регистрируются транки и пиры, проверьте активные соединения на шлюзе, связанные с SIP и удалите их. Отфильтруйте либо по адресу voip сервера, либо по адресу внешнего сервера, либо просто по портам, к примеру, 5060, если используется стандартный.
В роутерах Mikrotik это делается на вкладке:
▪ IP ⇨ Firewall ⇨ Connections
Если у вас шлюз на Linux, то соединения можно посмотреть в /proc/net/nf_conntrack:
Либо с помощью утилиты conntrack (ставится из реп, либо как conntrack, либо как conntrack-tools). Смотрим:
и удаляем:
После этого регистрации успешно состоятся.
В чём причина подобных проблем, я не знаю. Теорию не изучал и не исследовал. Просто знаю, что вот это помогает. Возможно есть другое решение. Лично сталкивался с подобными проблемами только с VOIP.
Если кто-то знает, в чём может быть причина подобных проблем и как с ними бороться, буду благодарен любой содержательной информации.
#gateway #voip #asterisk
При этом какие-либо действия со стороны Asterisk не помогают. Есть можно перезапускать, перезагружать сервер, но регистрации как не работали, так и не будут работать. Когда я первый раз столкнулся с подобной ситуацией, очень сильно напрягся. Потратил примерно день, прежде чем нашёл решение. С тех пор его запомнил и проверяю в первую очередь.
Если у вас по неведомым причинам не регистрируются транки и пиры, проверьте активные соединения на шлюзе, связанные с SIP и удалите их. Отфильтруйте либо по адресу voip сервера, либо по адресу внешнего сервера, либо просто по портам, к примеру, 5060, если используется стандартный.
В роутерах Mikrotik это делается на вкладке:
▪ IP ⇨ Firewall ⇨ Connections
Если у вас шлюз на Linux, то соединения можно посмотреть в /proc/net/nf_conntrack:
# cat /proc/net/nf_conntrackЛибо с помощью утилиты conntrack (ставится из реп, либо как conntrack, либо как conntrack-tools). Смотрим:
# conntrack -L -p udp --src 10.1.4.23 --dport 5060и удаляем:
# conntrack -D -p udp --src 10.1.4.23 --dport 5060После этого регистрации успешно состоятся.
В чём причина подобных проблем, я не знаю. Теорию не изучал и не исследовал. Просто знаю, что вот это помогает. Возможно есть другое решение. Лично сталкивался с подобными проблемами только с VOIP.
Если кто-то знает, в чём может быть причина подобных проблем и как с ними бороться, буду благодарен любой содержательной информации.
#gateway #voip #asterisk
👍59👎1
На днях разбирался с небольшой проблемой на voip сервере asterisk. Есть сервер, который настраивали очень давно. Его никто не трогает, он просто работает. Недавно купили новую серию телефонов. На них почему-то не проходили входящие звонки.
Ранее я уже рассказывал про утилиту sngrep, которая позволяет в удобном виде посмотреть всю информацию по sip трафику. Там в удобном виде собрано всё то, что вы можете увидеть, включив debug на asterisk, только в sngrep всё будет очень наглядно.
Я уже не особо разбираюсь в voip, так как давно ничего не настраивал. Решил не заниматься этим направлением. Но по старой памяти немного приглядываю за старыми серверами. Это сервер был с наследством в виде нескольких IP адресов. На новых аппаратах запрос шёл к одному из ip, который был указан в настройках, а ответ приходил от другого адреса. И телефон его не принимал.
Я не знаю, почему так происходило, и почему проблема появилась только сейчас и только на конкретных аппаратах. Но именно sngrep позволил буквально за 5 минут понять, в чем именно проблема. Просто поменяли ip адрес в телефоне на тот, с которого приходил ответ и всё заработало.
Написал это для тех, у кого есть в управлении сервера asterisk, чтобы лишний раз напомнить про sngrep. Она меня всегда выручала и выручает, когда надо быстро разобраться с какой-то проблемой с телефонией.
Сейчас, наверное, свой сервер asterisk, как и почтовый, это скорее экзотика. Все постепенно переползают на готовые сервисы. В чём-то это оправданно, так как с тем же voip разбираться довольно трудно, если нет специализации по этой теме.
ps. На картинке не дебаг проблемного звонка. На нём просто наглядно видно, что общение идёт с двумя ip адресами сервера. Во время звонка телефон не отвечал на invite от сервера.
#asterisk #voip
Ранее я уже рассказывал про утилиту sngrep, которая позволяет в удобном виде посмотреть всю информацию по sip трафику. Там в удобном виде собрано всё то, что вы можете увидеть, включив debug на asterisk, только в sngrep всё будет очень наглядно.
Я уже не особо разбираюсь в voip, так как давно ничего не настраивал. Решил не заниматься этим направлением. Но по старой памяти немного приглядываю за старыми серверами. Это сервер был с наследством в виде нескольких IP адресов. На новых аппаратах запрос шёл к одному из ip, который был указан в настройках, а ответ приходил от другого адреса. И телефон его не принимал.
Я не знаю, почему так происходило, и почему проблема появилась только сейчас и только на конкретных аппаратах. Но именно sngrep позволил буквально за 5 минут понять, в чем именно проблема. Просто поменяли ip адрес в телефоне на тот, с которого приходил ответ и всё заработало.
Написал это для тех, у кого есть в управлении сервера asterisk, чтобы лишний раз напомнить про sngrep. Она меня всегда выручала и выручает, когда надо быстро разобраться с какой-то проблемой с телефонией.
Сейчас, наверное, свой сервер asterisk, как и почтовый, это скорее экзотика. Все постепенно переползают на готовые сервисы. В чём-то это оправданно, так как с тем же voip разбираться довольно трудно, если нет специализации по этой теме.
ps. На картинке не дебаг проблемного звонка. На нём просто наглядно видно, что общение идёт с двумя ip адресами сервера. Во время звонка телефон не отвечал на invite от сервера.
#asterisk #voip
👍89👎1