Fail2Ban es una herramienta esencial para proteger tu servidor de accesos no deseados, ataques de fuerza bruta y otras amenazas. En esta guía avanzada, exploraremos varios comandos y cómo personalizarlos para mejorar la seguridad de tu sistema.
1. Ver el Estado General de Fail2Ban
Este comando te permite ver el estado de Fail2Ban, incluyendo el número de jails activos y su estado:
sudo fail2ban-client status
2. Ver el Estado de un Jail Específico
Cada servicio protegido por Fail2Ban se configura dentro de un «jail». Para ver el estado de un jail, usa el siguiente comando (reemplaza «nombre_del_jail» por el jail que deseas consultar, como «sshd»):
sudo fail2ban-client status nombre_del_jail
3. Ver las IPs Bloqueadas en un Jail
Si deseas ver las IPs que han sido bloqueadas en un jail específico, usa:
sudo fail2ban-client status nombre_del_jail | grep "Banned IP list"
Ejemplo para SSH:
sudo fail2ban-client status sshd | grep "Banned IP list"
4. Liberar una IP de un Jail
Si una IP ha sido bloqueada por error y deseas desbloquearla, ejecuta:
sudo fail2ban-client set nombre_del_jail unbanip IP_a_liberar
Ejemplo:
sudo fail2ban-client set sshd unbanip 192.168.0.10
5. Ver el Log de Fail2Ban
Para ver en tiempo real los eventos registrados por Fail2Ban:
sudo tail -f /var/log/fail2ban.log
6. Reiniciar un Jail
Si necesitas reiniciar un jail después de cambiar su configuración:
sudo fail2ban-client restart nombre_del_jail
Ejemplo:
sudo fail2ban-client restart sshd
7. Ver los Filtros Activos
Para ver los filtros activos en Fail2Ban:
sudo fail2ban-client -d
8. Ver la Lista de Jails Disponibles
Si no recuerdas los nombres de los jails activos en tu sistema, ejecuta:
sudo fail2ban-client status
9. Agregar o Quitar IPs Manualmente
Para bloquear una IP manualmente:
sudo fail2ban-client set nombre_del_jail banip IP_a_bloquear
Ejemplo:
sudo fail2ban-client set sshd banip 203.0.113.15
Para desbloquear una IP:
sudo fail2ban-client set nombre_del_jail unbanip IP_a_liberar
Ejemplo:
sudo fail2ban-client set sshd unbanip 203.0.113.15
10. Configurar Fail2Ban para Escuchar Puertos Personalizados
Si necesitas proteger un servicio en un puerto diferente, edita la configuración en jail.local
:
- Abre el archivo de configuración:
sudo nano /etc/fail2ban/jail.local
- Agrega una configuración personalizada para el servicio en cuestión:
[mi_servicio]
enabled = true
port = 12345
filter = mi_servicio
logpath = /var/log/mi_servicio.log
maxretry = 3
bantime = 3600
- Guarda los cambios y reinicia Fail2Ban:
sudo systemctl restart fail2ban
Conclusión
Fail2Ban es una herramienta poderosa para bloquear intentos de acceso no autorizado. Con estos comandos avanzados y personalizaciones, puedes fortalecer la seguridad de tu servidor y adaptarlo a tus necesidades específicas.
Si tienes dudas o necesitas más detalles sobre algún comando, no dudes en preguntar.