Skip to main content

Hardening

Per eseguire un hardening efficace di un'applicazione web su stack LAMP (Linux, Apache, MySQL, PHP) su Ubuntu 24.04 consigliamo di seguire i seguenti passi suddivisi per i vari componenti dello stack.

Linux

Si consiglia di installare fail2ban in modo da bloccare tentativi di scansioni da parte di tool automatici / scanner di vulnerabilità.
Per farlo:

sudo apt install fail2ban

Verificate che il servizio sia attivo:

systemctl status fail2ban

Creare un file personalizzato che registri la definizione di un nuovo filtro in modo da bloccare l'ip sorgente della scansione.
Il filtro rileva gli status HTTP 404 e li riporta al motore di fail2ban per la valutazione

sudo nano /etc/fail2ban/filter.d/apache-404.conf

contenuto:

[Definition]

failregex = ^<HOST> .* "(GET|POST|HEAD|PUT).*" 404
ignoreregex =.*(robots.txt|favicon.ico|jpg|png|gif)

Attivare il filtro creato creando in file

sudo nano /etc/fail2ban/jail.local

con il seguente contenuto:

[apache-404]

enabled = true
port = http,https
filter = apache-404
action = iptables-allports[protocol=all, blocktype=DROP]

logpath = /var/log/apache2/access.log

bantime  = 3600
findtime = 120
maxretry = 100

Nella configurazione sopra, se il filtro "apache-404" rileva un numero di tentativi uguale o superiore a "maxretry" nell'arco di "findtime" secondi, l'ip sorgente da cui arrivano le richieste web sarà bannato per "bantime" secondi.
Per bannato si intente l'applicazione della "action" ovvero il drop delle connessioni.