Fail2ban es una herramienta de seguridad ampliamente utilizada en servidores Linux/Unix que ayuda a prevenir ataques de fuerza bruta y otros intentos maliciosos bloqueando direcciones IP sospechosas. En este artículo, exploraremos cómo comprobar el estado de las IPs, banearlas, desbanearlas y utilizar otras opciones útiles que ofrece Fail2ban.
1. Comprobación del Estado de Fail2ban
Antes de realizar cualquier acción sobre las IPs, es importante comprobar que Fail2ban esté en funcionamiento y obtener información sobre las jails activas. Puedes hacerlo con los siguientes comandos:
Comprobar el Estado General de Fail2ban
sudo fail2ban-client status
Este comando te proporcionará un resumen del estado de Fail2ban, incluyendo el número de jails habilitadas y la cantidad de IPs actualmente baneadas.
Comprobar el Estado de una Jail Específica
Para obtener más detalles sobre una jail en particular, como sshd
(la jail para proteger el servicio SSH), utiliza:
sudo fail2ban-client status sshd
Esto mostrará información como la cantidad de IPs baneadas, la lista de IPs baneadas y el tiempo restante de baneo (si aplica).
2. Banear una IP
Si identificas una IP que deseas banear manualmente, puedes hacerlo utilizando el siguiente comando:
sudo fail2ban-client ban <IP>
Reemplaza <IP>
con la dirección IP que deseas bloquear. Por ejemplo, para banear la IP 192.168.1.100
, usarías:
sudo fail2ban-client ban 192.168.1.100
Una vez ejecutado el comando, Fail2ban agregará la IP a la lista de baneadas y aplicará las reglas de bloqueo definidas en la configuración de la jail correspondiente.
3. Desbanear una IP
Si necesitas desbanear una IP previamente bloqueada, puedes utilizar el siguiente comando:
sudo fail2ban-client unban <IP>
Por ejemplo, para desbanear la IP 192.168.1.100
, el comando sería:
sudo fail2ban-client unban 192.168.1.100
Fail2ban eliminará la IP de la lista de baneadas, permitiéndole acceder nuevamente al servicio.
4. Ver la Lista de IPs Baneadas
Para ver la lista de todas las IPs baneadas en una jail específica, utiliza el comando:
sudo fail2ban-client status <jail_name>
Por ejemplo, para ver las IPs baneadas en la jail sshd
:
sudo fail2ban-client status sshd
Esto te mostrará un listado de las IPs actualmente baneadas, junto con el número de intentos fallidos que llevaron al baneo.
5. Otras Opciones Útiles
Ver Logs de Fail2ban
Para verificar los logs de Fail2ban y entender por qué se han banneado ciertas IPs, puedes consultar el archivo de registro:
cat /var/log/fail2ban.log
Reiniciar Fail2ban
Si realizas cambios en la configuración de Fail2ban, es recomendable reiniciar el servicio para que se apliquen los cambios:
sudo systemctl restart fail2ban
Configurar Fail2ban para Banear Basado en el Tiempo
Puedes ajustar las configuraciones de baneo, como el tiempo que una IP permanecerá bloqueada, directamente en el archivo de configuración de la jail. Por ejemplo:
bantime = 3600 # Bloquear por 1 hora.
Ignorar IPs
Si hay direcciones IP que deseas excluir del baneo, puedes agregarlas a la lista de ignoreip
en tu archivo de configuración jail.local
:
ignoreip = 127.0.0.1/8 192.168.1.1
Esto es útil para evitar bloquear IPs de confianza, como las de tu red interna.
Conclusión
Fail2ban es una herramienta poderosa para proteger tus servidores de accesos no autorizados y ataques de fuerza bruta. A través de comandos simples, puedes gestionar fácilmente las direcciones IP, asegurando que tu servidor permanezca seguro. La capacidad de banear y desbanear IPs de forma rápida te proporciona un control efectivo sobre la seguridad de tus servicios. Recuerda siempre monitorear y revisar los logs para mantener una vigilancia activa sobre cualquier actividad sospechosa.