Como mantener nuestro sitio o server alejado de robots, bots, spiders, crawlers y visitas no deseadas

Las visitas y el tráfico que puede tener nuestro Sitio y nuestro Servidor, muchas veces son visitas de clientes o visitantes válidos digamos aunque muchísimas veces esa visita es una visita inesperada 🙂 muchas veces son robots bots o crawlers.

Ahora, que son los Robots, Bots o Crawlers?
Son aplicaciones automáticas que hacen un escaneo constante de «internet» buscando recopilar información, enlaces web y contenido. Buscadores como Google, Bing, Yahoo lo hacen, utilizan estos escaneos para generar estadísticas e información de nuestro sitio y así poder «mostrar» información valida cuando uno hace búsquedas en estas web.
Hasta ahi todo lindo ¿que mejor que nuestra web sea indexada correctamente por los buscadores más importantes? el problema se genera debido a que cada día aparecen más y más bots y crawlers los cuales abusan o son intrusivos hacia nuestro servidor o sitio web.

Existen robots que buscan por ejemplo, robarse el contenido que tengas en tu portal, «cosechar» cuantas direcciones de correo electrónico, realizar spam en formularios de contacto o comentarios o directamente explorar vulnerabilidades conocidas del software que tengas instalado, son de estos robots que debemos protegernos.

Que puede pasar con un sitio o server que es bombardeado por robots, bots, spiders, crawlers?
La visita de un robot es eso, una visita que recibe nuestro servidor o web, si multiplicamos eso a cientos y miles de visitas por minuto de cientos de crawlers que entran a rotar en nuestro sitio o servidor, indudablemente cabe la posibliidad de que lleguen a «tumbar» un servicio, denegar una solicitud válida o llegar a límites de transferencia mensuales (esto como cuestiones simples) o directamente al robo de información, vulneración de nuestro sitio (que ya son cuestiones bastante graves). En estos casos hay que ponerse el escudo y empezar a tunear un poco nuestro sitio para evitar o tratar de repeler estas alimañas.

Lee más:  Script para reiniciar servicios caídos.

Como hacemos para controlar estos agentes?
Existen 2 archivos que podemos tunear o tocar:
robots.txt (aqui podemos indicar que robots NO pueden acceder a nuestro sitio)
.htaccess (aqui bloquearemos el robot que querramos por medio del user-agent)

1) Como configuro correctamente mi robots.txt?

Aqui colocaremos que partes del sitio NO queremos que sean visitadas por los robots o directamente negar el acceso a un robot específico.

* Colocaremos que partes del sitio no quieres que toque ningún robot:

User-agent: *
Disallow: /images
Disallow: /documentos
Disallow: /portal/formulario.php

* Si queremos que ningún robot toque nada de nuestro sitio.

User-agent: *
Disallow: /

* Denegar el acceso a un robot específico a nuestro sitio

User-agent: robotxx
 Disallow: /

* Armar una lista blanca de robots buenos y negar el acceso a robots malos 🙂

User-agent: Googlebot
User-agent: Bingboot
User-agent: msnbot
User-agent: Mediapartners-Google*
User-agent: Googlebot-Image
User-agent: Yahoo-MMCrawler
Disallow:

User-agent: *
Disallow: /

2) Como configuro correctamente el .htaccess para bloquear robots?

Muchas veces los robots malos no llevan el apunte a nuestro robots.txt, ahi entra en juego el .htaccess que es un poco más efectivo para el control de robots bots spiders crawlers.

* Denegar el acceso por user-agents y que su petición no sea atendida

Options All -Indexes
RewriteEngine on
RewriteCond %{HTTP_USER_AGENT} ^ROBOTXX.* [OR]
RewriteCond %{HTTP_USER_AGENT} ^ROBOTXXX.* [OR]
RewriteCond %{HTTP_USER_AGENT} ^ROBOTXXXX.* [OR]
RewriteRule ^.* - [F]

* Bloquear las IP’s conocidas de estos bichos

order allow,deny
deny from 127.0.0.1 # banea esa ip
deny from 127.0.0.1/17 # banea de la 1 a la 17
allow from all # y permitimos el acceso al resto

* Se puede usar tambien la variable SetEnvIfNoCase

Options All -Indexes
RewriteEngine on

SetEnvIfNoCase User-Agent "ROBOTXX" bad_bot
SetEnvIfNoCase User-Agent "ROBOTXXX" bad_bot
SetEnvIfNoCase User-Agent "ROBOTXXXX" bad_bot

<Limit GET POST HEAD>
Order Allow,Deny
Allow from all
Deny from env=bad_bot
</Limit>

Existen páginas que hacen el trabajo por nosotros y ya tienen .htaccess armados para bloquear todos los robots spiders bots crawlers indeseables y que podemos tomar como ejemplo.
WPSecure.net
Bad-Bot-Bloquer

Lee más:  Instalar phpMyAdmin en tu página web

Mauro

Soy Mauro de Argentina, tengo 37 años y desde que tengo uso de razón estuve husmeando y rompiendo PC’s. La primer PC de la familia una PC-AT, la cual tenía una memoria ROM de 40KB y una memoria RAM de 64KB y un procesador Intel 8088 de 16 bit, vivía más en lo del técnico que en casa, todo porque siempre estaba ahí mandándole mano. Desde esa base no paré, arranque desde DOS, probé todos los Windows, pasé y reparé miles de PC de escritorio, trabajé en Servidores Unix, Linux y Windows y soy un fanático del Mundo Linux, del Software Libre y todo lo que rodea y engloba. He pasado todas las manías del Informático, maniático de la seguridad, distrohopper empedernido y amante de la tecnología. Me considero Administrador de Servidores, me gusta todo lo relacionado a la Tecnología e Informática, Linuxero por curiosidad (casa) y Windowsero por necesidad (trabajo). Me encanta compartir lo que aprendo y difundir las cosas que me parecen interesantes, claro que siempre están relacionadas al mundo computacional.- Todas las publicaciones son escritas respetando Vivencias Propias, Artículos Interesantes leídos o Investigaciones realizadas en el transcurso de mi tarea diaria, lectura o simplemente curiosidad. La idea es poder compartir el contenido, buscando ayudar a los que están en aprietos y poder realizar la cadena de Aprender/Compartir/Resolver.

También te podría gustar...

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.