Quantcast
Channel: Linux.org.ru: Форум (тех. форум)
Viewing all articles
Browse latest Browse all 74589

Нужна помощь в написании простенького bash скрипта

$
0
0

Всем привет!

Имеется FreeBSD, Apache и Nginx.

есть файл /etc/nginx/имя_сайта.site.conf
есть лог /var/log/имя_сайта.access_log

в логе есть строчки такого вида:

178.204.35.111 - - [27/Mar/2016:12:47:41 +0300] "POST / HTTP/1.0" 403 1480 "-" "ApacheBench/2.3"
178.204.35.111 - - [27/Mar/2016:12:47:41 +0300] "POST / HTTP/1.0" 403 1480 "-" "ApacheBench/2.3"
178.204.35.111 - - [27/Mar/2016:12:47:41 +0300] "POST / HTTP/1.0" 403 1480 "-" "ApacheBench/2.3"
178.204.35.111 - - [27/Mar/2016:12:47:41 +0300] "POST / HTTP/1.0" 403 1480 "-" "ApacheBench/2.3"
178.204.35.111 - - [27/Mar/2016:12:47:41 +0300] "POST / HTTP/1.0" 403 1480 "-" "ApacheBench/2.3"

нужно отслеживать в логе появление новых строк, содержащих строку «ApacheBench» (или код возврата 403) и банить ip из этой строки путем добавления его к команде deny в файл /etc/nginx/имя_сайта.site.conf:

server {
    deny 178.204.35.111;
...
}

После каждого изменения файла /etc/nginx/имя_сайта.site.conf требуется перегружать nginx командой /etc/rc.d/nginx restart.

вот и все, что должен делать скриптик... Поможете? :)

P.S. Цель скрипта - отражение пианэрских ddos атак))

 ,


Viewing all articles
Browse latest Browse all 74589

Trending Articles