Limitando el acceso a bots en un servidor web

logo de googlebot
FacebooktwitterinstagramFacebooktwitterinstagram

logo de googlebot

Desde que Internet es Internet, contamos con la ayuda de los buscadores para encontrar aquello que estamos buscando (al menos, en la web). A veces, no nos interesa que determinado contenido sea indexado por los buscadores y para ello solemos recurrir a un fichero llamado robots.txt, que la mayoría de los buscadores suelen hacer cierto caso.

Pero este fichero, conjuntamente con directivas incluidas en el propio código (como nofollow o noindex), es ignorado o malinterpretado por muchos otros buscadores que no respetan este estándar. Para evitar esto, podemos contar con los ficheros .htaccess y una serie de «truquitos» que veremos a continuación.

Vamos a usar dos directivas de .htaccess para limitar el acceso a ciertos bots. Estas directivas, BrowserMatch o BrowserMatchNoCase conjuntamente con Deny, para impedir que determinado contenido pueda ser accesible por aquellos bots identificados con determinada cadena de texto.

Como ejemplo, vamos a ver una entrada de un log de apache con un bot indeseable:

6.29.7.17 – – [16/May/2011:02:27:00 +0200] «GET / HTTP/1.1» 200 963 jesusdml.es «-» «Mozilla/5.0 (compatible; malotebot/2.1)» «-«

 

Si queremos evitar la entrada de los bots que se identifican con la palabra «malotebot» (puede ser parte o la palabra entera. Por ejemplo «bot» será válido para robot, ibot, rbot, etc.) deberemos añadir o crear un fichero .htaccess en el raiz, con el siguiente contenido:

BrowserMatchNoCase malote tunobicho
Order Deny,Allow
Deny from env=tunobicho

Con ello, hemos creado una variable que se llama «tunobicho» en donde hemos denegado todos los navegadores/robots que usen esa cadena como identificativo. Si queremos añadir otro bot a la lista negra, lo podemos ir situando encima del anteriormente indicado, asignandoles la misma variable:

BrowserMatchNoCase malvado tunobicho
BrowserMatchNoCase tunante tunobicho
BrowserMatchNoCase malote tunobicho
Order Deny,Allow
Deny from env=tunobicho

De igual forma, tambien podemos usar esto para añadir un extra de seguridad a la parte administrativa de la web. Si añadimos o creamos lo siguiente al fichero .htaccess en el directorio de administración de nuestra web…:

BrowserMatchNoCase Safari tusiquevales
Order Deny,Allow
Deny from all
Allow from env=tusiquevales

…únicamente podremos entrar a ese directorio (y subdirectorios) usando un navegador Safari. Esto lo podemos usar tambien con IPs de origen.

Por ejemplo, si queremos que se pueda acceder solo desde la IP 10.20.30.40, deberemos crear o editar un fichero .htaccess con el siguiente contenido:

Order deny,allow
deny from all
allow from 10.20.30.40

Puedes echarle un vistazo a este directorio de mi web con Safari y luego con Mozilla u otro navegador 🙂

Saludos,

Print Friendly, PDF & Email
FacebooktwitterredditlinkedinmailFacebooktwitterredditlinkedinmail
mayo 16, 2011

Etiquetas: , , , , , , , ,
  • Si fuera tan amable de enviarme su correo pues aun me quedaron un par de dudas porque no puedo parar una araña que cambia de direccion y de nombre. Gracias

  • Hola

    Recien tuve un problema con una araña que se dedicaba a robarme datos y fotografias y apliqué su tecnica y se detuvo totalmente. Gracias y buena idea

  • Deja una respuesta

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