Detekcia skenovania portov má zvláštnosť, kvôli ktorej vypadáva z obvyklej sady nástrojov. Fail2ban číta logy aplikácií — lenže pri skenovaní zatvoreného portu žiadna aplikácia nie je, teda ani záznam v logu. Skenovanie je vidieť len na úrovni firewallu a práve tam pracuje PSAD: číta správy, ktoré iptables zapisuje o zahodených paketoch.
Povinná podmienka: logovanie musí byť zapnuté
To je hlavná príčina toho, prečo PSAD „stojí a nič neukazuje“. Bez pravidiel logovania vo firewalle nemá čo čítať a žiadna chyba pritom nevznikne.
Ak máte UFW:
sudo ufw logging low
sudo ufw status verbose
Overte, že sa správy skutočne objavujú:
sudo journalctl -k | grep -c '\[UFW'
sudo grep -c 'UFW BLOCK' /var/log/ufw.log
Nuly v oboch príkazoch znamenajú, že PSAD fungovať nebude. A zvlášť k Debianu 12 a Ubuntu 24.04: bez rsyslog súbor /var/log/ufw.log neexistuje, všetko ide do žurnálu systemd — cestu k logu v nastavení PSAD treba uviesť s ohľadom na to.
Inštalácia
sudo apt install psad
sudo psad --sig-update
sudo psad -R
sudo psad --Status
Posledný príkaz je hlavný. Ukazuje, koľko paketov bolo rozobraných, aké adresy boli zaznamenané a s akou úrovňou nebezpečenstva. Ak je počítadlo rozobraných paketov nulové, vráťte sa k predchádzajúcej sekcii: ide o logovanie, nie o neprítomnosť skenovania.
Nastavenie je v /etc/psad/psad.conf. Prakticky významných parametrov je málo: adresa pre listy, cesta k logu a prahy úrovní nebezpečenstva.
Úrovne nebezpečenstva
PSAD hodnotí každý zdroj na škále od 1 do 5 podľa toho, koľko rôznych portov bolo zasiahnutých a nakoľko správanie pripomína známe techniky skenovania.
- 1–2 — ojedinelé spojenia na zatvorené porty. To je stále pozadie internetu, reagovať netreba;
- 3 — systematický prechod portmi. Obvykle výskumné skenery, ktorých je v sieti niekoľko desiatok;
- 4–5 — cielený prechod veľkým počtom portov z jednej adresy, často so snahou skryť povahu spojení.
Prah pre listy nastavuje parameter EMAIL_ALERT_DANGER_LEVEL. Hodnota 3 obvykle znamená niekoľko listov denne, čo pomerne rýchlo vedie k pravidlu v poštovom klientovi. Rozumnejšie je nastaviť 4 a zvyšok sledovať na súhrnnej stránke.
Automatické blokovanie: netreba
PSAD vie sám pridávať pravidlá firewallu (ENABLE_AUTO_IDS). Na jedinom prevádzkovom serveri to nemá cenu zapínať a dôvod je konkrétny: adresu odosielateľa v pakete možno podvrhnúť. Stačí poslať vaším smerom pakety s podstrčenou adresou — a zablokujete adresu, ktorú vybral niekto iný. Môže to byť adresa vášho zákazníka, platobnej brány alebo monitorovacej služby.
Ak je blokovanie napriek tomu potrebné, zapínajte ho s vysokým prahom nebezpečenstva a vždy s časovým obmedzením (AUTO_BLOCK_TIMEOUT), aby chybný záznam nezostal navždy.
Čo s tým prakticky robiť
Samo skenovanie je neškodné: nič nerozbíja a prebieha nepretržite u všetkých. Hodnota dát PSAD nie je v samotnom fakte, ale v zmenách povahy.
Užitočné pozorovania:
- Cielený záujem. Bežný skener prejde tisíce adries a desiatku populárnych portov. Ak však niekto metodicky prechádza porty práve vášho servera vrátane neštandardných — to už nie je pozadie;
- Skenovanie konkrétneho portu. Spojenia na port databázy alebo ovládacieho panela znamenajú, že niekto hľadá práve túto službu — obvykle po zverejnení informácií o ďalšej zraniteľnosti v nej;
- Prieskum pred pokusom. Nárast skenovania a o pár hodín hádanie hesiel z rovnakého rozsahu — typická postupnosť, ktorej prvá časť dáva trochu času.
Praktický záver z ktoréhokoľvek z týchto pozorovaní je rovnaký: overiť, že zoznam von otvorených portov zodpovedá očakávanému a že na každom z nich beží niečo, čo ste tento rok aktualizovali.
Miesto v celkovej sade
PSAD nenahrádza ani firewall, ani Fail2ban, ani systém detekcie prienikov. Zatvára jednu úzku škáru — pokusy, ktoré nikde inde nezanechávajú stopy, lebo sa nedostali k žiadnej aplikácii. Stojí málo, po prvom spustení funguje bez nastavovania a jeho súhrn odpovedá na otázku, ktorú si inak nikto nekladie: zaujíma sa niekto o váš server oddelene od všeobecného pozadia. Ako tento súhrn vyzerá, ukazuje ukážková stránka nižšie.