Het opsporen van poortscans heeft een eigenaardigheid waardoor het buiten de gebruikelijke gereedschapskist valt. Fail2ban leest toepassingslogboeken — maar bij het scannen van een gesloten poort is er geen toepassing, dus ook geen logregel. Een scan is alleen op firewallniveau zichtbaar, en daar werkt PSAD: het leest de meldingen die iptables over weggegooide pakketten schrijft.
Verplichte voorwaarde: de logging moet aanstaan
Dat is de belangrijkste reden waarom PSAD «geïnstalleerd is en niets toont». Zonder logregels in de firewall heeft het niets te lezen, en er ontstaat daarbij geen fout.
Gebruikt u UFW:
sudo ufw logging low
sudo ufw status verbose
Om te bevestigen dat er werkelijk meldingen verschijnen:
sudo journalctl -k | grep -c '\[UFW'
sudo grep -c 'UFW BLOCK' /var/log/ufw.log
Nullen bij beide commando's betekenen dat PSAD niet gaat werken. En apart over Debian 12 en Ubuntu 24.04: zonder rsyslog bestaat het bestand /var/log/ufw.log niet en gaat alles naar het systemd-journaal; het logpad in de PSAD-instellingen moet daar rekening mee houden.
Installatie
sudo apt install psad
sudo psad --sig-update
sudo psad -R
sudo psad --Status
Het laatste commando is het belangrijkste. Het toont hoeveel pakketten zijn ontleed, welke adressen zijn opgemerkt en met welk gevaarsniveau. Staat de teller van ontlede pakketten op nul, keer dan terug naar de vorige sectie: het ligt aan de logging, niet aan het uitblijven van scans.
De instellingen staan in /etc/psad/psad.conf. Weinig parameters zijn praktisch van belang: het adres voor de mail, het logpad en de drempels van de gevaarsniveaus.
De gevaarsniveaus
PSAD beoordeelt elke bron van 1 tot 5, afhankelijk van hoeveel verschillende poorten zijn aangeraakt en hoezeer het gedrag op bekende scantechnieken lijkt.
- 1–2 — losse contacten met gesloten poorten. Dat is de permanente achtergrond van het internet; reactie is niet nodig;
- 3 — systematisch aflopen van poorten. Doorgaans de onderzoeksscanners, waarvan er enkele tientallen op het net zijn;
- 4–5 — doelgericht aftasten van veel poorten vanaf één adres, vaak met een poging de aard van de contacten te verhullen.
De drempel voor mail stelt EMAIL_ALERT_DANGER_LEVEL in. Een waarde van 3 betekent doorgaans meerdere berichten per dag, wat vrij snel tot een regel in het mailprogramma leidt. Verstandiger is 4 in te stellen en de rest op een overzichtspagina te bekijken.
Automatisch blokkeren: liever niet
PSAD kan zelf firewallregels toevoegen (ENABLE_AUTO_IDS). Op één productieserver kunt u dat beter niet aanzetten, en de reden is concreet: het afzenderadres in een pakket is te vervalsen. Het volstaat pakketten met een vervangen adres uw kant op te sturen — en u blokkeert het adres dat iemand anders heeft uitgekozen. Dat kan uw eigen klant zijn, een betaalgateway of een bewakingsdienst.
Is blokkeren toch nodig, zet het dan aan met een hoge gevaarsdrempel en altijd met een tijdslimiet (AUTO_BLOCK_TIMEOUT), zodat een foutieve regel niet voor altijd blijft staan.
Wat u er in de praktijk mee doet
Een scan op zichzelf is onschadelijk: hij breekt niets en overkomt iedereen onophoudelijk. De waarde van de PSAD-gegevens zit niet in het feit maar in veranderingen van karakter.
Nuttige waarnemingen:
- Gerichte belangstelling. Een gewone scanner loopt duizenden adressen en een dozijn populaire poorten af. Loopt iemand stelselmatig juist de poorten van uw server af, inclusief de niet-standaard, dan is dat geen achtergrond meer;
- Scannen van één bepaalde poort. Contacten met de poort van een database of een beheerpaneel betekenen dat iemand juist die dienst zoekt — doorgaans na nieuws over weer een kwetsbaarheid daarin;
- Verkenning vóór de poging. Een scanpiek en uren later wachtwoordraden vanuit hetzelfde bereik is een typische volgorde, en de eerste helft daarvan geeft wat tijd.
De praktische slotsom uit elk van die waarnemingen is dezelfde: nagaan of de lijst met naar buiten wijzende poorten overeenkomt met de verwachting, en of wat er op elk daarvan draait dit jaar is bijgewerkt.
De plaats in de gereedschapskist
PSAD vervangt noch de firewall, noch Fail2ban, noch een inbraakdetectiesysteem. Het dekt één smalle kier — de pogingen die nergens anders sporen achterlaten omdat ze geen enkele toepassing hebben bereikt. Het kost weinig, werkt na de eerste run zonder inrichting, en het overzicht beantwoordt een vraag die anders niemand stelt: heeft iemand in uw server belangstelling buiten de algemene achtergrond om? Hoe dat overzicht oogt, toont de demopagina hieronder.