Fail2Ban. Monitora i log del tuo server e blocca automaticamente gli indirizzi IP che mostrano segni di attività dannose, come troppi tentativi di accesso non riusciti. In questo articolo, ti guideremo attraverso la protezione del tuo server SSH in 5 semplici passaggi utilizzando Fail2Ban su sistemi basati su Debian e RHEL.
Passaggio 1: installare Fail2Ban
Per prima cosa devi installare Fail2Ban sul tuo server.
- Per i sistemi basati su Debian (come Ubuntu): Apri il terminale ed esegui il seguente comando:
sudo apt update sudo apt install fail2ban -y
- Per i sistemi basati su RHEL (come CentOS, Fedora): Apri il terminale ed esegui il seguente comando:
sudo yum install epel-release -y sudo yum install fail2ban -y
Come configurare Fail2Ban per SSH
Dopo aver installato Fail2Ban, è necessario configurarlo per proteggere il server SSH.
Creare un file di configurazione locale:
Fail2Ban usa un file di configurazione chiamato jail.conf
. Invece di modificare direttamente questo file, è meglio creare una copia chiamata jail.local
per evitare di perdere le impostazioni quando Fail2Ban viene aggiornato.
sudo cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local
Modifica il file jail.local
Aprire il jail.local
file per modificarlo:
sudo nano /etc/fail2ban/jail.local
Scorri verso il basso per trovare [sshd]
. Qui imposterai le regole per proteggere il tuo server SSH. Assicurati che le seguenti righe siano presenti e non commentate:
[sshd] enabled = true port = ssh logpath = %(sshd_log)s maxretry = 5
enabled = true
: Questo abilita Fail2Ban per SSH.port = ssh
: Specifica la porta SSH (il valore predefinito è 22).logpath = %(sshd_log)s
: Questo è il percorso per i log SSH.maxretry = 5
: Imposta il numero massimo di tentativi falliti prima che un IP venga bannato.
Salvare e uscire dall’editor (in nano, premere CTRL + X, quindi Y, e Enter).
Avviare e abilitare Fail2Ban
Ora che hai configurato Fail2Ban, devi avviarlo e assicurarti che venga eseguito automaticamente all’avvio.
sudo systemctl start fail2ban
sudo systemctl enable fail2ban
Questo avvierà Fail2Ban e garantirà la sua esecuzione ogni volta che il server si avvia.
Verifica lo stato di Fail2Ban
Dopo aver avviato Fail2Ban, è consigliabile controllarne lo stato per assicurarsi che funzioni correttamente.
sudo fail2ban-client status
Questo comando mostrerà lo stato di Fail2Ban, comprese le jail (regole) attive.
Per controllare specificamente la jail SSH, eseguire:
sudo fail2ban-client status sshd
Qui potrai vedere il numero di IP attualmente bannati e altri dettagli.
Sbloccare un IP (se necessario)
A volte, un utente legittimo potrebbe essere bannato accidentalmente. Se ciò accade, puoi sbloccare il suo indirizzo IP.
Per sbloccare un IP, utilizzare questo comando:
sudo fail2ban-client set sshd unbanip <IP_ADDRESS>
Sostituisci <IP_ADDRESS>
con l’IP effettivo che vuoi sbloccare.
Seguendo questi 5 semplici passaggi, hai protetto il tuo server SSH con Fail2Ban. Ora, il tuo server è meglio protetto dagli attacchi brute-force. Fail2Ban bloccherà automaticamente gli IP sospetti, mantenendo il tuo server al sicuro da accessi non autorizzati.