На днях у меня случилась неприятная история с одним из серверов Asterisk. Пользователи стали жаловаться на то, что не работает межгород. Звонят по нему редко, так что заметили не сразу. Я проверил, и правда не звонит. Сервер оператора возвращает 500-ю ошибку:
Звоню в тех. поддержку. Там ответили, что мы вас отключили ещё 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
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
Продолжаю утреннюю тему диагностики VOIP серверов и анализа SIP трафика. В самом начале выступления, про которое я рассказал, автор упомянул, что весь дальнейший рассказ будет актуален для тех, кому возможностей SNGREP недостаточно. Я не стал поднимать эту тему в утренней заметке, потому что данная утилита заслуживает отдельного упоминания.
С помощью SNGREP можно анализировать SIP трафик, в том числе и в режиме реального времени. Причём это консольное приложение настолько удобно и наглядно сделано, что им можно пользоваться, даже если вы в SIP полный профан. Разобраться не составит труда.
Я впервые его поставил и запустил, когда мне достался в обслуживание небольшой call центр. На собеседовании я сказал, что знаю asterisk, хотя вообще не знал его (предполагал, что могу поставить). Это тот случай, когда можно приврать, если уверен в своих способностях. Linux админил давно, но с астером просто не сталкивался. За месяц освоил на очень хорошем уровне. Мог уже сам внедрять сервера и писать диалпланы. В итоге никто и не понял, что я не разбираюсь в астериске, а через 2 года, когда увольнялся, со мной очень не хотели расставаться.
Процесс установки и много примеров использования sngrep я привёл в своей статье Анализ SIP трафика в Asterisk с помощью sngrep. Она написана давно, но с тех пор ничего принципиально не изменилось. Скорее всего не изменилось вообще ничего.
Настоятельно рекомендую использовать sngrep, если у вас есть хотя бы один сервер Asterisk в управлении.
#asterisk #sip
С помощью SNGREP можно анализировать SIP трафик, в том числе и в режиме реального времени. Причём это консольное приложение настолько удобно и наглядно сделано, что им можно пользоваться, даже если вы в SIP полный профан. Разобраться не составит труда.
Я впервые его поставил и запустил, когда мне достался в обслуживание небольшой call центр. На собеседовании я сказал, что знаю asterisk, хотя вообще не знал его (предполагал, что могу поставить). Это тот случай, когда можно приврать, если уверен в своих способностях. Linux админил давно, но с астером просто не сталкивался. За месяц освоил на очень хорошем уровне. Мог уже сам внедрять сервера и писать диалпланы. В итоге никто и не понял, что я не разбираюсь в астериске, а через 2 года, когда увольнялся, со мной очень не хотели расставаться.
Процесс установки и много примеров использования sngrep я привёл в своей статье Анализ SIP трафика в Asterisk с помощью sngrep. Она написана давно, но с тех пор ничего принципиально не изменилось. Скорее всего не изменилось вообще ничего.
Настоятельно рекомендую использовать sngrep, если у вас есть хотя бы один сервер Asterisk в управлении.
#asterisk #sip