Sicurezza Server · 6 min read · Sep 15, 2025
Come installare Fail2ban su Ubuntu 24.04 Server

Fail2ban è un software IPS (Intrusion Prevention Software) gratuito e open-source che aiuta gli amministratori a proteggere i server Linux contro accessi malevoli e attacchi di forza bruta. Fail2ban è scritto in Python e viene fornito con filtri per vari servizi come Apache2, SSH, FTP, ecc. Fail2ban riduce i tentativi di accesso malevoli bloccando gli indirizzi IP delle fonti degli attacchi.
Fail2ban funziona esaminando i file di log dei servizi (ad esempio /var/log/auth.log) e vietando gli indirizzi IP che mostrano tentativi di accesso malevoli come troppe password errate, ricerca di exploit, ecc. Fail2ban supporta anche più backend di firewall come iptables, ufw e firewalld. Consente anche di impostare una notifica via email per ogni tentativo di accesso bloccato.
In questa guida, imparerai come installare Fail2ban su un server Ubuntu 24.04. Configurerai la prigione di Fail2ban, imparerai il comando base ‘fail2ban-client’ e poi imparerai come vietare e revocare il divieto agli indirizzi IP utilizzando Fail2ban.
Prerequisiti
Per iniziare con questa guida, assicurati di avere:
- Un server Ubuntu 24.04
- Un utente non root con privilegi di amministratore
Installazione di Fail2ban e UFW (Uncomplicated Firewall)
Fail2ban è un IPS (Intrusion Prevention Software) che protegge i server contro attacchi di forza bruta. È disponibile per impostazione predefinita nella maggior parte dei repository Linux e supporta più backend di firewall. In questa sezione, installerai Fail2ban e poi configurerai UFW (Uncomplicated Firewall) che sarà utilizzato come backend del firewall per Fail2ban.
Per prima cosa, esegui il comando qui sotto per aggiornare l’indice dei pacchetti di Ubuntu.
sudo apt update
Ora installa i pacchetti ‘ fail2ban ‘ e ‘ ufw ‘ con il seguente comando ‘ apt ‘. Inserisci ‘ Y ‘ per confermare l’installazione.
sudo apt install fail2ban ufw
Dopo che l’installazione è completata, esegui il comando qui sotto per aprire la porta per SSH e abilitare UFW. Inserisci ‘Y’ per confermare, avviare e abilitare UFW.
sudo ufw allow OpenSSH
sudo ufw enableUna volta che UFW è abilitato, vedrai un output ‘ Il firewall è attivo e abilitato all’avvio del sistema ‘.
Successivamente, esegui il seguente comando per controllare lo stato di UFW. Vedrai che UFW è ‘ attivo ‘ con ‘ OpenSSH ‘ abilitato.
sudo ufw status
Infine, esegui il comando ‘systemctl’ qui sotto per avviare, abilitare e verificare il servizio ‘ fail2ban ‘.
sudo systemctl enable --now fail2ban
sudo systemctl status fail2banPuoi vedere qui sotto che ‘ fail2ban ‘ è attivo (in esecuzione) e abilitato.

