Linux

Installa e configura Fail2ban su Debian 10

Installa e configura Fail2ban su Debian 10

Tutti i server accessibili da Internet sono a rischio di attacchi malware. Ad esempio, se si dispone di un'applicazione accessibile dalla rete pubblica, gli aggressori possono utilizzare tentativi di forza bruta per accedere all'applicazione.

Fail2ban è uno strumento che aiuta a proteggere la tua macchina Linux dalla forza bruta e altri attacchi automatici monitorando i log dei servizi per attività dannose. Utilizza espressioni regolari per scansionare i file di registro. Tutte le voci che corrispondono ai modelli vengono conteggiate e quando il loro numero raggiunge una certa soglia predefinita, Fail2ban vieta l'IP offensivo utilizzando il firewall di sistema per un periodo di tempo specifico. Alla scadenza del periodo di ban, l'indirizzo IP viene rimosso dall'elenco dei ban ban.

Questo articolo spiega come installare e configurare Fail2ban su Debian 10.

Installazione di Fail2ban su Debian #

Il pacchetto Fail2ban è incluso nei repository Debian 10 predefiniti. Per installarlo, esegui il seguente comando come root o utente con privilegi sudo:

sudo apt updatesudo apt install fail2ban

Una volta completato, il servizio Fail2ban si avvierà automaticamente. Puoi verificarlo controllando lo stato del servizio:

sudo systemctl status fail2ban

L'output sarà simile a questo:

● fail2ban.service - Servizio Fail2Ban caricato: caricato (/lib/systemd/system/fail2ban.servizio; abilitato; preset del fornitore: abilitato) Attivo: attivo (in esecuzione) da Mer 2021-03-10 18:57:32 UTC; 47 anni fa.. 

Questo è tutto. A questo punto, hai Fail2Ban in esecuzione sul tuo server Debian.

Configurazione Fail2ban #

L'installazione predefinita di Fail2ban viene fornita con due file di configurazione, /etc/fail2ban/jail.conf e /etc/fail2ban/jail.d/defaults-debian.conf. Non dovresti modificare questi file in quanto potrebbero essere sovrascritti quando il pacchetto viene aggiornato.

Fail2ban legge i file di configurazione nel seguente ordine. Ogni .Locale file sovrascrive le impostazioni dal .conf file:

Il modo più semplice per configurare Fail2ban è copiare il file prigione.conf per prigione.Locale e modificare il .Locale file. Gli utenti più avanzati possono costruire un .Locale file di configurazione da zero. Il .Locale il file non deve includere tutte le impostazioni dal corrispondente .conf file, solo quelli che vuoi sovrascrivere.

Creare un .Locale file di configurazione copiando il file predefinito prigione.conf file:

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

Per iniziare a configurare il server Fail2ban aperto, il prigione.Locale file con il tuo editor di testo:

sudo nano /etc/fail2ban/jail.Locale

Il file include commenti che descrivono cosa fa ogni opzione di configurazione. In questo esempio, cambieremo le impostazioni di base.

Indirizzi IP nella whitelist #

Gli indirizzi IP, gli intervalli IP o gli host che si desidera escludere dal divieto possono essere aggiunti a ignorare direttiva. Qui dovresti aggiungere l'indirizzo IP del tuo PC locale e tutte le altre macchine che desideri inserire nella whitelist.

Decommenta la riga che inizia con ignorare e aggiungi i tuoi indirizzi IP separati da uno spazio:

/etc/fail2ban/jail.Locale
ignoraip = 127.0.0.1/8 ::1 123.123.123.123 192.168.1.0/24 

Impostazioni di esclusione #

bantime, trova il tempo, e maxretry le opzioni impostano il tempo di ban e le condizioni di ban.

bantime è la durata per la quale l'IP è bannato. Quando non viene specificato alcun suffisso, il valore predefinito è secondi. Per impostazione predefinita, il bantime il valore è impostato su 10 minuti. La maggior parte degli utenti preferisce impostare un periodo di divieto più lungo. Modifica il valore a tuo piacimento:

/etc/fail2ban/jail.Locale
bantime = 1d 

Per escludere definitivamente l'IP, usa un numero negativo.

