Я использую fail2ban для предотвращения атак грубой силы на мои производственные серверы. Fail2ban блокирует IP после 5 неудачных попыток аутентификации и разблокирует его через 1 час с моей собственной конфигурацией. Интересно, какова оптимальная продолжительность бана или мне действительно нужно снова его разблокировать? Постоянный запрет на ip - лучшее решение?
Не существует общего правила для оптимального времени бана, оно зависит от множества факторов, включая
Это, конечно, также верно, чтобы решить, нужно ли вам вообще разблокировать - если очень мало IP-адресов могут законно подключаться к вашим службам, запретить злоумышленникам (частично) навсегда может быть неплохой идеей, но в других случаях это создаст больше проблемы, чем делать добро.
Отредактируйте ваш комментарий:
Самая важная защита для учетных записей root - это
Это также помогает защитить вас от распределенного типа атаки грубой силой, которую вы можете наблюдать сегодня, когда вы медленно подвергаетесь атаке большого количества машин бот-сети, при этом каждая машина пытается только очень небольшое количество паролей, таким образом не запуская такие вещи, как fail2ban
вообще.
2-е изменение, относительно 2-го комментария:
Мы явно находимся здесь в зависимости от обстоятельств. Пример из моей среды:
Дело в том, что 24-часовой бан работает лишь ненамного лучше, если вообще работает (*), но машина 2, тем не менее, намного лучше защищена из-за ограничения на вход в систему с использованием ключей без полномочий root.
(*) Это мое впечатление, и оно не основано на каком-либо реальном статистическом анализе файлов журналов.
Забанить IP навсегда - это нехорошо, потому что любое безобидное соединение принимает этот IP в любое время.
Обычно я предпочитаю день для оптимального периода бана. Такой подход обеспечивает защиту от атак с одного IP в течение дня. Если вы по-прежнему получаете атаки с того же IP, вы можете заблокировать его на месяц вручную.