У нас недавно был клиент, забитый ботами, которые регистрируют учетные записи, а также ищут несуществующие каталоги (/ phpmyadmin /, / pma /, / members /, / admin / и т. Д.). Мы создали способ просматривать журналы доступа и идентифицировать вредоносные IP-адреса, однако мне интересно самое эффективное решение.
После первоначальной очистки я попытался добавить около 10000 IP-адресов в iptables, которые нужно заблокировать. Это, казалось, делало вещи немного медленными, и я начал задаваться вопросом, что было бы лучше, чтобы заблокировать оскорбительных ботов / злонамеренных пользователей. Использование iptables, htaccess или просто базы данных. Подход с использованием базы данных кажется самым простым, но я бы предпочел, чтобы злоумышленники не тратили впустую запрос, если более эффективно блокировать их на уровне htaccess или iptables.
Есть ли способ, который предпочтителен для большого количества адресов? Каковы соображения, если таковые имеются, для каждого?
Это простой веб-сервер, на котором выполняется приложение PHP / MySQL.
Спасибо.