The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



"Фильтрация логов nginx посредством sh скрипта"
Версия для распечатки Пред. тема | След. тема
Форум Программирование под UNIX
Исходное сообщение [ Отслеживать ]

. "Фильтрация логов nginx посредством sh скрипта" +/
Сообщение от anonymous (??), 03-Июл-10, 14:54 
>Доброго времени суток, помогите реализовать скрипт который выдергивал бы нужные IP адреса
>из nginx.
>Суть скрипта такова, есть модуль у nginx который пишет в логи превышенное
>число соединений сообщением к примеру:
>[error] 19025#0: *4209513 access forbidden by rule, client: 123.123.13.13, server: example.org, request:
># ищем ботов
>cat /var/log/nginx/error.log | grep "limiting connections by zone" | grep "request: \"GET
>/ HTTP/1.1"| awk '{print $12}'| awk -F"," '{print $
>1}'| sort | uniq -c | sort -nr > /tmp/botnet.blacklist

gawk '/access forbidden by rule/ { match($0, /client: ([^,]+),/, a); print a[1] }' /var/log/nginx/error.log | sort | uniq -c | sort -nr > /tmp/botnet.blacklist

можно и sort|uniq|sort переписать на awk, но лениво :-)

Ответить | Правка | Наверх | Cообщить модератору

Оглавление
Фильтрация логов nginx посредством sh скрипта, Bugster, 25-Июн-10, 19:16  [смотреть все]
Форумы | Темы | Пред. тема | След. тема



Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру