@AndreyMorozov

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

Суть проблемы: сайт парсят через сеть прокси (около 200 IP). Нужно ограничить такие запросы, при этом не блокируя роботы поисковиков.

Сейчас запросы ограничиваются Nginxом через limit_req_zone + fail2ban. Но это все плохо работает, т. к. получается ограничение на несколько запросов в секунду. Я хочу настроить ограничение в течение часа, скажем с одного IP разрешается выполнить только 1800 запросов в час. Как это сделать?

ps ОС Ubuntu.
  • Вопрос задан
  • 1054 просмотра
Пригласить эксперта
Ответы на вопрос 1
SignFinder
@SignFinder
Wintel\Unix Engineer\DevOps
В nginx-mod https://www.getpagespeed.com/nginx-mod-a-better-fa... есть:
spoiler
limit_req_zone $binary_remote_addr zone=one:10m rate=1r/h; # 1 request per hour
limit_req_zone $binary_remote_addr zone=one:10m rate=1r/d; # 1 request per day
limit_req_zone $binary_remote_addr zone=one:10m rate=1r/w; # 1 request per week
limit_req_zone $binary_remote_addr zone=one:10m rate=1r/M; # 1 request per month
limit_req_zone $binary_remote_addr zone=one:10m rate=1r/Y; # 1 request per year
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы