¡SOCORRO! Bots Consumen Todo el Ancho de Banda / Solución: Código Anti-Bots para PrestaShop & Otros CMS (para ponerlo en el .htaccess)

bandwidth limit exceeded bots attack

Durante estos últimos días del mes estamos viendo muchos casos en que los bots están decididos a aguar la fiesta a propietarios de algunos websites, pero sobre todo a tiendas online construidas con PrestaShop, donde la seguridad para frenar a estos robots brilla por su ausencia.

Pongámonos en situación: un cliente nos llama extrañado indicando que está apunto de alcanzar el limite en lo que a consumo de ancho de banda se refiere para su plan de Hosting, cuando realmente no tiene tanto tráfico o ventas en su tienda online.

Entonces, ¿Dónde está el problema de ese consumo de ancho de banda tan elevado? La respuesta en muchas ocasiones no podía ser otra que en los bots o crawlers que no paran de visitar nuestra web, así como de hacer peticiones simultaneas, lo que se convierten en un montón de accesos para procesar por parte del servidor y, al final, todas estas peticiones acaban consumiendo todo el ancho de banda.

Si se accede a la web se puede apreciar un bonito “Bandwidth Limit Exceeded”, haciendo que la tienda no funcione. Aunque no siempre es por un problema de bots, a veces también puede deberse a tener almacenadas imágenes muy grandes -sin comprimir- o directamente vídeos (cuando es mejor subir estos vídeos a plataformas externas como YouTube para que consuman allí el ancho de banda).

Postura de Hostinet sobre el Exceso del Ancho de Banda

Consumir todo el ancho de banda de un plan no suele ser habitual porque se lleva a cabo un reseteo mensual, es decir, a principios de cada mes el sistema resetea los consumos; si disponemos de una web que ha consumido 100GB en un mes, el 1 del mes siguiente el contador de ese consumo volverá a empezar de cero.

Si se da el caso y falta poco para que finalice el mes, no tenemos de qué preocuparnos, ya que podemos contactar con el departamento de soporte de Hostinet para que nos aumente ligeramente el ancho de banda de nuestro plan y con ello restableceremos los servicios, sin embargo, si han pasado pocos días del mes tendremos que cambiar de plan a uno que disponga de más ancho de banda o tratar de solución el problema (cosa que debería ser lo principal).

Cómo Proceder para Solucionar el Problema

Indiferentemente de que el problema lo provoquen bots, crawlers, imágenes grandes -sin comprimir- o vídeos, tendemos que acceder al mismo sitio para poder revisar que es lo que provoca.

Esta información se nos dará en la sección de métrica de cPanel, mediante la herramienta Webalizer.

cpanel metrica webalizer

A día de hoy, nuestra web tiene que ser con SSL o de lo contrario mal vamos, así pues debemos pulsar sobre “Ver” en la fila de acciones que corresponde a nuestra web con SSL (HTTPS). Si pinchamos sobre la otra opción sería para ver las estadísticas de nuestra web sin SSL (sin HTTPS) y poca cosa abría para revisar allí.

cpanel metrica webalizer ver

A continuación, seleccionamos el mes para ver sus estadísticas. Por ejemplo Abr 2021.

cpanel metrica webalizer ver abr21

Y aquí dentro es donde podremos ir revisando todo; podremos ver si se repiten varias imágenes simultaneas varias veces o un vídeo o accesos de un bot. Todo esto se ve bastante rápido mirando las distintas métricas que ofrece el sistema.

Para el caso que se nos presenta hoy con los bots acechando nuestro PrestaShop se ve clarísimo en la tabla de Los 10 primeros de un total de xxxx clientes Por Kbytes. El msnbot lo copo todo con más de 1 millón de accesos. De hecho, el primer resultado ya aporta 342.029 accesos por parte de dicho bot, casi nada…

msnbot accesos

¿Solución?

Por suerte, la solución es bastante sencilla, ya que podemos poner un código Anti-Bots para PrestaShop & Otros CMS dentro del archivo .htaccess

El código a poner sería el siguiente (se debe poner al principio):

RewriteEngine on
SetEnvIfNoCase User-Agent «MSNbot» bad_user
SetEnvIfNoCase User-Agent «SemrushBot» bad_user
SetEnvIfNoCase User-Agent «semrush» bad_user
SetEnvIfNoCase User-Agent .*mj12bot.com.* bad_user
SetEnvIfNoCase User-Agent «MJ12bot» bad_user
SetEnvIfNoCase User-Agent «AhrefsBot» bad_user
SetEnvIfNoCase User-Agent «bingbot» bad_user
SetEnvIfNoCase User-Agent «googlebot» bad_user
SetEnvIfNoCase User-Agent «BLEXBot» bad_user
order deny,allow
Deny from env=bad_user

Nota: los « » hay que cambiarlos por comillas, ya que el WordPress está cambiando ese parámetro. 

Nota: Para PrestaShop se puede utilizar el módulo .htaccess

htaccess

Hosting PrestaShop SSD Con LiteSpeed

En Hostinet puedes contratar un Hosting PrestaShop SSD con LiteSpeed para hacer que tu tienda online vaya mucho más rápida que la de tu competencia. ¡Te garantizamos una IP española, así como el mejor soporte en tu idioma!

En Hostinet trabajamos desde hace más de 15 años con servidores ubicados en España (Madrid y Bilbao) para ofrecer a nuestros clientes las mejores prestaciones posibles.

Hosting PrestaShop