Hola amigos. En este post te ayudaremos a instalar Fail2ban en Debian 11. Gracias a esta herramienta podrás prevenir muchos ataques a tu servidor. Como todas las herramientas, no es perfecta pero al menos añade más seguridad al servidor para que podamos estar un poco más relajados.
¿Qué es Fail2ban?
Fail2ban es una herramienta de Linux que ayuda a prevenir ataques SSH en su sistema. Esto no solo es muy importante, sino que también nos ayuda a verificar las condiciones para la conexión SSH al servidor.
Fail2Ban puede reducir la tasa de intentos de autenticación incorrectos; sin embargo, no puede eliminar el riesgo que presenta la autenticación débil. Configure los servicios para usar solo mecanismos de autenticación pública/privada o de dos factores si realmente desea proteger los servicios.
Esto nos dice que Fail2ban no hace milagros. La seguridad siempre dependerá de nosotros y de la seriedad con la que la tomemos para nuestro sistema.
Entonces, ¿cómo funciona Fail2ban?
Fail2ban analiza los archivos de registro (p. ej., /var/log/apache/error_log) y bloquea las IP que muestran signos maliciosos:demasiadas fallas de contraseña, búsqueda de exploits, etc.
Fuera de la caja, Fail2Ban viene con filtros para varios servicios (apache, courier, ssh, etc).
Entonces, vamos a instalarlo.
Instalar Fail2ban en Debian 11
Al tratarse de una utilidad tan importante y con un excelente tratamiento Linux, la podremos encontrar en los repositorios oficiales de Debian 11.
Entonces, antes de instalarlo, debe actualizar el servidor por completo.
sudo apt update sudo apt upgrade
Luego tienes que ejecutar el siguiente comando para instalarlo.
sudo apt install fail2ban Reading package lists... Done Building dependency tree... Done Reading state information... Done Suggested packages: mailx monit sqlite3 Recommended packages: whois python3-pyinotify python3-systemd The following NEW packages will be installed: fail2ban 0 upgraded, 1 newly installed, 0 to remove and 0 not upgraded. Need to get 451 kB of archives. After this operation, 2,142 kB of additional disk space will be used.
De esta manera, Fail2ban estará en el sistema. La forma de administrarlo es como un servicio del sistema. Algo similar a como se gestiona Apache o MariaDB.
Entonces, para iniciarlo, debes ejecutar
sudo systemctl start fail2ban
Además, asegúrese de habilitarlo para iniciar con el sistema.
sudo systemctl enable fail2ban
Y finalmente, verifique el estado del servicio para asegurarse de que se está ejecutando correctamente.
sudo systemctl status fail2ban
Si obtiene un resultado similar a este, entonces Fail2ban está correctamente instalado y el servicio funciona correctamente.
Ahora es el momento de hacer algunas configuraciones.
Configurar Fail2ban en Debian 11
La configuración reside principalmente en el /etc/fail2ban/jail.conf
archivo del que podemos hacer una copia de seguridad antes de modificarlo.
sudo cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.conf.bak
Después de esto, podemos editarlo para configurar nuestras preferencias para el comportamiento de la herramienta.
sudo nano /etc/fail2ban/jail.conf
Ahora examinemos algunas de las directivas principales.
Lo primero será determinar el tiempo de ban del presunto atacante. Para ello busque bantime
y dale un valor adecuado como dos horas.
bantime = 120m
Para evitar ataques repetidos, puede configurar un findtime
.
findtime = 5m
Es decir, si el atacante repite el ataque en menos de 5 minutos está baneado, de lo contrario el contador comenzará de nuevo.
El Max Retry
La directiva establece el número de fallas antes de que se prohíba la IP.
Si tiene una red o un host de confianza, puede hacer que Fail2ban los ignore con ignoreip
directiva.
ignoreip = 192.168.1.2
En este caso, la dirección IP anterior será ignorada por todas estas reglas.
Si continúa desplazándose hacia abajo, verá la configuración de cada servicio que tiene Fail2ban. Por ejemplo SSH
o Apache
.
Al final, puede guardar los datos y aplicar estos cambios, simplemente reinicie el servicio.
sudo systemctl restart fail2ban
Si desea habilitar los módulos Fail2ban, debe editar el /etc/fail2ban/jail.d/defaults-debian.conf
archivo.
sudo nano /etc/fail2ban/jail.d/defaults-debian.conf
Por ejemplo, para habilitar SSH
, podrías
[sshd] enabled = true
Guarde los cambios y cierre el editor.
Con esto, ahora puedes dejar a Fail2ban listo para la batalla.
Conclusión
La seguridad no se puede tomar a la ligera y aunque no siempre funciona bien, podemos tener herramientas que nos ayuden con el proceso y Fail2ban es una de ellas.