Il rilevamento delle scansioni di porte ha una particolarità che lo fa uscire dal consueto insieme di strumenti. Fail2ban legge i registri delle applicazioni, ma quando si scansiona una porta chiusa non c’è alcuna applicazione, quindi non c’è nemmeno una voce di registro. Una scansione si vede solo a livello di firewall, ed è proprio lì che lavora PSAD: legge i messaggi che iptables scrive sui pacchetti scartati.
Condizione obbligatoria: la registrazione dev’essere attiva
È il motivo principale per cui PSAD «è installato e non mostra nulla». Senza regole di registrazione nel firewall non ha nulla da leggere, e nessun errore viene prodotto.
Se usa UFW:
sudo ufw logging low
sudo ufw status verbose
Per confermare che i messaggi compaiano davvero:
sudo journalctl -k | grep -c '\[UFW'
sudo grep -c 'UFW BLOCK' /var/log/ufw.log
Zeri in entrambi i comandi significano che PSAD non funzionerà. E a parte, su Debian 12 e Ubuntu 24.04: senza rsyslog il file /var/log/ufw.log non esiste e tutto va nel journal di systemd; il percorso del registro nelle impostazioni di PSAD deve tenerne conto.
Installazione
sudo apt install psad
sudo psad --sig-update
sudo psad -R
sudo psad --Status
L’ultimo comando è il principale. Mostra quanti pacchetti sono stati analizzati, quali indirizzi sono stati notati e con quale livello di pericolo. Se il contatore dei pacchetti analizzati è zero, torni alla sezione precedente: il problema è la registrazione, non l’assenza di scansioni.
Le impostazioni sono in /etc/psad/psad.conf. Pochi parametri hanno rilievo pratico: l’indirizzo per la posta, il percorso del registro e le soglie dei livelli di pericolo.
I livelli di pericolo
PSAD valuta ogni origine da 1 a 5 a seconda di quante porte diverse siano state toccate e di quanto il comportamento somigli a tecniche di scansione note.
- 1–2: contatti isolati con porte chiuse. È il rumore di fondo permanente di internet; non richiede reazione;
- 3: percorrenza sistematica delle porte. Di norma gli scanner di ricerca, di cui in rete ne esistono alcune decine;
- 4–5: sondaggio deliberato di molte porte da un indirizzo, spesso cercando di mascherare la natura dei contatti.
La soglia per la posta la fissa EMAIL_ALERT_DANGER_LEVEL. Un valore di 3 significa di solito diversi messaggi al giorno, il che porta abbastanza in fretta a una regola nel programma di posta. È più sensato mettere 4 e vedere il resto su una pagina di sintesi.
Il blocco automatico: meglio di no
PSAD sa aggiungere da sé regole al firewall (ENABLE_AUTO_IDS). Su un server unico in produzione non conviene attivarlo, e il motivo è preciso: l’indirizzo del mittente in un pacchetto si può falsificare. Basta inviare verso di lei pacchetti con indirizzo sostituito, e bloccherà l’indirizzo scelto da qualcun altro. Può essere un suo cliente, un gateway di pagamento o un servizio di monitoraggio.
Se il blocco serve comunque, lo attivi con una soglia di pericolo alta e sempre con un limite di tempo (AUTO_BLOCK_TIMEOUT), perché una voce errata non resti per sempre.
Che cosa se ne fa in pratica
Una scansione in sé è innocua: non rompe nulla e capita a tutti di continuo. Il valore dei dati di PSAD non sta nel fatto ma nei cambiamenti di carattere.
Osservazioni utili:
- Interesse mirato. Uno scanner ordinario percorre migliaia di indirizzi e una dozzina di porte popolari. Se qualcuno percorre metodicamente le porte proprio del suo server, comprese quelle non standard, non è più rumore di fondo;
- Scansione di una porta precisa. Contatti con la porta di un database o di un pannello di gestione significano che qualcuno cerca proprio quel servizio, di norma dopo la notizia dell’ennesima vulnerabilità che lo riguarda;
- Ricognizione prima del tentativo. Un picco di scansione e, ore dopo, tentativi di password dallo stesso intervallo è una sequenza tipica, e la sua prima metà dà un po’ di tempo.
La conclusione pratica di ciascuna di queste osservazioni è la stessa: verificare che l’elenco delle porte esposte corrisponda alle attese e che ciò che gira su ognuna sia stato aggiornato quest’anno.
Il suo posto nell’insieme degli strumenti
PSAD non sostituisce né il firewall, né Fail2ban, né un sistema di rilevamento delle intrusioni. Copre una fessura stretta: i tentativi che non lasciano tracce altrove perché non hanno raggiunto alcuna applicazione. Costa poco, funziona senza configurazione dopo la prima esecuzione, e la sua sintesi risponde a una domanda che altrimenti nessuno pone: qualcuno si interessa al suo server oltre il rumore di fondo generale? Come appare quella sintesi lo mostra la pagina dimostrativa qui sotto.