fail2ban
пробуем банить сканеров и разных XSS любителей
для начала просто бан тех кто много смотрит осторожно админы улитают в бан за секунду
потому важное в этой записи прочитать ее всю и научится разбанивать перед первым забанненым админом
и так
создаем правило кого банить
sudo nano /etc/fail2ban/filter.d/apache-ddos.conf
# Fail2Ban configuration file
# Author: AmiGator
[Definition]
failregex = ^
# Option: ignoreregex
# Notes.: regex to ignore. If this regex matches, the line is ignored.
#
ignoreregex =
!!!!!! следите чтоб не было перед началом строк пробелов
sudo nano /etc/fail2ban/jail.conf
добавляем в конце
[apache-ddos]
enabled = true
filter = apache-ddos
action = iptables-multiport[name=ddos, port="http,https"]
sendmail-buffered[name=ddos, lines=5, dest=root]
logpath = /var/www/*/log/access.log
bantime = 1800
findtime = 60
maxretry = 10
ignoreregex = \.(jpg|jpeg|png|gif|js|css)
ГДЕ:
logpath — Путь до нашего лога;
findtime — Время после которого будет бан;
maxretry — число повторений за findtime.
sendmail-buffered[name=ddos, lines=5, dest=root]
Куда присылать отчёт root замените на свой почтовый ящик !
Вроде всё и не забудте перезапустить fail2ban !
service fail2ban restart
и так в пока вы выполнили все инструкции
tail -f /var/log/fail2ban.log
выдаст уже в забанненых админов и пару покупателей 🙂
теперь учимся разбанивать под крики и истерику
вывод забаненых (точнее правила iptables)
iptables -L -n --line-numbers
fail2ban-client get apache-ddos actionunban IP
кого нужно разбанить
и после этого таблица почистилась только после перезагрузки fail2ban
service fail2ban restart