1 508
contributi
Nessun oggetto della modifica |
Nessun oggetto della modifica |
||
Riga 3: | Riga 3: | ||
'''Fail2ban''' ([http://www.fail2ban.org Sito ufficiale]) è un software che è nato per permettere di bloccare gli host che stanno tentando di effettuare un attacco di [[brute force]] via [[ssh]]. | '''Fail2ban''' ([http://www.fail2ban.org Sito ufficiale]) è un software che è nato per permettere di bloccare gli host che stanno tentando di effettuare un attacco di [[brute force]] via [[ssh]]. | ||
Questo genere di attacco si basa su continui tentativi di accesso, provando o l'username [[root]] con password probabili (come ''password'', ''root'', ''toor'' e così via | Questo genere di attacco si basa su continui tentativi di accesso, provando o l'username [[root]] con password probabili (come ''password'', ''root'', ''toor'' e così via) oppure tramite coppie di username/password conosciute (create, ad esempio, da [[malware]] o da [[rootkit]]). | ||
Con le ultime versioni, però, si è ampliato ed è in grado di coprire svariati servizi (che andranno, però, configurati manualmente), come ad esempio apache, vsftpd, postfix, etc | Con le ultime versioni, però, si è ampliato ed è in grado di coprire svariati servizi (che andranno, però, configurati manualmente), come ad esempio apache, vsftpd, postfix, etc. | ||
= Il funzionamento = | = Il funzionamento = | ||
Riga 23: | Riga 23: | ||
= Configurazione = | = Configurazione = | ||
Fail2ban è già configurato e pronto all'uso, ma alcuni punti hanno bisogno di piccole modifiche. I | Fail2ban è già configurato e pronto all'uso, ma alcuni punti hanno bisogno di piccole modifiche. I file di configurazione sono <tt>/etc/fail2ban/fail2ban.conf</tt> e <tt>/etc/fail2ban/jail.local</tt>: il primo contiene i parametri di configurazione globali (ad esempio potrete specificare in quale file di log verranno registrati gli avvisi di fail2ban), mentre il secondo contiene i parametri necessari al funzionamento del software. | ||
Il file di configurazione <tt>/etc/fail2ban/jail.local</tt> è diviso per sezioni | Il file di configurazione <tt>/etc/fail2ban/jail.local</tt> è diviso per sezioni; ogni sezione inizia ha una struttura simile a: | ||
<pre> | <pre> | ||
[nomesezione] | [nomesezione] | ||
Riga 38: | Riga 38: | ||
I parametri più importanti sono: | I parametri più importanti sono: | ||
; <tt>ignoreip = 127.0.0.1</tt> : permette di indicare un elenco di ip su cui non verrà fatto il controllo. Utile per non ''tagliare fuori'' accidentalmente l'ufficio. Esempio: 192.168.1.0/24 consente l'accesso a tutta la lan 192.168.1.XXX | ; <tt>ignoreip = 127.0.0.1</tt> : permette di indicare un elenco di ip su cui non verrà fatto il controllo. Utile per non ''tagliare fuori'' accidentalmente l'ufficio. Esempio: 192.168.1.0/24 consente l'accesso a tutta la lan 192.168.1.XXX; | ||
; <tt>bantime = 600</tt> : il tempo, in secondi, per cui un host verrà bannato | ; <tt>bantime = 600</tt> : il tempo, in secondi, per cui un host verrà bannato; | ||
; <tt>maxretry = 3</tt> : il numero massimo di tentativi dopo cui effettuare il ban dell'host | ; <tt>maxretry = 3</tt> : il numero massimo di tentativi dopo cui effettuare il ban dell'host; | ||
; <tt>destemail = root@localhost</tt> : l'indirizzo e-mail a cui inviare la mail di notifica | ; <tt>destemail = root@localhost</tt> : l'indirizzo e-mail a cui inviare la mail di notifica; | ||
; <tt>action = iptables[name=%(__name__)s, port=%(port)s]</tt> : l'azione da prendere. Quella di default blocca semplicemente l'accesso alla porta del servizio all'ip che ha sforato il numero di tentativi massimo | ; <tt>action = iptables[name=%(__name__)s, port=%(port)s]</tt> : l'azione da prendere. Quella di default blocca semplicemente l'accesso alla porta del servizio all'ip che ha sforato il numero di tentativi massimo; | ||
; <tt>enabled = true</tt> : abilita i controlli all'interno della sezione | ; <tt>enabled = true</tt> : abilita i controlli all'interno della sezione; | ||
; <tt>port = ssh</tt> : indica la porta da bloccare | ; <tt>port = ssh</tt> : indica la porta da bloccare; | ||
; <tt>filter = sshd</tt> : indica il filtro da utilizzare (contenuto all'interno della directory <tt>/etc/fail2ban/filter.d</tt> ) | ; <tt>filter = sshd</tt> : indica il filtro da utilizzare (contenuto all'interno della directory <tt>/etc/fail2ban/filter.d</tt> ); | ||
; <tt>logpath = /var/log/auth.log</tt> : il file contenente il log da controllare | ; <tt>logpath = /var/log/auth.log</tt> : il file contenente il log da controllare; | ||
= Esempi di Azioni = | = Esempi di Azioni = |
contributi