Ako skontrolovať Fail2banLogs?


V dnešnom príspevku vysvetlíme, ako skontrolovať denníky Fail2ban. Vysvetlíme si tiež, aké sú úrovne protokolov a ciele protokolov a ako ich môžeme zmeniť.

Poznámka: Postup uvedený tu bol testovaný na Ubuntu 20.04. Rovnaký postup však možno použiť aj v iných distribúciách Linuxu, ktoré majú nainštalovaný Fail2ban.

Čo je súbor denníka?

Súbory denníkov sú automaticky generované súbory aplikáciou alebo OS, ktoré majú záznam udalostí. Tieto súbory sledujú všetky udalosti spojené so systémom alebo aplikáciou, ktorá ich vygenerovala. Účelom protokolových súborov je uchovávať záznam o tom, čo sa stalo v zákulisí, takže ak sa niečo stane, môžeme vidieť podrobný zoznam udalostí, ktoré sa stali pred problémom. Je to prvá vec, ktorú správcovia skontrolujú, keď narazia na akýkoľvek problém. Väčšina súborov denníka končí príponou .log alebo .txt.

Súbor denníka Fail2ban

Fail2ban generuje protokolový súbor, ktorý zaznamenáva všetky udalosti pre pokusy o pripojenie. Samotná aplikácia Fail2ban monitoruje vo svojich protokolových súboroch neúspešné pokusy o autentifikáciu alebo akékoľvek podozrivé aktivity. Po preddefinovanom počte neúspešných pokusov o overenie zablokuje zdrojové IP adresy na určitý čas. Preto je účinný pri predchádzaní vniknutiu predtým, ako ohrozí váš systém.

Ako skontrolovať súbor denníka Fail2ban?

Súbor denníka Fail2ban nájdete v adresári /var/log/fail2ban. Ak chcete zobraziť súbor denníka, použite príkaz nižšie:

$ cat /var/log/fail2ban.log

Toto je výstup vyššie uvedeného príkazu, ktorý zobrazuje rôzne udalosti spolu s dátumom a časom výskytu.

Ak sa zameriame na posledné štyri riadky vo vyššie uvedenom výstupe, môžeme vidieť dve položky Nájdené, ktoré zobrazujú dva pokusy o pripojenie zo zdrojovej adresy IP 192.168.72.186. Po treťom pokuse bola zdrojová adresa IP zablokovaná, čo sa prejavilo v položke Ban (ako maxretry=2). Potom posledná položka je Unban, ktorá ukazuje, že IP adresa bola zrušená po 20 sekundách (ako bantime=20sec).

Úroveň denníka

Úroveň protokolu informuje o type a stupni závažnosti zaznamenanej udalosti. V Fail2ban existujú rôzne úrovne protokolov, a to takto:

  • KRITICKÉ (kritické podmienky; mali by sa okamžite vyšetriť)

  • CHYBA (Keď sa niečo pokazí, ale nie je to kritické)

  • VAROVANIE (Potenciálne škodlivé udalosti)

  • UPOZORNENIE (Normálny, ale významný stav)

  • INFO (Informačné správy a môžu byť ignorované)

  • DEBUG (Správy na úrovni ladenia)

Úrovne protokolov sú definované v /etc/fail2ban/fail2ban.local. Ak chcete zobraziť aktuálnu úroveň denníka, použite príkaz nižšie:

$ sudo fail2ban-client get loglevel

Nasledujúci výstup ukazuje, že aktuálna úroveň protokolu Fail2ban je INFO.

Zmena úrovne denníka

Ak chcete zmeniť úroveň protokolu Fail2ban, budete musieť upraviť jeho globálny konfiguračný súbor. Konfiguračný súbor Fail2ban je fail2ban.conf v adresári /etc/fail2ban. Odporúča sa však neupravovať tento súbor priamo. Namiesto toho, ak potrebujete vykonať nejaké zmeny v konfigurácii, vytvorte súbor fail2ban.local.

1. Ak ste už vytvorili súbor fail2ban.local, môžete tento krok opustiť. Vytvorte súbor fail2ban.local pomocou tohto príkazu v termináli:

$ sudo cp /etc/fail2ban/fail2ban.conf /etc/fail2ban/fail2ban.local

2. Upravte súbor fail2ban.local pomocou príkazu nižšie v termináli:

$ sudo nano /etc/fail2ban/fail2ban.local

3. Teraz nájdite položku loglevel v súbore fail2ban.local (na vyhľadanie ľubovoľnej položky v editore Nano môžete použiť kombináciu klávesov Ctrl+w). Potom zmeňte položku úrovne protokolu na požadovanú úroveň protokolu. Ak chcete napríklad nastaviť úroveň denníka na KRITICKÚ, zmeňte jej hodnotu:

loglevel = CRITICAL

Potom uložte a ukončite súbor fail2ban.local.

4. Reštartujte službu Fail2ban takto:

$ sudo systemctl restart fail2ban

5. Teraz na potvrdenie, či sa úroveň protokolu zmenila na požadovanú úroveň, použite príkaz nižšie:

$ sudo fail2ban-client get loglevel

Log Target

V protokolovaní Fail2ban si môžete vybrať, kam sa majú protokoly odosielať. Cieľ protokolu môže byť akýkoľvek súbor, STDOUT, STDERR alebo SYSLOG. Môžete však zadať iba jeden cieľ protokolu. V predvolenom nastavení sú pri Fail2banlogs všetky udalosti protokolovania v súbore /var/log/fail2ban.log. Ak chcete nájsť aktuálny cieľ denníka, použite príkaz nižšie:

$ sudo fail2ban-client get logtarget

Nasledujúci výstup ukazuje, že aktuálny cieľ protokolu je súbor /var/log/fail2ban.log.

Zmena cieľa protokolu

Cieľ protokolu zvyčajne nie je potrebné upravovať. Ak ho však potrebujete upraviť, môžete tak urobiť takto:

1. Ak chcete zmeniť cieľ protokolu, upravte súbor fail2ban.local pomocou príkazu nižšie v termináli.

$ sudo nano /etc/fail2ban/fail2ban.local

Ak súbor fail2ban.local nie je vytvorený, môžete ho vytvoriť, ako je uvedené v predchádzajúcej časti Zmena úrovne denníka.

2. Teraz nájdite položku logtarget v súbore fail2ban.local. Na vyhľadanie ľubovoľnej položky v editore Nano môžete použiť kombináciu klávesov Ctrl+w.

3. Zmeňte položku logtarget na požadovaný cieľ, ktorým môže byť akýkoľvek súbor, ako napríklad STDOUT, STDERR alebo SYSLOG. Potom uložte a ukončite súbor fail2ban.local.

4. Reštartujte službu Fail2ban takto:

$ sudo systemctl restart fail2ban

5. Po zmene cieľa protokolu to môžete potvrdiť pomocou príkazu nižšie:

$ sudo fail2ban-client get logtarget

Výstup by mal teraz zobrazovať nový cieľ protokolu.

V tomto príspevku ste sa naučili, ako skontrolovať denníky Fail2ban. Dozvedeli ste sa tiež o úrovniach denníka Fail2ban a cieľoch denníka a ako ich zmeniť, ak to niekedy budete potrebovať.