Come installare e configurare Fail2Ban su Ubuntu

Fail2Ban è uno strumento di sicurezza fondamentale che protegge i server Linux dagli attacchi brute-force monitorando i log e vietando gli IP dannosi. Questa guida semplifica l’installazione e la configurazione di Fail2Ban su Ubuntu, con esempi pratici e suggerimenti per proteggere efficacemente il vostro server VPS o dedicato.

Perché usare Fail2Ban?

Fail2Ban migliora la sicurezza dei server grazie a:

  • Bloccando gli IP dopo ripetuti tentativi di accesso falliti.

  • Proteggendo servizi come SSH, server web o e-mail.

  • Riduzione del rischio di accesso non autorizzato.

  • Automatizzazione delle regole del firewall per una maggiore efficienza.

Installazione di Fail2Ban

Per prima cosa, aggiornate l’elenco dei pacchetti e installate Fail2Ban usando i seguenti comandi:

sudo apt update
sudo apt install fail2ban -y

Una volta installato, avviare e abilitare il servizio Fail2Ban:

sudo systemctl start fail2ban
sudo systemctl enable fail2ban

Configurazione di Fail2Ban

Il file di configurazione predefinito per Fail2Ban si trova in /etc/fail2ban/jail.conf. Tuttavia, si consiglia di creare un file di configurazione personalizzato per evitare che le modifiche vengano sovrascritte durante gli aggiornamenti.

sudo cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local

Modificare il file di configurazione con un editor di testo:

sudo nano /etc/fail2ban/jail.local

Impostazioni di configurazione delle chiavi

  • bantime: Definisce la durata (in secondi) per la quale un indirizzo IP sarà vietato.
  • findtime: Specifica la finestra temporale per il rilevamento di più tentativi falliti.
  • maxretry: Numero di tentativi di accesso falliti prima che un IP venga bannato.
  • ignoreip: Elenco di indirizzi IP affidabili che non devono essere bannati.

Esempio di impostazioni:

[DEFAULT]
bantime = 600
findtime = 600
maxretry = 5
ignoreip = 127.0.0.1/8

Abilitazione di Fail2Ban per SSH

Per abilitare Fail2Ban per la protezione SSH, assicuratevi che la seguente sezione sia presente in jail.local:

[sshd]
enabled = true
port = ssh
filter = sshd
logpath = /var/log/auth.log
maxretry = 3

Salvare il file e riavviare Fail2Ban:

sudo systemctl restart fail2ban

Controllo dello stato di Fail2Ban

Per verificare che Fail2Ban funzioni correttamente, utilizzare il seguente comando:

sudo fail2ban-client status

Per controllare lo stato di un jail specifico (ad esempio, SSH):

sudo fail2ban-client status sshd

Disabilitazione di un indirizzo IP

Se un indirizzo IP legittimo viene bannato, è possibile sbloccarlo utilizzando:

sudo fail2ban-client set sshd unbanip 

Conclusione

Fail2Ban è uno strumento semplice ma potente per proteggere il vostro server Ubuntu dagli attacchi brute-force. Installandolo, configurandolo e testandolo con gli esempi sopra riportati, è possibile proteggere servizi come SSH e ridurre i rischi. Abbinato agli affidabili server VPS o dedicati di AvaHost, Fail2Ban assicura che il vostro ambiente di hosting rimanga sicuro e resiliente con il minimo sforzo.