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.