Справочник системных ошибок и решений

Windows Server, Active Directory, 1С:Предприятие, СУБД, Linux, Cisco, MikroTik, Asterisk.

⚠️ Важная информация Все материалы, инструкции, команды и скрипты на сайте предоставлены исключительно в ознакомительных целях. Их применение может повлиять на работу операционной системы, программного обеспечения, баз данных, сетевого оборудования и других компонентов инфраструктуры. Перед выполнением действий создайте резервную копию и по возможности протестируйте изменения в безопасной среде. Пользователь самостоятельно оценивает риски и несет ответственность за результат. При отсутствии необходимых знаний обратитесь к квалифицированному ИТ-специалисту.

SEC-AST-FAIL2BAN-SETUP IP-Телефония и СКУД

Защита IP-АТС Asterisk от взлома через Fail2Ban: блокировка брутфорса

Обновлено: 27.08.2026 · Официальная документация ↗

Кошмар сисадмина: миллионный счет за международные звонки

Хакеры круглосуточно сканируют интернет сканерами (SIPVicious, Friendly-Scanner) в поисках серверов с открытым портом UDP 5060. Подобрав слабый пароль к одному из внутренних номеров (например, номер 101 с паролем 101 или 123456), ботнет начинает генерировать тысячи звонков в минуту на платные спутниковые направления (Куба, Сомали, Гаити), принося владельцу АТС колоссальные убытки.

Типичные признаки идущей атаки в консоли Asterisk

Признак атакиЗапись в логе /var/log/asterisk/fullЧто делает хакер
Массовый перебор паролейRegistration from '<sip:100@...>' failed for '198.51.100.23' - Wrong passwordПодбор пароля по словарю
Попытка неавторизованного звонкаCall from 'friendly-scanner' to extension '9001123456' rejected because extension not foundПоиск «дыр» в открытом контексте

Пошаговая настройка защиты Fail2Ban для Asterisk (Ubuntu/Debian)

Утилита Fail2Ban в реальном времени читает лог-файлы АТС. Как только с одного IP-адреса фиксируется 3–5 неудачных попыток ввода пароля за минуту, Fail2Ban моментально отправляет этот IP в бан системного фаервола iptables на сутки.

  1. Шаг 1. Установка утилиты:
    sudo apt update && sudo apt install fail2ban iptables-persistent -y
  2. Шаг 2. Создание фильтра для поиска атак Asterisk:

    Создайте файл фильтра /etc/fail2ban/filter.d/asterisk.conf:

    [INCLUDES]
    before = common.conf
    
    [Definition]
    failregex = ^(%(__prefix_line)s)?.*SECURITY.* SecurityEvent="InvalidAccountID".*RemoteAddress=".*?/<HOST>/[0-9]+".*$
                ^(%(__prefix_line)s)?.*SECURITY.* SecurityEvent="FailedACL".*RemoteAddress=".*?/<HOST>/[0-9]+".*$
                ^(%(__prefix_line)s)?.*SECURITY.* SecurityEvent="InvalidPassword".*RemoteAddress=".*?/<HOST>/[0-9]+".*$
                ^(%(__prefix_line)s)?.*SECURITY.* SecurityEvent="ChallengeResponseFailed".*RemoteAddress=".*?/<HOST>/[0-9]+".*$
    ignoreregex =
  3. Шаг 3. Включение правила бана (jail.local):

    Отредактируйте файл /etc/fail2ban/jail.local:

    [asterisk]
    enabled  = true
    port     = 5060,5061
    protocol = all
    filter   = asterisk
    logpath  = /var/log/asterisk/messages
    maxretry = 4              ; Блокировать после 4 неудачных попыток
    findtime = 600            ; В интервале 10 минут
    bantime  = 86400          ; Бан на 24 часа (в секундах)
    ignoreip = 127.0.0.1/8 192.168.1.0/24 ; Ваш доверенный белый IP
  4. Шаг 4. Перезапуск и проверка статуса бана:
    sudo systemctl restart fail2ban
    # Проверить список заблокированных хакеров:
    sudo fail2ban-client status asterisk

Базовые правила безопасности: Никогда не используйте номер добавочного в качестве пароля! Устанавливайте пароли длиной не менее 12 символов (например: wK9#mX2$vL8!pQ) и обязательно закрывайте международные направления (00 / +) на стороне вашего оператора связи.

💡 Практика специалистов: Fail2Ban — это обязательный минимум, но главная защита — запретить доступ к порту 5060 для всего мира, открыв его в iptables только для IP-адресов SIP-провайдера и внутренней подсети VPN.

Частые вопросы (FAQ)

Как вручную разблокировать IP-адрес своего сотрудника, если он ошибся паролем?

Выполните команду: <code>sudo fail2ban-client set asterisk unbanip IP_АДРЕС_СОТРУДНИКА</code>.

Поможет ли смена стандартного SIP порта 5060 на нестандартный (например, 5160 или 49560)?

Да! Смена стандартного порта отсекает до 95% примитивных автоматических сканеров, которые опрашивают интернет только по порту 5060.

Что такое параметр alwaysauthreject в Asterisk?

Включение <code>alwaysauthreject = yes</code> заставляет Asterisk отвечать одинаковой ошибкой «401 Unauthorized» как на неверный пароль, так и на несуществующий логин, не давая хакеру просканировать список активных номеров.

Как ограничить права звонков по странам на уровне провайдера?

Зайдите в личный кабинет вашего SIP-оператора (МТТ, Ростелеком, Манго) и отключите возможность совершения международных вызовов, оставив только звонки по РФ.

Полезные материалы
Рекомендуем