Bloqueo de Bots webs de manera efectiva con Core-Admin


#1

1. Introducción

El presente artículo muestra cómo localizar y bloquear por IP el conjunto de bots recomendados y que no forman parte de los bots con mayor presencia y que pueden aportar mayor valor añadido al proceso de visibilización de la web.

Junto con las opciones recomendadas, se proporcionan indicaciones de cómo realizar estos bloqueos seleccionando los bots que queramos bloquear.

2. El problema de los bots en la web

El bot no es más que software automatizado, montado en distintas máquinas que simulan y realizan accesos a nuestra web para obtener información, métricas, disponibilidad, etc, así como formar parte del cultivo de base de datos que generan y usan los grandes buscadores.

Sin embargo, lo que en principio es una buena idea, en los últimos tiempos han aparecido decenas de centenares de bots con poca presencia y poco valor añadido para el cliente, pero que sin embargo realizan accesos por igual.

A este contexto se le une que existe poca coordinación entre ellos, y muchas veces entre bots de la misma organización, causando dos problemas:

  • Picos de tráfico y carga repentinos: juntándose varias visitas de estos bots, de distintas compañías, al mismo tiempo, sobre distintas webs sobre la misma máquina.

  • Exceso de carga sin valor añadido: en muchas ocasiones se está encontrando que el tráfico de una web puede llegar hasta el 60% causado por bots.

Estos dos factores hacen que sea un problema disponer de infraestructura que realmente debe de estar dedicada al objetivo principal de la web (la promoción, la venta, la gestión de procesos), y que la misma se ve abusada y degradada (sin consentimiento) por estos sistemas automatizados.

3. ¿Que hay del robots.txt?

En esencia, no funciona. Los motivos son:

  • Muchos bots ignoran las declaraciones robots.txt
  • Lleva mucho mantenimiento revisar y etiquetar correctamente lo que autorizas, para cada una de las webs.
  • La declaración robots.txt no impide seguir recibiendo accesos, incluso cuando esté bien configurado.

4. Cómo bloquear bots con Core-Admin

Core-Admin toma una aproximación distinta, a nivel de sistema, permitiendo al usuario:

  1. Rastrear e identificar todos los bots accediendo a todas las webs:

      >> crad-ip-blocker.pyc --find-web-bots --filter-ips-blocked
    
  2. Permite realizar un bloqueo de bots recomendados usando la opción que propone la misma herramienta:

    >> crad-ip-blocker.pyc --block-web-bots="Bot1, Bot2, Bot3"
    
  3. También permite realizar una búsqueda y bloqueo recomendada sin tener que entrar en el detalle de la configuración:

    >> card-ip-blocker.pyc --block-bots-recommended
    

A continuación explicamos el detalle de cada una de ellas.

5. Opción de búsqueda de bots

Esta opción permite realizar una búsqueda de todos los bots accediendo en el día de hoy a todas las webs localizadas en el servidor:

>> crad-ip-blocker.pyc  --find-web-bots --filter-ips-blocked
INFO: inspecting logs..please wait..
INFO: processing 9938 lines with bot access
INFO: consolidating data..
Bot                   Access_count  Ips_count
---                   ------------  ---------
Googlebot            |2642         |103      
Applebot             |229          |34       
Googlebot-Image      |177          |43       
PetalBot             |56           |52       
AdsBot-Google-Mobile |49           |3        
YandexBot            |2            |2        
bingbot              |2            |1        
Buck                 |1            |1        

INFO: Recommended blocking command: /usr/sbin/crad-ip-blocker.pyc --block-web-bots="PetalBot,YandexBot,bingbot,Buck" --filter-ips-blocked
 

Como se puede ver, la herramienta localiza y muestra en una tabla los bots localizados, junto con sus accesos y las ips. También muestra comando recomendado listo para ejecutar para bloquear bots dentro de la lista segura. Dicha lista también puede ser actualizada según necesidades del administrador.

La opción –filter-ips-blocked ayuda a eliminar del resultado todo lo que haya sido bloqueado previamente.

6. Bloqueo selectivo y bloqueo recomendado

Con la opción de búsqueda anterior, junto con la información estadística, obtiene un comando listo para ejecutar.

Si no desea ejecutar dos pasos y se siente cómodo con la decisión que le ofrece la herramienta, puede automatizar el proceso en un único paso (localizar bots y a continuación bloquear recomendados):

>> crad-ip-blocker.pyc --block-bots-recommended

7. Cómo funciona la herramienta y diferencias

La principal diferencia que proporciona la herramienta con respecto a otras soluciones es:

  1. Que el bloqueo se produce a nivel de sistema por IP. Esto asegura que el bot no podrá realizar ninguna sobrecarga del servidor.

  2. Toda las ips bloqueadas se pueden consultar y gestionar en la herramienta estándar de gestión de ips bloqueadas de Core-Admin:

    Cómo comprobar si tengo una IP bloqueada con mi panel Core-Admin

8. Cómo puedo evitar que se bloqueen ciertos rangos que si deseo

En el caso de que necesite autorizar ciertos rangos, ips concretas, y no quiera configurar manualmente el listado de bots, siempre puede introducir reglas de whitelist en la misma herramienta de gestión de Ips bloqueadas.