informatica:sistemas_operativos:linux:administracion:fail2ban
fail2ban
Fail2ban escanea ficheros de log (por ejemplo /var/log/apache/error_log) y bloquea IPs que muestran comportamientos sospechosos (muchos fallos de contraseña, etc).
Generalmente Fail2Ban se utiliza para actualizar las reglas del firewall para rechazar las direcciones IP por un determinado tiempo. Por defecto, Fail2Ban viene con filtros para varios servicios. Por ejemplo, para ver un resumen de intentos fallidos e IPs bloqueadas por accesos SSH:
fail2ban-client status sshd
Ejemplo de salida:
Status for the jail: sshd |- Filter | |- Currently failed: 5 | |- Total failed: 1431722 | `- File list: /var/log/auth.log `- Actions |- Currently banned: 6 |- Total banned: 11730 `- Banned IP list: 81.68.216.38 49.232.172.163 42.192.75.240 112.16.211.200 42.192.84.251 162.243.99.164
Si queremos quitar de la lista de bloqueos cierta IP:
fail2ban-client set sshd unbanip 123.123.123.123
SSH
Crear configuración local (NO edites jail.conf)
cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local
Editamos /etc/fail2ban/jail.local:
[sshd] enabled = true port = 22222 filter = sshd logpath = /var/log/auth.log backend = systemd maxretry = 3 findtime = 10m bantime = 24h
Qué hace:
- 3 fallos en 10 minutos → ban
- Bloqueo durante 24 horas
- Funciona con journalctl y auth.log
Reiniciar fail2ban:
systemctl restart fail2ban
Ver si ya está bloqueando IPs:
fail2ban-client status fail2ban-client status sshd
Salida típica:
Currently banned: 2 Banned IP list: 45.135.232.92 4.211.84.189
informatica/sistemas_operativos/linux/administracion/fail2ban.txt · Última modificación: por tempwin
