Назад | Перейти на главную страницу

Какова оптимальная продолжительность бана для атаки методом перебора?

Я использую fail2ban для предотвращения атак грубой силы на мои производственные серверы. Fail2ban блокирует IP после 5 неудачных попыток аутентификации и разблокирует его через 1 час с моей собственной конфигурацией. Интересно, какова оптимальная продолжительность бана или мне действительно нужно снова его разблокировать? Постоянный запрет на ip - лучшее решение?

Не существует общего правила для оптимального времени бана, оно зависит от множества факторов, включая

  • Тип сервера / сервиса
  • Целевая аудитория
  • Тип атаки
  • и конкретный атакующий / злоумышленник.

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

Отредактируйте ваш комментарий:

Самая важная защита для учетных записей root - это

  • не разрешать root-доступ для начала
  • Для других целей используйте только логин на основе ключа и запрещайте пароли.

Это также помогает защитить вас от распределенного типа атаки грубой силой, которую вы можете наблюдать сегодня, когда вы медленно подвергаетесь атаке большого количества машин бот-сети, при этом каждая машина пытается только очень небольшое количество паролей, таким образом не запуская такие вещи, как fail2ban вообще.

2-е изменение, относительно 2-го комментария:

Мы явно находимся здесь в зависимости от обстоятельств. Пример из моей среды:

  • На машине 1 пользователи входят в систему из внешних сетей. Я не могу отключить вход по паролю (из-за причины :(). Время запрета установлено на 10 минут.
  • На машине 2 только администраторы входят в систему с очень небольшого числа медленно меняющихся IP-адресов. Время запрета установлено на 24 часа.

Дело в том, что 24-часовой бан работает лишь ненамного лучше, если вообще работает (*), но машина 2, тем не менее, намного лучше защищена из-за ограничения на вход в систему с использованием ключей без полномочий root.

(*) Это мое впечатление, и оно не основано на каком-либо реальном статистическом анализе файлов журналов.

Забанить IP навсегда - это нехорошо, потому что любое безобидное соединение принимает этот IP в любое время.

Обычно я предпочитаю день для оптимального периода бана. Такой подход обеспечивает защиту от атак с одного IP в течение дня. Если вы по-прежнему получаете атаки с того же IP, вы можете заблокировать его на месяц вручную.