четверг, 4 февраля 2010 г.

DOS запрос одной страницы. Как вычеслить.

Если запрашивают одну страницу с сайта, но очень много раз, то довольно легко по логам посмотреть с какого ip это делают и прибить, если конечно делают с одного адреса.

Смотрим по логам кто у нас много запрашивает
tail -n 5000 /var/log/httpd/access.log | awk '{print $1}' | sort | uniq -c | sort -rn

Получим на выходе список адресов с которых заходили с количеством обращений.
Конечно нужно уточнять расположение логов.

Тоже самое делаем когда используется прокся - парсим, выделяем адрес ( в логах сквида выделяем awk '{print $3}'), сортируем, баним.


updated:
И вот еще положу на всякий, чтобы было под рукой.
netstat -ntu | awk '{print $5}' | sed -e '1d' -e '2d'|sort | uniq -c | sort -nr |head -n20
netstat -n -p | grep SYN_REC| awk '{print $5}'|awk -F: '{print $1}' | sort -n | uniq -c | sort -nr | head -n1

Комментариев нет:

Отправить комментарий