Cómo banear spammers y trolls con .htaccess

Stop Spam

Si a menudo tienes spammers o trolls en los comentarios de tu blog, puedes usar este sencillo truco para impedirles entrar mediante el bloqueo de su dirección IP.

Acabo de utilizar esta técnica y me he dado cuenta de que más de la mitad de los comentarios de spam que me llegan proceden de una sola IP. Aunque uso Akismet, que envía todos sus comentarios a la carpeta de spam, prefiero que el spammer no tenga siquiera la oportunidad de entrar en el blog.

Este blog está hecho con WordPress, pero si tu servidor usa .htaccess tienes muchas probabilidades de éxito con esta técnica.

¿Qué es .htaccess?

El archivo .htaccess es un archivo de configuración del servidor web que establece ciertas normas para los visitantes de tu sitio. Funciona con WordPress o cualquier otra plataforma de blogs, analiza algunos aspectos de la interacción de los navegadores con el servidor y, si se cumplen ciertas reglas, puede generar una acción.

En el siguiente ejemplo, la regla que vamos a usar sirve para comprobar una dirección IP y la acción consiste en restringir el acceso.

La configuración de .htaccess es muy importante. Puede utilizarse para el redireccionamiento y otra serie de funciones. Si quieres saber más, en profundidad, puedes leer este tutorial en inglés (no disponible en español).

Encontrar la dirección IP del indeseable

WordPress hace un gran trabajo ya que ayuda descubrir la dirección IP de los que dejan comentarios. Solo tienes que ir a la sección de comentarios de WordPress desde el escritorio o desde la carpeta de moderación de spam y debajo de la dirección de correo electrónico y sitio web encontrarás la dirección IP de quien ha enviado el comentario.

Editar el archivo .htaccess

Antes de nada, vamos a comenzar con una advertencia: si modificas .htaccess incorrectamente puedes dañar seriamente tu blog, por lo que debes hacer una copia de seguridad de todos los archivos antes de efectuar cualquier cambio. A má­ me gusta descargar el archivo a mi equipo local, hacer una copia y editar el original antes de subirlo de nuevo al servidor.

En los sistemas Unix o Linux cualquier archivo que comienza con un punto está marcado como un archivo oculto, asá­ que es probable que no puedas ver el archivo .htaccess en la raá­z de la instalación por defecto de WordPress. Tendrás que activar mostrar  archivos ocultos en tu programa cliente de FTP. Si usas Filezilla, esta opción se encuentra en servidor -> mostrar archivos ocultos. En cada cliente FTP puede variar, pero busca esta opción porque seguro que está en alguna parte.

El archivo .htaccess por defecto

Un archivo .htaccess por defecto de WordPress es más o menos asá­:

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress

Como se puede ver  tiene una serie de reglas “re-escribir” para WordPress y muy poco más.

Qué añadir

Para bloquear una determinada dirección IP añade las siguientes lá­neas debajo de la sección # END WordPress, y sustituye los detalles que hay dentro de por las direcciones IP reales o los nombres de host.

#bloquear las direcciones IP de spammers y trolls
order allow,deny
deny from {DIRECCION IP}
deny from {SEGUNDA DIRECCION IP UNA POR LINEA}
deny from {TAMBIEN PUEDES USAR EL NOMBRE DE UN DOMINIO nombredelhostdeltroll.com}
allow from all
# FIN spammers y trolls

Edita el archivo .htaccess con un editor de texto, agrega las exclusiones y luego súbelo de nuevo a la raá­z de la instalación del blog sobrescribiendo el antiguo archivo .htaccess.

Probando los cambios

Cualquier dirección IP añadida a la lista de exclusión no podrá acceder a tu servidor web y si lo intenta le será devuelto un mensaje de prohibición 403.  Mi servidor muestra el siguiente mensaje:

Forbidden
You don”t have permission to access / on this server.
Additionally, a 403 Forbidden error was encountered while trying to use an ErrorDocument to handle the request.

Traducción: No tiene permiso para acceder a este servidor.
Además, se ha encontrado un error 403 Forbidden al intentar utilizar un documento de error para manejar la petición.

Puedes probar si funciona dejando un comentario de prueba en el blog, obtienes tu dirección IP y la añades en el archivo .htaccess. Recuerda quitarla después porque si no no vas a tener acceso al blog.

No es “a toda prueba”

Esta técnica no es 100% eficaz, no nos engañemos, tiene algunas limitaciones que son:

  • Los Proxies – si el indeseable está utilizando la dirección IP de un proxy, entonces todos los que estén utilizando la misma dirección IP tendrán el acceso prohibido. Algunos proveedores de internet (ISP) utilizan una dirección IP compartida, de modo que todo el que utilice ese ISP tendrá prohibido el acceso al sitio. á?salo con cuidado.
  • Las Spoofing IP address – si el troll está particularmente preparado tecnológicamente podrá­a suplantar su dirección IP o usar cualquier otra, y atravesar la barrera.
  • El uso de otra máquina – el visitante molesto podrá­a simplemente usar el ordenador de un amigo o el de un cibercafé y entrar con una nueva dirección IP.

Conclusiones

Como hemos mencionado, no se trata de una técnica que funcione al 100%, pero el bloqueo de direcciones IP es una buena forma de poner fin a los comentarios de robots desde direcciones IP fijas y una forma de avisar a los trolls de que este tipo de comentarios no son bienvenidos en tu blog.

Si utilizas este truco combinándolo con plugins anti-spam y moderación de comentarios reducirás el spam y disuadirás a los trolls.

Traducción libre. Lee el original en Problogger.

Lecturas recomendadas:

Un comentario en “Cómo banear spammers y trolls con .htaccess

Deja un comentario

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