Реализация
На стороне сайта это php модуль, запускаемый самым первым при формировании страницы выдачи. ПО каждому ip адресу посетителя запрашивает у сервера статус наличия блокировки.
На стороне сервера:
Вебсервис (gin-gonic) отрабатывающий запросы с сайтов. Авторизация. Проверка на наличие ip адреса в банлисте, подозрительные userAgent и страницы ссылки. Сохранение в базе истории о посетителях. Реализация на golang. Хранение данных в бд mysql. Конфигурационный файл в формате json (github.com/hjson/hjson-go).
Утилита (ab_analyzer) для анализа активности пользователей за определенный период (10 минут, час, сутки) и обновление статуса по подозрительным ip в базе. Реализация на golang. Хранение данных в бд mysql. Запуск по расписанию (crontab).
Панель администратора для анализа статистики и работы с ip адресами в базе. Реализация на php с применением bootstrap шаблона.