Я предлагаю взглянуть на более надежный брандмауэр веб-приложений, такой как NGINX. Вы можете передать повторных нарушителей в свой черный список NGINX, где может быть другой набор правил на время блокировки нарушителя.
ПРИМЕР: https://www.nginx.com/blog/dynamic-ip-blacklisting-with-nginx-plus-and-fail2ban/