Configurazione di Fail2ban
Dopo aver installato fail2ban, devi configurarlo prima che Fail2ban prenda un’azione (controllo e blocco). In questa sezione, modificherai la configurazione di fail2ban ‘/etc/fail2ban/jail.local’, imposterai la configurazione globale per ‘ bantime ‘, ‘ maxretry ‘, e ‘ findtime ‘, configurerai l’azione predefinita e il backend del firewall UFW, e poi abiliterai la prigione ‘ sshd ‘ per proteggere il servizio SSH dagli attacchi di forza bruta.
Per iniziare, copia la configurazione predefinita di fail2ban in ‘ /etc/fail2ban/jail.local ‘ con il seguente comando:
sudo cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.localApri il file ‘ /etc/fail2ban/jail.local ‘ con il seguente comando dell’editor ‘ nano ‘.
sudo nano /etc/fail2ban/jail.localAggiungi la tua rete locale all’opzione ‘ ignoreip ‘. Qualsiasi subnet all’interno di questa opzione non sarà bloccata da fail2ban.
ignoreip = 127.0.0.1/8 ::1 192.168.1.0/24 192.168.10.20Regola la configurazione predefinita per ‘ bantime ‘ (il tempo in cui l’indirizzo IP sarà vietato), ‘ findtime ‘ (la durata tra il numero di fallimenti prima dell’azione di divieto), e ‘ maxretry ‘ (il numero di fallimenti per cui gli indirizzi IP verranno vietati). In questo esempio, imposterai il ‘ bantime ‘ a ‘ 1 ora ‘, il ‘ findtime ‘ a ‘ 10 minuti ‘, con il ‘ maxretry ‘ a ‘ 5 volte ‘.
bantime = 1h
findtime = 10m
maxretry = 5Facoltativamente, cambia l’azione predefinita ‘ action ‘ in ‘ %(action_mw)s ‘ per vietare gli indirizzi IP e inviare una notifica all’amministratore via email. Assicurati anche di cambiare le opzioni ‘destmail’ e ‘sender’.
action = %(action_mw)s
destemail = [email protected]
sender = [email protected]Cambia l’azione di divieto predefinita ‘ banaction ‘ in ‘ ufw ‘. Con questo, gli indirizzi IP saranno vietati da fail2ban tramite UFW.
banaction = ufwOra cambia la prigione predefinita per ‘ sshd ‘ con la configurazione qui sotto. In questo esempio, la prigione ‘ sshd ‘ avrà impostazioni personalizzate per ‘ bantime ‘, ‘ maxretry ‘, e ‘ findtime ‘.
[sshd]
enabled = true
maxretry = 3
findtime = 15m
bantime = 3h
port = ssh
logpath = %(sshd_log)s
backend = %(sshd_backend)sSalva ed esci dal file quando hai finito.
Infine, esegui il comando ‘systemctl’ qui sotto per riavviare il servizio ‘ fail2ban ‘ e applicare le tue modifiche.
sudo systemctl restart fail2ban
Controllare le regole di fail2ban utilizzando fail2ban-client
A questo punto, il servizio Fail2ban è attivo e funzionante con la prigione ‘sshd’ abilitata. Ora imparerai il comando base di ‘fail2ban-client’ per controllare e gestire l’installazione di Fail2ban.
Per assicurarti che fail2ban sia in esecuzione, esegui il comando ‘ fail2ban-client ‘ qui sotto.
sudo fail2ban-client pingSe fail2ban è in esecuzione, vedrai un output ‘ PONG ‘.
Ora controlla lo stato della prigione ‘ sshd ‘ con il seguente comando. Questo ti mostrerà l’elenco degli indirizzi IP rilevati e vietati per la prigione ‘ sshd ‘.
sudo fail2ban-client status sshd
Successivamente, esegui il comando ‘ fail2ban-client get ‘ qui sotto per controllare le regole specifiche della tua prigione fail2ban. In questa sezione, controllerai ‘ bantime ‘, ‘ maxretry ‘, ‘ actions ‘, ‘ findtime ‘, e ‘ ignoreip ‘ dalla prigione ‘ sshd ‘.
sudo fail2ban-client get sshd bantime
sudo fail2ban-client get sshd maxretry
sudo fail2ban-client get sshd actions
sudo fail2ban-client get sshd findtime
sudo fail2ban-client get sshd ignoreip
Come vietare e revocare il divieto agli indirizzi IP con fail2ban-client
È importante sapere come vietare o revocare il divieto agli indirizzi IP manualmente utilizzando ‘fail2ban-client’. Con questo, puoi facilmente rimuovere il tuo indirizzo IP dall’elenco vietato. Utilizzerai il comando ‘fail2ban-client’ per vietare e revocare il divieto agli indirizzi IP su Fail2ban.
Per vietare gli indirizzi IP manualmente tramite fail2ban, esegui il comando ‘ fail2ban-client ‘ qui sotto. In questo caso, l’indirizzo IP vietato va alla prigione ‘ sshd ‘.
sudo fail2ban-client set sshd banip IP-ADDRESSOra esegui il seguente comando per revocare il divieto all’indirizzo IP dalla prigione ‘ sshd ‘ di fail2ban.
Sudo fail2ban-client set sshd unbanip IP-ADDRESSInfine, puoi controllare lo stato della prigione ‘ sshd ‘ utilizzando il comando qui sotto. Vedrai che l’indirizzo IP è stato rimosso.
sudo fail2ban-client status sshdConclusione
Congratulazioni! Hai completato l’installazione di fail2ban sul server Ubuntu 24.04. Hai anche imparato la configurazione di base per configurare Fail2ban, inclusa l’impostazione della configurazione globale e della prigione. Infine, hai anche imparato l’uso di base del comando ‘fail2ban-client’ per controllare lo stato di fail2ban, lo stato della prigione, le configurazioni della prigione e vietare e revocare il divieto agli indirizzi IP manualmente.
Ricevi i nuovi post nella tua casella di posta.
Nessuno spam. Disiscriviti in qualsiasi momento.