Ir al contenido

Fail2ban

De Wikipedia, la enciclopedia libre
Fail2ban
Información general
Tipo de programa Sistema de prevención de intrusos
Autor Cyril Jaquier
Desarrollador Cyril Jaquier, Arturo 'Buanzo' Busleiman
Lanzamiento inicial 12 de octubre de 2004 (19 años, 9 meses y 6 días)
Licencia GPLv2
Estado actual Estable, en desarrollo
Información técnica
Programado en Python
Versiones
Última versión estable 1.0.2 (info)( 9 de noviembre de 2022 (1 año, 8 meses y 9 días))
Enlaces

Fail2banes una aplicación escrita enPythonpara laprevención de intrusosen un sistema, que actúa penalizando o bloqueando las conexiones remotas que intentan accesos por fuerza bruta. Se distribuye bajo licenciaGNUy típicamente funciona en sistemasPOSIXque tengan interfaz con un sistema de control de paquetes o unfirewalllocal (comoiptablesoTCP Wrapper).[1]

Funcionamiento

[editar]

Habitualmente las computadoras sufrenataques de fuerza bruta(especialmente servidoresSSH,FTP,etc) con el fin de descifrar las contraseñas y acceder a ellas. En este punto es indispensable una buena política de contraseñas. Sin embargo, los ataques por fuerza bruta también consumen un gran ancho de banda, disparan el volumen de losarchivos de registro(logs) de nuestro sistema y ocupan ciclos de CPU que podrían dedicarse a tareas útiles.

Fail2ban busca en los registros (logs) de los programas que se especifiquen las reglas que el usuario decida para poder aplicar una penalización. La penalización puede ser bloquear la aplicación que ha fallado en un determinado puerto, bloquearla para todos los puertos, etc. Las penalizaciones, así como las reglas, son definidas por el usuario.[2]

Habitualmente, si las IP de ataque se prohíben por un lapso prudencial de tiempo, la sobrecarga de red provocada por los ataques baja, y también se reduce la probabilidad de que un ataque de fuerza bruta basada en diccionarios tenga éxito.

Ante una cantidad predefinida (por el usuario) de intentos fallidos, fail2ban determina la acción a tomar sobre la IP que originó el problema. Puede simplemente notificar por correo electrónico del suceso, denegar el acceso a la IP atacante, bloquearla en determinado puerto y habilitarla en otros (modificando las entradas correspondientes en iptables, o el firewall local que corresponda), etc. Puede asimismo levantar las prohibiciones después de un determinado periodo, por si el problema no obedeciera a un ataque sino simplemente a errores del usuario intentando loguearse. Las acciones son configurables medianteguionesde Python.

Soporte actual

[editar]

Actualmente fail2ban establece filtros paraApache,sshd,qmail,vsftpd,lighttpd,PostfixyCourier Mail Server.Los filtros son escritos conexpresiones regularesdePythonque establecen la regla que hará disparar una determinada acción sobre laIPque origina el hecho. La tupla (regla, acción) o (filtro, acción) es llamado “Jail” o “prisión”, y es lo que determina la penalización a un host maligno.

Referencias

[editar]

Véase también

[editar]

Enlaces externos

[editar]