Пожалуйста, войдите здесь. Часто задаваемые вопросы О нас
Задайте Ваш вопрос

Защита от DoS-атаки, флуда короткими звонками

0

Приветствую всех астерисководов!

Задача:при входящих звонках с одного и того же номера и при сбросе в течение 1 секунды абонента должно заносить в черный список, чтобы абонент больше не смог дозвониться.

Вопрос: какие есть варианты и средства реализации в asterisk и вспомогательного ПО? Заранее благодарю за участие!

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

спросил 2011-11-18 07:57:58 +0400

OlegPershin Gravatar OlegPershin
62 5 1 9

обновил 2011-11-18 08:03:11 +0400

3 Ответа

2

Для защиты от коротких звонков используйте средства диаплана и БД. В связке с БД можно анализировать флудерсатов и банить.

exten => s,1,Noop(звонят)
exten => s,n,Noop(что-то делаем)
exten => s,n,ExecIF($[${EXISTS(${DB(FLOOD/${CALLERID(num)})})}]?Hangup) ; флудераст, кладем трубку
....

exten => h,1,Noop(звонок кладется, продолжаем анализ)
exten => h,n,ExecIF($["${CDR(duration)}" = "1"]?Set(DB(FLOOD/${CALLERID(num)})=1) ; заносим в БД с длительностью 1 секунда.
ссылка удалить спам редактировать

ответил 2011-11-18 10:37:52 +0400

zzuz Gravatar zzuz flag of Russian Federation
7174 2 6 75
http://line24.ru/

Comments

Не удивлюсь , если сейчас будет вопрос "как это сделать в Elastix/TrixBox"

zzuz ( 2011-11-18 10:40:14 +0400 )редактировать

Как вариант)

OlegPershin ( 2011-11-18 10:42:44 +0400 )редактировать

слишком предвзятое у вас мнение!

OlegPershin ( 2011-11-18 10:43:45 +0400 )редактировать
1

Что как вариант? Не сочтите меня за скрягу, но раздражают ньюансы , когда авторы решают , что тут сами должны догадываться о версиях, настройках и прочем. Я могу конечно отпустить шутку баянистую по поводу телепатов и "типа ждите , настраиваемся на ментальные каналы вашим синопсов" , но надоедает.

zzuz ( 2011-11-18 10:45:20 +0400 )редактировать

"как это сделать в Elastix/TrixBox" - довольно частая фраза после многих ответов для простого диаплана. Это включение сарказма , а не предвзятость.

zzuz ( 2011-11-18 10:46:43 +0400 )редактировать

Как вариант я имею ввиду что это один из возможных вариантов решения задачи, что мне и нужно узнать.

OlegPershin ( 2011-11-18 11:17:51 +0400 )редактировать

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

OlegPershin ( 2011-11-18 11:19:17 +0400 )редактировать

напишите обертку ввиде диаплана , которая будет принимать вызов , анализировать и банить. И впишите её в Custom Destination , чтобы потом использовать в правилах Inbound Routes. Даже две обертки , потому как надо анализировать и Hangup . А лучше интегрировать кастомное решение с модулем Blocklist , добавляя в БД модуля нужные номера , а банить он будет своими средствами , меньше писать придется.

zzuz ( 2011-11-18 11:25:46 +0400 )редактировать

спасибо за уточнение. да именно custom extensions нужно использовать когда freepbx не помогает, а зачастую предпочитаю чистый астериск.

OlegPershin ( 2011-11-18 11:28:09 +0400 )редактировать

Не надо фанатизма . Freepbx - это набор диапланов с БД над "чистым астериском". А то народ взял привычку как бы извиняться за то , что не используют диаплан личнонаписанным.

zzuz ( 2011-11-18 11:34:09 +0400 )редактировать

Я не извиняюсь. Еще раз уточню что для решения простых задач, для экономии времени freepbx отлично подходит. не все ж в текстовых конфигах делать? А если речь идет о создании кастомных сценариев где используется более широкий функционал диалплана, то тогда либо custom extensions либо чистый астериск.

OlegPershin ( 2011-11-18 11:38:42 +0400 )редактировать

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

zzuz ( 2011-11-18 11:45:38 +0400 )редактировать

Заменить конечно можно, вы правы. Но заменять функционал потребует больше ресурсов и навыков.

OlegPershin ( 2011-11-18 11:47:47 +0400 )редактировать
1

есть варианты

1) бан по ip. 2) бан по CID. 3) бан по username

применяются они одновременно.

1) уровень 0 - fail2ban+iptables. это банит только ОЧЕНЬ настырных. урвоень 1 . сначало в диалплане надо добавить команды пишущие ip. потом анализ cdr за последние 10 минут, час, день и бан.

2) анализ cdr, после чего номер добавлется в блеклист. как его проверять - смотрите в freepx/elastix/trixbox. там даже можуль такой есть.

3) анализ cdr+ смена пароля и письмо администратору.

ссылка удалить спам редактировать

ответил 2011-11-18 14:31:46 +0400

meral Gravatar meral flag of Ukraine
23347 24 20 177
http://pro-sip.net/

Comments

Спасибо !

OlegPershin ( 2011-11-21 07:34:44 +0400 )редактировать
0

iptables - для правил фаервола

fail2ban - для автоматическго бана по правилам брутфорса

sip.sonf - для корректной настройки системы SIP

extentions.conf - для настройки диаплана , учитывающий безопасность (IVR,DISA,callback)

sipvicious - утилита по подбору и проверки слабых настроек sip.conf

/dev/hands - для настройки всего этого

/dev/head - для того , чтобы не задавать вопросы "а расскажите подробнее про это" , начать искать по искомым словам и настраивать.

ссылка удалить спам редактировать

ответил 2011-11-18 10:07:34 +0400

zzuz Gravatar zzuz flag of Russian Federation
7174 2 6 75
http://line24.ru/

Comments

1

То есть нужны примеры с картинками и полным собранием сочинением "Мне платят зарплату сисадмина, за что?"

zzuz ( 2011-11-18 10:28:49 +0400 )редактировать

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

OlegPershin ( 2011-11-18 10:37:05 +0400 )редактировать

Что здесь нетривиального? не надо жути нагонять , вон выше еще мой тролль-ответ .

zzuz ( 2011-11-18 10:38:42 +0400 )редактировать

Ваш ответ

Please start posting your answer anonymously - your answer will be saved within the current session and published after you log in or create a new account. Please try to give a substantial answer, for discussions, please use comments and please do remember to vote (after you log in)!
[скрыть предварительный просмотр]

Закладки и информация

Добавить закладку

подписаться на rss ленту новостей

Статистика

Задан: 2011-11-18 07:57:58 +0400

Просмотрен: 2,050 раз

Обновлен: Nov 18 '11

Проект компании "АТС Дизайн"
Asterisk® и Digium® являются зарегистрированными торговыми марками компании Digium, Inc., США.
IP АТС Asterisk распространяется под лицензией GNU GPL.