Cómo instalar Fail2Ban para proteger tu VPS (2ª parte)

Publicado el en la categoría General, Linux, Seguridad, VPS

lockEn el anterior post vimos cómo instalar Fail2Ban en un VPS con CentOS, y en esta segunda y última entrega vamos a ver cómo configurar los parámetros mas básicos y algunos filtros útiles.

Recien instalado, Fail2Ban viene con una configuración por defecto que está en /etc/fail2ban/jail.conf, pero es muy recomendable hacer una copia local y hacer nuestra configuración en ella:

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

Una vez hecha la copia local, debemos configurar los parámetros básicos.

vi /etc/fail2ban/jail.local

El fichero puede editarse también por sFTP si no estás familiarizado con vi.

La primera sección es la de [DEFAULT], que tiene los siguentes parámetros básicos:

  • ignoreip: Aquí podemos listar separadas por un espacio las IPs que fail2ban debe ignorar, es decir, una lista blanca. Si dispones de IP fija sería una buena idea ponerla.
  • bantime: Tiempo en segundos que banea la IP que se salte alguna de las normas.
  • maxretry: Intentos máximos antes de banear una IP.
  • findtime: Por defecto está en 10 minutos, si un usuario intenta conectarse más veces de el valor maxretry en menos de 10 minutos, se le baneará.

Cuando ya estén configurados los parámetros básicos, se puede continuar viendo los diferentes servicios que pueden ser protegidos por Fail2Ban y se puede activar o personalizar cualquiera de ellos. Por ejemplo el servicio de protección para SSH viene activo por defecto:

[ssh-iptables]

enabled  = true
filter   = sshd
action   = iptables[name=SSH, port=ssh, protocol=tcp]
           sendmail-whois[name=SSH, dest=you@example.com, sender=fail2ban@example.com, sendername="Fail2Ban"]
logpath  = /var/log/secure
maxretry = 5

En este caso deberíamos configurar los parámetros “dest” y “sender” para que cuando salte esta norma, nos envíe un correo de aviso a la dirección que le indiquemos.

Cuando el archivo de configuración esté a nuestro gusto, guardamos y siempre debemos reiniciar Fail2Ban para que los cambios tengan efecto.

sudo service fail2ban restart

Fail2Ban viene por defecto con muchos servicios preconfigurados que sólo debemos activar en el fichero de configuración para empezar a protegerlos. Por ejemplo algunos que consideramos útiles pueden ser:

  • apache-badbots: banea bots conocidos que se dedican a escanear la web en busca de emails a los que enviar spam.
  • php-url-fopen: banea usuarios que intenten explotar esta función a traves de peticiones GET/POST
  • horde: si usas este webmail, puedes protegerlo
  • apache-modsecurity: banea IPs que se salten normas de ModSecurity (si está habilitado)

Puedes obtener más información y ver la documentación en la web oficial de Fail2Ban.

Primera parte: cómo instalar Fail2Ban

Facebooktwittergoogle_plus