DDOS - как быстро заблокировать IP адреса через tail/iptables/csf, с которых идет ДДОС атака: различия между версиями

Материал из Wiki - Iphoster - the best ever hosting and support. 2005 - 2024
Перейти к:навигация, поиск
 
(не показана 1 промежуточная версия этого же участника)
Строка 9: Строка 9:
  
 
тоже самое, но для iptables:
 
тоже самое, но для iptables:
  for i in `tail -n1000 /var/log/nginx/access.log | grep "host:site.market" | awk {'print $1'} | sort | uniq -c | sort -n | awk {'print $2'}` ; do { iptables -I INPUT -s $i -j DROP; }; done;
+
  # for i in `tail -n1000 /var/log/nginx/access.log | grep "host:site.market" | awk {'print $1'} | sort | uniq -c | sort -n | awk {'print $2'}` ; do { iptables -I INPUT -s $i -j DROP; }; done;
 +
тоже самое - но без 8 первых символов:
 +
# for i in ` tail -n100000 /var/log/nginx/access.log | cut -c 8- | grep "GET /v/panel/uploads" | awk {'print $1'} | sort | uniq -c | sort -n | awk {'print $2'}` ; do { iptables -I INPUT -s $i -j DROP; }; done;
 +
 
 +
 
 +
Другие примеры:
 +
# for i in `cat ips1.txt | awk {'print $2'} | sed 's/.$//'` ; do { csf -d $i; }; done;

Текущая версия на 10:16, 8 ноября 2023

DDOS - как быстро заблокировать IP адреса через tail/iptables/csf, с которых идет ДДОС атака

Блокируем через цикл for + tail + csf:

# for i in `tail -n1000 /var/www/user1/data/logs/site.info.access.log | grep "python-requests/2.13.0" | awk {'print $1'} | sort | uniq -c | sort -n | awk {'print $2'}` ; do { csf -d $i; }; done;

Еще быстрее:

# tail -n100000 /var/www/user1/data/logs/site.info.access.log | grep "python-requests/2.13.0" | awk {'print $1'} | sort | uniq -c | sort -n | awk {'print $2'} > /etc/csf/csf.deny && csf -r


тоже самое, но для iptables:

# for i in `tail -n1000 /var/log/nginx/access.log | grep "host:site.market" | awk {'print $1'} | sort | uniq -c | sort -n | awk {'print $2'}` ; do { iptables -I INPUT -s $i -j DROP; }; done;

тоже самое - но без 8 первых символов:

# for i in ` tail -n100000 /var/log/nginx/access.log | cut -c 8- | grep "GET /v/panel/uploads" | awk {'print $1'} | sort | uniq -c | sort -n | awk {'print $2'}` ; do { iptables -I INPUT -s $i -j DROP; }; done;


Другие примеры:

# for i in `cat ips1.txt | awk {'print $2'} | sed 's/.$//'` ; do { csf -d $i; }; done;