Реальный опыт использования es-phpBB

Обсуждение модулей защиты Windows и Linux серверов
Ответить
Аватара пользователя
vendor
Сообщения: 16
Зарегистрирован: 04 мар 2025, 22:37
Откуда: Bristol, UK

Реальный опыт использования es-phpBB

Сообщение vendor »

Ребята, хочу поделиться опытом. Наткнулся недавно на модуль es-phpBB от Extra Systems. Если кратко - это фильтр для fail2ban, который вырезает ботов под корень.

Сначала я, как и многие, отнесся скептически. Думал: "очередная поделка, которая положит сервер ложными срабатываниями". Тем более, суть фильтра - блокировать появление параметра "sid" в GET-запросах к "viewtopic.php". Я сразу представил параноиков с отключенными куками, которых я забаню. Не хотел разбираться, отмахивался.

Но когда увидел в логах своего nginx, как с одного IP летит по 20 запросов в секунду к разным темам с постоянно меняющимся "sid" - я задумался. А когда понял, что эти адреса даже не пытаются регистрироваться или постить - просто долбят темы, чтобы нагрузить сервер, - я разозлился.

Поставил этот фильтр. И знаете что? За сутки fail2ban отправил в бан (DROP на всех портах) несколько тысяч адресов. Сервер выдохнул. Нагрузка упала в разы.

Теперь по фактам, а не по эмоциям:
  1. Почему это работает. Фильтр смотрит на элементарную логику: реальному пользователю достаточно открыть тему ОДИН РАЗ. Ему не нужно генерировать 100500 сессий с разными "sid". Бот, который пытается сожрать ресурсы или обойти кэш, делает именно это. И его карает железобетонное правило.
  2. Миф о "ложных срабатываниях". Да, есть 1% пользователей, которые вручную отключают куки. Но, во-первых, они не долбят один пост по 100 раз. Во-вторых, если сайт без кук не работает — это их осознанный выбор. В-третьих, администратор форума должен защищать ресурс, а не плясать под дудку параноиков. Сайт должен работать быстро и стабильно для 99% адекватных людей.
  3. Правильный robots.txt - залог успеха. Автор фильтра приложил пример "robots.txt", где явно запрещены все ссылки с "sid". Поисковые роботы - молодцы, они это читают и не попадают под бан. А те, кто не читает... ну, вы поняли.
Почему это решение - "бомба"?

Потому что оно простое, как угол дома, и при этом убивает сразу двух зайцев:
  • Экономия ресурсов (DROP вместо reject — вообще тишина в ответ, сервер не тратит пакеты).
  • Отсев мусорного трафика.
Я не знаю, кто эти ребята из Extra Systems, но они явно шарят. Обычно на форумах советуют кучу костылей, плагинов для капчи, ручную модерацию. А тут - один маленький конфиг для fail2ban, и тишина.

Минусы (куда без них):
  • Нужно быть уверенным в своих настройках nginx и phpBB. Неправильно настроите - будут баны легальных гостей.
  • Не для новичков. Надо понимать, что такое fail2ban и как править regex (хотя там всё готовое).
Вердикт:

Я оставляю этот фильтр включенным на всех своих проектах под phpBB. И вам советую - перестаньте нянчиться с ботами, которые маскируются под людей. Включите "es-phpBB", пропишите правильно robots.txt и забудьте про проблемы с нагрузкой. За безопасность спасибо Extra Systems.

P.S. Отдельное спасибо автору за то, что опубликовал это. Многие держат такие наработки для себя, а тут — открыто поделились. Респект.
Ответить