Volver a herramientas
Parámetros de configuración
- enabled: Activa o desactiva el jail
- port: Puertos a proteger (separados por coma)
- protocol: Protocolo (tcp, udp, any)
- filter: Filtro de Fail2Ban a utilizar
- logpath: Ruta al archivo de log a monitorear
- maxretry: Número de intentos fallidos antes de banear
- findtime: Ventana de tiempo para contar intentos (segundos)
- bantime: Tiempo de baneo inicial (segundos)
- bantime.increment: Aumenta el tiempo de baneo progresivamente
- ignoreip: IPs que nunca serán baneadas
Ejemplo de jail.local
[sshd]
enabled = true
port = ssh
filter = sshd
logpath = /var/log/auth.log
maxretry = 5
findtime = 600
bantime = 3600
Preguntas frecuentes
¿Cómo instalar y configurar Fail2Ban para proteger SSH en Linux?
Instala Fail2Ban con `apt install fail2ban` (Debian/Ubuntu) o `yum install fail2ban` (CentOS/RHEL). La configuración principal está en `/etc/fail2ban/jail.conf`, pero no debe editarse directamente. Crea `/etc/fail2ban/jail.local` con `[sshd] enabled = true port = ssh logpath = %(sshd_log)s maxretry = 5 bantime = 3600 findtime = 600`. `maxretry` permite 5 intentos antes del bloqueo, `bantime` es la duración del baneo en segundos (3600 = 1 hora). Reinicia: `systemctl restart fail2ban`.
¿Qué valores de bantime, maxretry y findtime recomienda Fail2Ban?
Los valores recomendados para Fail2Ban dependen del servicio y riesgo. Para SSH: `maxretry = 5` (intentos fallidos antes de banear), `findtime = 600` (ventana de tiempo en segundos, 10 minutos), `bantime = 3600` (duración del baneo, 1 hora). Para servicios expuestos a Internet usa `maxretry = 3`, `bantime = 86400` (24h). Fail2Ban soporta `bantime.increment = true` que duplica el tiempo de baneo en cada reincidencia.
¿Cómo configurar Fail2Ban para proteger Nginx contra ataques de fuerza bruta?
Fail2Ban incluye jails predefinidos para Nginx. Actívalos en `jail.local`: `[nginx-http-auth] enabled = true port = http,https filter = nginx-http-auth logpath = /var/log/nginx/error.log maxretry = 5 bantime = 3600`. Para proteger contra bots maliciosos: `[nginx-badbots] enabled = true`. Para limitar requests: `[nginx-limit-req] enabled = true`. Cada jail usa filtros específicos en `/etc/fail2ban/filter.d/`. Puedes crear filtros personalizados para tu aplicación.
¿Cómo configurar Fail2Ban para proteger Postfix y Dovecot en servidores de correo?
En `/etc/fail2ban/jail.local` añade: `[postfix] enabled = true port = smtp,submission logpath = /var/log/mail.log maxretry = 3 bantime = 86400` y `[dovecot] enabled = true port = imap,imaps,pop3,pop3s logpath = /var/log/mail.log maxretry = 3 bantime = 86400`. Los filtros detectan autenticaciones fallidas en SMTP (AUTH LOGIN/PLAIN) y protocolos IMAP/POP3. Monitorea con `fail2ban-client status postfix` y `fail2ban-client status dovecot`.
Herramientas relacionadas
JWT Brute Force
Prueba secretos HMAC contra un token JWT usando una wordlist.
Generador de Contraseñas
Genera contraseñas seguras aleatorias
Generador Ed25519
Genera llaves Ed25519, firma y verifica mensajes con la curva Curve25519 usando Web Crypto API nativa.
Decodificador de JWT
Decodifica y analiza tokens JWT localmente