fail2ban —
Durante un controllo di routine su una macchina che è su internet ho trovato un auth.log da 689 MB cosa che mi ha subito messo in allarme ovviamente, analizzando il log ho trovato una quantità esagerata di righe di questo tipo
Jun 18 11:00:57 aliseo sshd[5657]: Failed password for root from 95.58.255.xxx port 38980 ssh2 Jun 18 23:08:26 aliseo sshd[5768]: Failed password for root from 91.205.189.xx port 38156 ssh2 Jun 18 23:08:30 aliseo sshd[5770]: Failed password for nobody from 91.205.189.xx port 38556 ssh2 OK... stanno cercando di sfondare la macchina, per il momento non posso mettere l'autenticazione con certificati su SSH ma non posso neanche lasciare tutto così fidandomi della robustezza della password quel che mi serve è fail2ban. Fail2ban è un software per la prevenzione alle intrusioni scritto nel linguaggio di programmazione Python. È in grado di girare su sistemi POSIX che hanno un interfaccia ad un sistema di pacchetti di controllo o firewall installato localmente (per esempio, iptables o TCP Wrapper). La funzione principale di Fail2ban è quella di bloccare gli indirizzi IP selezionati che possono appartenere a host che sta tentando di violare la sicurezza del sistema. Determina i server che devono essere bloccati da un controllo dei file di log (per esempio /var/log/auth.log, ecc) e proibisce l’accesso ad ogni host IP che ha troppi tentativi di accesso o esegue altre azioni indesiderate in un arco di tempo definito da SysAdmin. Il file che ci interessa è /etc/fail2ban/jail.conf, in questo file andiamo ad inserire gli indirizzi da non controllare e attiviamo i servizi da monitorare. Dopo aver installato il software con apt-get install in /etc/fail2ban modifico il file jail.conf in modo che appaia in questo modo [ssh] enabled = true port = ssh filter = sshd logpath = /var/log/auth.log maxretry = 6 lasciando il default come si trova. root@aliseo:/etc/fail2ban# /etc/init.d/fail2ban restart [ ok ] Restarting authentication failure monitor: fail2ban. root@aliseo:/etc/fail2ban# Con un iptables -L troveremo una cosa di questo tipo
# iptables -L Chain fail2ban-ssh (1 references) target prot opt source destination DROP all --91.205.189.xx anywhere questo significa che per 10 minuti l'IP e' in ban e quando la regola scadrà dopo 6 tentativi sarà di nuovo messo in condizione di non nuocere. Fail2ban funziona su diverse porte ma ATTENZIONE se un IP viene bloccato sulla porta SSH può tranquillamente continuare l'attacco su altre porte come la web o la FTP. N.B. Se nella sezione [DEFAULT] alla voce bantime si mette il valore -1 il ban sarà permanente
Categorised as: IDS | Linux | Networking | Work
Comments are disabled on this post