Witaj na Forum Linuxiarzy
Zanim zalogujesz się, by pisać na naszym forum, zapoznaj się z kilkoma zasadami savoir-vivre'u w dziale Administracja.
Wiadomości z problemami zamieszczone w wątku "Przywitaj się" oraz wszelkie reklamy na naszym forum będą usuwane.

Skrypt do ochrony przed atakiem | SASL LOGIN authentication failed

Zaczęty przez armen10, Czerwiec 22, 2020, 02:49:10 PM

Poprzedni wątek - Następny wątek

armen10

Witam,
mam proźbę o pomoc.

Mianowicie chciałbym wyciągnąć z logów adresy ip, te które się chcą włamać. Do tej pory mam taką wizję, że chciałbym wyciągnąć IP, sprawdzić czy istanieje w pliku z adresami, jak nie to dopisać, a jak istnieje, to dać tylko komunikat, ze już istnieje. Coś tam napisałem, ale pewnie jest źle, bo nie ma sprawdzenia, czy już adres istnieje, czy mógłby mi ktoś pomóc ?

Z góry dziękuję


#!/bin/bash
for ip in $( grep "SASL LOGIN authentication failed" /var/log/mail.log | awk -F"from" {'print | sort -u | grep -oE '[0-9]{1,}.[0-9]{1,}.[0-9]{1,}.[0-9]{1,}' | grep -v "0.0.0.0" | sort -n )
do
   while read -r ipaddress;
        do
          if [ $ip != "$1"];
           then
                echo $ipaddress >> ip.txt
                echo "Dodano nowy adres IP:" $ipaddress;
           else
                echo $ipaddress "już istnieje";
          fi
        done < ip.txt
done

Sajmon

to nie będzie działać, masz błąd w konstrukcji awk.

77: Line 2: File end reached when searching for "'".
77: Line 15: Syntax error: Unexpected file end.

awk -F"from"  - brak odstępu po -F
{'print | sort - print tu brak  $2 lub $3 lub $coś}'


Zobacz najnowsze wiadomości na forum