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.

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.phpLenguaje del código: HTTP (http)

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

User-agent: *
Disallow: /Lenguaje del código: HTTP (http)

* 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 restoLenguaje del código: PHP (php)

* 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>Lenguaje del código: JavaScript (javascript)

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

Deja un comentario

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