Detekce skenování portů má zvláštnost, kvůli které vypadává z obvyklé sady nástrojů. Fail2ban čte logy aplikací — jenže při skenování zavřeného portu žádná aplikace není, tedy ani záznam v logu. Skenování je vidět jen na úrovni firewallu a právě tam pracuje PSAD: čte zprávy, které iptables zapisuje o zahozených paketech.
Povinná podmínka: logování musí být zapnuté
To je hlavní příčina toho, proč PSAD „stojí a nic neukazuje“. Bez pravidel logování ve firewallu nemá co číst a žádná chyba přitom nevznikne.
Pokud máte UFW:
sudo ufw logging low
sudo ufw status verbose
Ověřte, že se zprávy skutečně objevují:
sudo journalctl -k | grep -c '\[UFW'
sudo grep -c 'UFW BLOCK' /var/log/ufw.log
Nuly v obou příkazech znamenají, že PSAD fungovat nebude. A zvlášť k Debianu 12 a Ubuntu 24.04: bez rsyslog soubor /var/log/ufw.log neexistuje, vše jde do žurnálu systemd — cestu k logu v nastavení PSAD je třeba uvést s ohledem na to.
Instalace
sudo apt install psad
sudo psad --sig-update
sudo psad -R
sudo psad --Status
Poslední příkaz je hlavní. Ukazuje, kolik paketů bylo rozebráno, jaké adresy byly zaznamenány a s jakou úrovní nebezpečí. Je-li čítač rozebraných paketů nulový, vraťte se k předchozí sekci: jde o logování, ne o nepřítomnost skenování.
Nastavení je v /etc/psad/psad.conf. Prakticky významných parametrů je málo: adresa pro dopisy, cesta k logu a prahy úrovní nebezpečí.
Úrovně nebezpečí
PSAD hodnotí každý zdroj na škále od 1 do 5 podle toho, kolik různých portů bylo zasaženo a nakolik chování připomíná známé techniky skenování.
- 1–2 — ojedinělá spojení na zavřené porty. To je stálé pozadí internetu, reagovat netřeba;
- 3 — systematický průchod porty. Obvykle výzkumné skenery, kterých je v síti několik desítek;
- 4–5 — cílený průchod velkým počtem portů z jedné adresy, často se snahou skrýt povahu spojení.
Práh pro dopisy nastavuje parametr EMAIL_ALERT_DANGER_LEVEL. Hodnota 3 obvykle znamená několik dopisů denně, což poměrně rychle vede k pravidlu v poštovním klientovi. Rozumnější je nastavit 4 a zbytek sledovat na souhrnné stránce.
Automatické blokování: netřeba
PSAD umí sám přidávat pravidla firewallu (ENABLE_AUTO_IDS). Na jediném provozním serveru to nemá cenu zapínat a důvod je konkrétní: adresu odesílatele v paketu lze podvrhnout. Stačí poslat vaším směrem pakety s podstrčenou adresou — a zablokujete adresu, kterou vybral někdo jiný. Může to být adresa vašeho zákazníka, platební brány nebo monitorovací služby.
Pokud je blokování přesto potřeba, zapínejte je s vysokým prahem nebezpečí a vždy s časovým omezením (AUTO_BLOCK_TIMEOUT), aby chybný záznam nezůstal navždy.
Co s tím prakticky dělat
Samo skenování je neškodné: nic nerozbíjí a probíhá nepřetržitě u všech. Hodnota dat PSAD není v samotném faktu, ale ve změnách povahy.
Užitečná pozorování:
- Cílený zájem. Běžný skener projde tisíce adres a desítku populárních portů. Pokud však někdo metodicky prochází porty právě vašeho serveru včetně nestandardních — to už není pozadí;
- Skenování konkrétního portu. Spojení na port databáze nebo ovládacího panelu znamenají, že někdo hledá právě tuto službu — obvykle po zveřejnění informací o další zranitelnosti v ní;
- Průzkum před pokusem. Nárůst skenování a za pár hodin hádání hesel ze stejného rozsahu — typická posloupnost, jejíž první část dává trochu času.
Praktický závěr z kteréhokoli z těchto pozorování je stejný: ověřit, že seznam ven otevřených portů odpovídá očekávanému a že na každém z nich běží něco, co jste letos aktualizovali.
Místo v celkové sadě
PSAD nenahrazuje ani firewall, ani Fail2ban, ani systém detekce průniků. Zavírá jednu úzkou skulinu — pokusy, které nikde jinde nezanechávají stopy, protože se nedostaly k žádné aplikaci. Stojí málo, po prvním spuštění funguje bez nastavování a jeho souhrn odpovídá na otázku, kterou si jinak nikdo neklade: zajímá se někdo o váš server odděleně od obecného pozadí. Jak tento souhrn vypadá, ukazuje ukázková stránka níže.