Подключите нашего Telegram-бота для уведомлений о новых проектах

Заказ закрыт
Настройка и исправление фильтра Fail2Ban для защиты Asterisk от SIP-атак

Разместить заказ
1 фрилансер уже откликнулся на этот заказ
Цены от 3000 ₽.
Сроки от 1 дня.
Данные обновляются раз в 10 минут.
p
Заказчик
Отзывы фрилансеров: + 8 - 0
Зарегистрирован на сайте 15 лет и 6 месяцев
Бюджет: по договоренности
Техническое задание: Настройка фильтра Fail2Ban для SIP-атаки

Описание задачи

Требуется настроить фильтр в Fail2Ban для защиты Asterisk от атак на SIP-учётные записи. Атака проявляется в логах Asterisk как многочисленные попытки инициализации вызова с подбором пароля к SIP. В результате Fail2Ban должен автоматически блокировать IP-адреса злоумышленников.

Пример логов Asterisk с атакой

[2025-02-04 22:10:25] VERBOSE[349247][C-000011bd] chan_sip.c: No matching peer for '37301' from '104.167.220.149:53286'
[2025-02-04 22:11:50] VERBOSE[349247][C-000011be] chan_sip.c: No matching peer for '999' from '45.88.186.105:51268'
[2025-02-04 23:58:05] VERBOSE[349247][C-0000122f] chan_sip.c: No matching peer for '39801' from '104.167.220.149:57784'

Требования к фильтру

Фильтр должен блокировать IP-адреса, с которых происходит множество запросов с несуществующими SIP-логинами.

Логика блокировки:

Если в течение 10 минут с одного IP-адреса поступает 3 и более попытки с разными логинами, IP должен быть заблокирован.

Блокировка должна длиться не менее 1 часа.

Фильтр должен корректно обрабатывать логи формата:

VERBOSE.*: No matching peer for 'логин' from '<HOST>'

Файл фильтра должен быть исправлен и корректно работать с fail2ban-regex.

Текущий файл фильтра (/etc/fail2ban/filter.d/asterisk-udp.conf)

[Definition]
failregex = NOTICE.*: Failed to authenticate device.*<sip:\d+@>
            VERBOSE.*: Retransmitting.* SIP/2.0 403 Forbidden
            VERBOSE.*: No matching peer for.*from '<HOST>'

Ошибка, которая возникает:

ERROR: No failure-id group in 'NOTICE.*: Failed to authenticate device.*<sip:\d+@>'

Ожидаемые доработки

Исправить файл фильтра /etc/fail2ban/filter.d/asterisk-udp.conf, чтобы он корректно работал с fail2ban-regex.

Добавить корректный шаблон для обнаружения атак по VERBOSE.*: No matching peer for.*from '<HOST>'.

Настроить jail-файл (/etc/fail2ban/jail.local):

[asterisk-udp]
enabled = true
filter = asterisk-udp
action = iptables-multiport[name=ASTERISK, port="5060,5061", protocol=udp]
logpath = /var/log/asterisk/full
maxretry = 3
findtime = 600
bantime = 3600

Проверить работу фильтра с fail2ban-regex, убедиться, что он корректно выявляет атаки.

Критерии приёмки

Fail2Ban корректно блокирует IP-адреса, совершающие атаки.

Проверка fail2ban-regex /var/log/asterisk/full /etc/fail2ban/filter.d/asterisk-udp.conf проходит без ошибок.

После запуска fail2ban-client status asterisk-udp отображаются заблокированные IP-адреса при атаках.

Формат работы

Удаленный дросту через anydesk

Система: Ubuntu 20.04 без графического интерфейса.

Fail2Ban уже установлен.

Требуется предоставить обновлённые файлы asterisk-udp.conf и jail.local с пояснением внесённых изменений.

Рабочая проверка после настройки.

Дополнительные замечания

Возможно потребуется адаптация правил iptables или firewalld.

Если необходимо, можно предложить другие эффективные методы защиты (например, fail2ban-action для автоматической блокировки IP через API облачного провайдера).

Работа должна быть выполнена в течение 1-2 дней.
Разделы:
Опубликован:
06.02.2025 | 10:18 [поднят: 06.02.2025 | 10:18]
Заказ находится в архиве
Откликнуться Посмотреть другие заказы

Теги: нужен системный администратор, ищу системного администратора, резюме системного администратора

Наши партнеры
Сведения об ООО «Ваан» внесены в реестр аккредитованных организаций, осуществляющих деятельность в области информационных технологий. ООО «Ваан» осуществляет деятельность, связанную с использованием информационных технологий, по разработке компьютерного программного обеспечения, предоставлению доступа к программе для ЭВМ и является правообладателем программы для ЭВМ «Платформа FL.ru (версия 2.0)».
-->-->