Logwatch rieši úlohu, ktorá sa inak nerieši vôbec: prečíta za vás všetky logy servera a pošle výťah za deň. Nikto neprechádza auth.log a logy webového servera denne, ale prečítať ráno jeden list je uskutočniteľné.

Problém je známy: prvý list príde na niekoľko sto riadkov, druhý sa preletí po diagonále, o týždeň ho pravidlo v pošte odloží do zvláštneho priečinka a tým sledovanie končí. Príčina je takmer vždy v predvolenom nastavení a opraví sa to za desať minút.

Inštalácia a kde meniť nastavenia

sudo apt install logwatch

Je dôležité, kam písať vlastné hodnoty. Súboru /usr/share/logwatch/default.conf/logwatch.conf sa nesmie dotýkať — prepíše sa pri aktualizácii balíka. Váš súbor je /etc/logwatch/conf/logwatch.conf. Môže byť prázdny, stačí doň pridať len to, čo meníte.

Output = mail
Format = html
MailTo = admin@example.com
Detail = Low
Range = yesterday

O všetkom rozhoduje úroveň podrobnosti

Detail prijíma hodnoty od 0 do 10 alebo slová Low, Med, High. Rozdiel je obrovský: pri High správa zahŕňa každé spojenie a každú požiadavku, pri Low len súhrnné čísla a odchýlky.

Prax je taká: všeobecná úroveň Low a podrobnosť sa bodovo zvyšuje pre tie služby, ktoré vás skutočne zaujímajú. Nastavenia jednotlivých služieb sa ukladajú do /etc/logwatch/conf/services/ — napríklad súbor sshd.conf s riadkom Detail = High.

Orientačný bod na kontrolu: správa sa má zmestiť zhruba na obrazovku až obrazovku a pol. Všetko dlhšie sa prestane čítať — nie z lenivosti, ale preto, že medzi tristo riadkami rutiny nie je odchýlku vidieť.

Pozrieť sa na výsledok bez čakania na ráno:

sudo logwatch --detail Low --range today --output stdout

Prázdna sekcia SSH na Debiane 12

Zvláštna pasca čerstvých systémov. Logwatch číta textové súbory v /var/log, a Debian 12 aj Ubuntu 24.04 už štandardne neinštalujú rsyslog — súbor /var/log/auth.log jednoducho neexistuje, všetko ide do žurnálu systemd. Správa pritom chodí bez problémov, ale najpotrebnejšia sekcia — o prihláseniach cez SSH — je prázdna alebo chýba.

Kontrola zaberie sekundu:

ls -l /var/log/auth.log

Súbor nie je — buď nainštalujeme rsyslog, alebo prijmeme, že Logwatch na tomto stroji ukazuje neúplný obraz. Prázdnu sekciu možno ľahko vziať ako „nič sa nedialo“ a to je najnebezpečnejší dôsledok.

Kam mizne list

Druhá častá príčina toho, že „správy nechodia“: na serveri nie je nastavené odosielanie pošty. Logwatch odovzdá list systémovému agentovi, ten ho nikam neodošle a list sadne v lokálnej schránke roota, kam nikto nenazerá:

sudo cat /var/mail/root | tail -50

Varianty sú dva. Buď nastaviť odosielanie cez externý SMTP relay, alebo poštu nepoužívať vôbec a správu ukladať do súboru:

Output = file
Filename = /var/log/logwatch/report.txt

Druhý variant je poctivejší: list, ktorý nemá kto doručiť, vytvára ilúziu sledovania, kým súbor na disku sa dá aspoň otvoriť.

Čo v správe čítať

Zostupne podľa užitočnosti:

  • sshd. Úspešné prihlásenia — kto a odkiaľ. Práve úspešné, nie tisíce neúspešných: neúspešné sú pozadie, kým prihlásenie z neznámej adresy vyžaduje vysvetlenie;
  • sudo a pam_unix. Kto zvyšoval oprávnenia a zakladal používateľov;
  • Disk Space. Jeden riadok, ktorý vopred varuje pred zaplnením disku;
  • cron. Novo sa objavivšie úlohy a tie, ktoré skončili chybou;
  • http. Skok odpovedí 404 obvykle znamená hľadanie ciest, skok 500 — že sa niečo pokazilo u vás;
  • postfix, ak server odosiela poštu: rast odchádzajúceho radu je typický príznak toho, že sa server začal používať na rozosielanie.

Hranice použiteľnosti

Logwatch je súhrn za uplynulý deň, nie upozornenie. Nezobudí vás v noci a z definície sa oneskoruje: spúšťa sa dennou úlohou k ránu a rozoberá včerajšok. Na „niečo sa deje práve teraz“ sa nehodí a ani na to nie je určený.

Jeho sila je inde — ukazuje tvar bežného dňa. Po mesiaci čítania viete, koľko máte v norme neúspešných prihlásení, koľko požiadaviek chodí na web a koľko listov odchádza; a keď sa jedno z tých čísel zmení na dvojnásobok, je to vidieť hneď, bez akýchkoľvek prahov a pravidiel. Práve preto má zmysel držať správu tam, kde padne do oka, a nie v poštovom priečinku. Ako to vyzerá na stránke, ukazuje ukážka nižšie.