SmythSys IT Consulting

Fail2ban: protege tu servidor de ataques de fuerza bruta

En un artículo hace meses os mencionamos este script de Python, Fail2ban, que se usa como una de las medidas básicas de protección ante ataques de fuerza bruta en muchos servidores. Si gestionas un servidor, deberías instalar este script. Sólo tienes que mirar en el log la cantidad de intentos fallidos a tu servidor que tienes en unas horas sin el script…y que pasa después 😀 Uno se queda más tranquilo, no es infalible, pero si una primera medida de precaución básica.fail2ban

Fail2ban te permite tomar decisiones sobre ciertas IPs basadas en intentos fallidos de acceso. Lo que hace es modificar el firewall bloqueando o penalizando intentos fallidos. Por lo tanto uno de los primeros sitios en los que nosotros lo ponemos es para ssh. Aunque fail2ban ya se ha desarrollado para la mayoría de los servidores (Apache, ssh, vsftp, qmail, postfix….). También para la mayoría de sistemas.

Por ejemplo para instalarlo en ssh sobre un Debian debemos:

  • Instalar fail2ban: apt-get install fail2ban
  • Copiar el fichero de configuración ejemplo: cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local
  • Editarlo con nuestra configuración: nano /etc/fail2ban/jail.local

Los parámetros son bastante sencillos. Hay algunos que definen lo que es un intento fallido (maxretry, bantime, ignoreip) , y luego la acción a tomar (banaction y action). Podemos hasta decir que nos mande un email.
Después tenemos un listado de servicios con su configuración específica. Debemos ir en este caso a [ssh-iptables] y asegurarnos que está activo por ejemplo con:

enabled = true

filter = sshd

action = iptables[name=SSH, port=22, protocol=tcp]

logpath = /var/log/auth.log

maxretry = 5

Después de eso guardamos el fichero, reiniciamos fail2ban y comprobamos si está funcionando:
service fail2ban status

 

Aquí podéis ver ejemplos de fail2ban para Apache, Dovecot y postfix.

Deja un comentario

Resumen de nuestra Política de Privacidad

  • Responsable: SmythSys IT Consulting SLNE.
  • Finalidad: Gestionar y moderar los comentarios.
  • Legitimación: Necesitas dar tu consentimiento para publicar un comentario.
  • Destinatarios: Tus datos se alojan en los servidores de OVH.
  • Derechos: Tienes derecho a acceder, rectificar, limitar y suprimir los datos en la dirección del responsable (en nuestra política de privacidad).