Come installare Fail2ban su Ubuntu Server 18.04
Migliorare La sicurezza di Ubuntu Server attraverso l'aggiunta di un sistema antintrusione. Per questo, probabilmente vorrai rivolgerti a Fail2ban. Fail2ban monitora file di registro specifici (che si trovano all'interno di /var/log directory) per tentativi di accesso non riusciti o attacchi automatici. Quando Fail2ban rileva un tentativo di compromissione da un indirizzo IP, impedisce all'indirizzo IP (aggiungendo una nuova catena al sistema di sicurezza iptables) di accedere al server.
Per installare Fail2ban, è necessario l'accesso alla shell su qualsiasi versione supportata di Ubuntu Server, con un account con privilegi sudo che consenta l'installazione di nuovi pacchetti software.

Come installare Fail2ban
Installa Fail2ban usando Apt. È meglio eseguire l'installazione su una piattaforma server appena aggiornata e, se la versione del kernel si aggiorna, riavviare il server prima di installare Fail2ban.
Al termine dell'installazione, avvia e abilita Fail2ban con i seguenti due comandi:
sudo systemctl start fail2ban
sudo systemctl abilita fail2ban.
Fail2ban è ora in esecuzione sul sistema ed è pronto per essere configurato.
Configura Fail2ban
Fail2ban è configurato utilizzando le jail. Una jail definisce il modo in cui un servizio esegue il monitoraggio e la rapidità con cui agire contro gli attacchi.
Fuori dalla scatola, il sistema è già sicuro. Tuttavia, è anche molto flessibile. Il file di configurazione principale è /etc/fail2ban/jail.conf. Non modificare quel file. Creare invece un nuovo file con l'estensione .local. Fail2ban legge sempre prima i file .conf e poi i file .local. Qualsiasi configurazione letta nel file .local sovrascriverà configurazioni simili nel file .conf.
Configurazione di esempio
Supponiamo che tu voglia creare una jail personalizzata per il demone Secure Shell che:
- Monitorare /var/log/auth.log.
- Usa il filtro sshd fail2ban predefinito.
- Imposta la porta SSH su 22.
- Imposta il numero massimo di tentativi su 3.
Le personalizzazioni ssh nella jail .local sovrascriveranno qualsiasi configurazione simile trovata nel file di configurazione principale, jail.conf (ad esempio, il numero massimo di tentativi predefinito in jail.conf è impostato su 5). Con questa prigione in atto, se una persona (o un bot) fallisce un Accesso SSH tentare tre volte, l'origine indirizzo IP sarà vietato.
Per configurarlo, dai il comando:
sudo nano /etc/fail2ban/jail.local.
In questo nuovo file, incolla i seguenti contenuti:
[sshd]
abilitato = vero
porta = 22
filtro = sshd
logpath = /var/log/auth.log
massimo tentativo = 3.
Salva e chiudi il file, quindi riavvia Fail2ban con il comando:
sudo systemctl riavvia fail2ban.
Test Fail2ban
Per testare Fail2ban, vai su un'altra macchina con un indirizzo IP diverso e avvia una sessione di Secure Shell nel server, digitando ogni volta la password dell'utente in modo errato. Dopo il terzo accesso fallito, quell'account utente viene bannato.

Anche se tenti di tornare SSH nel server dallo stesso indirizzo IP, l'accesso viene comunque negato.
Sblocca un indirizzo IP
Annulla il ban di un IP con il comando fail2ban-client (installato insieme a fail2ban) in questo modo:
sudo fail2ban-client set sshd unbanip 192.168.1.100.