Tutorial: Cómo instalar Fail2ban en un Cloud Server

La seguridad de nuestros servidores es esencial para que estos se mantengan seguros y productivos durante mucho tiempo y sin experimentar caídas. Fundamentalmente, porque hay gente que está todo el tiempo intentando «hackear» nuestro server por el simple hecho de querer y de -tal vez- poder hacerlo.

Uno de los ataques más comunes es intentar conectarse a través de SSH con nuestros servidores, insistiendo una y otra vez. Este ataque típico de fuerza bruta basado en diccionario de contraseñas podemos mitigarlo con una solución llamada Fail2Ban, que permitirá bloquear la conexión de esa «persona» con nuestro servidor si falla el login una determinada cantidad de veces.

¡Así que manos a la obra! Optimicemos la seguridad de nuestro servidor…

Nos conectamos mediante SSH como siempre. En Windows podes usar Putty; si usás linux o Mac podés hacerlo desde la consola o terminal.

ssh linuxadmin@tuservidor

Instalamos ahí Fail2ban de la siguiente manera:

sudo apt-get install fail2ban

Una vez instalado, deberemos configurarlo.  Pero antes de eso hay que copiar el archivo de configuración, ya que si algo sale mal tendremos una copia de seguridad.

cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local

Una vez hecha la copia de seguridad, editaremos el archivo de configuración escribiendo lo siguiente:

nano /etc/fail2ban/jail.conf

Se abrirá un editor de textos y se verá así:

16

Aquí veremos algunas de las cosas que podemos modificar, como por ejemplo:

ignoreip = 127.0.0.1/8

Asegurémonos que esté descomentando (sin el #) en la parte de «ignorar IP» y que estén seleccionadas solo las direcciones IP de confianza, como puede ser la de salida de internet de tu oficina, hogar o la IP de otro servidor desde donde te conectes con nuestro cloud server.

# "bantime" is the number of seconds that a host is banned.
bantime = 600

Esta es otra cosa que podemos modificar: el tiempo a la dirección IP desde la cual intentan acceder a nuestro servidor. Te recomiendo dejarla por default, ya que el tiempo está en segundos, y 600 segundos son 10 minutos.

# A host is banned if it has generated "maxretry" during the last "findtime"
# seconds.
findtime = 600
maxretry = 3

En esta parte se define cuántos serán los intentos antes de que la IP sea banneada. Acá, lo recomendable es dejarlo tal como está o bien modificarlo de acuerdo con tus necesidades.

Si tenés algún comentario o duda, podés registrarte y escribirnos aquí abajo, o bien contactarte con Soporte Técnico desde el área de clientes.

Deja una respuesta