trova il tempo è la durata tra il numero di fallimenti prima che venga stabilito un divieto. Ad esempio, se Fail2ban è impostato per escludere un IP dopo cinque errori (maxretry, vedere sotto), tali guasti devono verificarsi entro il trova il tempo durata.

/etc/fail2ban/jail.Locale
tempo di ricerca = 10m 

maxretry è il numero di errori prima che un IP venga bannato. Il valore predefinito è impostato su cinque, il che dovrebbe andare bene per la maggior parte degli utenti.

/etc/fail2ban/jail.Locale
maxretry = 5 

Notifiche di posta elettronica #

Fail2ban può inviare avvisi e-mail quando un IP è stato bannato. Per ricevere le email, devi avere un SMTP installato sul tuo server e modificare l'azione predefinita, che vieta solo all'IP di %(action_mw)s, come mostrato di seguito:

/etc/fail2ban/jail.Locale
azione = %(action_mw)s 

%(action_mw)s vieta l'IP offensivo e invia un'e-mail con un rapporto whois. Se desideri includere i log pertinenti nell'e-mail, imposta l'azione su %(action_mwl)s.

Puoi anche modificare gli indirizzi email di invio e ricezione:

/etc/fail2ban/jail.Locale
destemail = [email protected] sender = [email protected] 

Jail Fail2ban #

Fail2ban utilizza il concetto di jail. Un jail descrive un servizio e include filtri e azioni. Le voci del registro che corrispondono al modello di ricerca vengono conteggiate e, quando viene soddisfatta una condizione predefinita, vengono eseguite le azioni corrispondenti.

Fail2ban spedisce con un numero di carcere per diversi servizi. Puoi anche creare le tue configurazioni di jail. Per impostazione predefinita, è abilitata solo la jail ssh.

Per abilitare una jail, devi aggiungere abilitato = vero dopo il titolo di prigione. L'esempio seguente mostra come abilitare il jail postfix:

/etc/fail2ban/jail.Locale
[postfix] abilitato = true port = smtp, filtro ssmtp = postfix logpath = /var/log/mail.log 

Le impostazioni di cui abbiamo discusso nella sezione precedente possono essere impostate per jail. Ecco un esempio:

/etc/fail2ban/jail.Locale
[sshd] abilitato = true maxretry = 3 findtime = 1d bantime = 4w ignoreip = 127.0.0.1/8 11.22.33.44 

I filtri si trovano nel /etc/fail2ban/filter.d directory, memorizzata in un file con lo stesso nome del jail. Se hai una configurazione personalizzata e hai esperienza con le espressioni regolari, puoi mettere a punto i filtri.

Ogni volta che il file di configurazione viene modificato, il servizio Fail2ban deve essere riavviato affinché le modifiche abbiano effetto:

sudo systemctl riavvia fail2ban

Cliente Fail2ban n

Fail2ban viene fornito con uno strumento da riga di comando denominato fail2ban-client che puoi utilizzare per interagire con il servizio Fail2ban.

Per visualizzare tutte le opzioni disponibili, invoca il comando con il -h opzione:

fail2ban-client -h

Questo strumento può essere utilizzato per vietare/rimuovere gli indirizzi IP, modificare le impostazioni, riavviare il servizio e altro. Ecco alcuni esempi:

Conclusione #

Ti abbiamo mostrato come installare e configurare Fail2ban su Debian 10.

Per maggiori informazioni su questo argomento, visita la documentazione di Fail2ban .

Se hai domande, non esitare a lasciare un commento qui sotto.

Come utilizzare GameConqueror Cheat Engine in Linux
L'articolo copre una guida sull'utilizzo del motore cheat GameConqueror in Linux. Molti utenti che giocano su Windows utilizzano spesso l'applicazione...
I migliori emulatori di console di gioco per Linux
Questo articolo elencherà il popolare software di emulazione della console di gioco disponibile per Linux. L'emulazione è un livello di compatibilità ...
Le migliori distribuzioni Linux per il gioco nel 2021
Il sistema operativo Linux ha fatto molta strada dal suo aspetto originale, semplice e basato su server. Questo sistema operativo è notevolmente migli...