Cómo bloquear un tráfico de spam de referente con Apache Webserver

Cómo bloquear un tráfico de spam de referente con Apache Webserver

En esta configuración, aprenderá qué es un tráfico de spam de referente, cómo se genera y, lo más importante, cómo bloquear el spam de referente en el servidor web de Linux Apache.

¿Qué es un spam de referente??

Un spam de referente es otra molestia inventada por spammers que causan que los administradores, vendedores o propietarios de sitios no informados visiten o vinculen inadvertidamente al sitio del spammer a través de acceso publicado públicamente o registros de referentes en el sitio web de una víctima. En consecuencia, esto puede conducir a una clasificación de motor de búsqueda más baja, así como a drenar los recursos de su servidor.

Dado que está leyendo este artículo, es probable que ya haya notado un extraño tráfico de referencia que golpea su servidor mientras sigue un enlace que aterriza en un sitio web completamente no relacionado.

Cómo funciona

Todos los golpes generados utilizando la técnica de spam de referente no son visitantes genuinos, sino que son el resultado de un script automatizado que realiza una solicitud HTTP mientras altera deliberadamente el encabezado HTTP con referencia de spam que hará que el servidor web lo registre como genuino. A continuación puede encontrar una muestra del registro de acceso del Apache:

10.1.1.8 - - [10/mar/2015: 11: 56: 55 +1100] "Get/http/1.1 "200 10543" http: // ejemplo.com/"" Mozilla/5.0 (x11; Linux x86_64) AppleWebkit/537.36 (khtml, como gecko) Chrome/40.0.2214.111 Safari/537.36 " 

De lo anterior podemos leer que algún formulario de usuario 10.1.1.8 El uso de Chrome Browser visitó una página raíz de nuestro servidor web, donde el enlace de referente es desde ejemplo.comunicarse dominio. Tal entrada de registro puede ser generada por cualquier persona con acceso a herramientas adecuadas. Usemos rizo comandar generar una referencia falsa desde MyDomain.local:

$ curl -s -e mydomain.http local: // mysite.local> /dev /null 

Ahora, cuando examinamos los registros de Apache, podemos encontrar una siguiente entrada:

10.1.1.8 - - [10/mar/2015: 12: 26: 20 +1100] "Get/http/1.1 "200 433" http: // mydomain.local "" curl/7.32.0 " 

Además, con un uso del rizo Comando también podemos alterar un tipo de agente:

 $ curl -a "mozilla/5.0 (x11; Linux x86_64) AppleWebkit/537.36 (khtml, como gecko) Chrome/40.0.2214.111 Safari/537.36 "-s -e http: // mydomain.http local: // mysite.local> /dev /null 

que hará que su servidor web registre:

10.1.1.8 - - [10/mar/2015: 12: 31: 17 +1100] "Get/http/1.1 "200 433" http: // mydomain.Local "" Mozilla/5.0 (x11; Linux x86_64) AppleWebkit/537.36 (khtml, como gecko) Chrome/40.0.2214.111 Safari/537.36 " 

Lo anterior es un spam de referente y puede engañar sus herramientas de estadísticas web, como Google Analytics, así como drenar los recursos de su servidor.

Cómo bloquear un spam de referente

Lo que nos gustaría lograr aquí es simplemente bloquear el tráfico de cualquier referencia sospechosa. Por ejemplo, vamos a bloquear cualquier tráfico de ejemplo.comunicarse Dominio de referencia, así como para bloquear cualquier tráfico desde un enlace de referencia que contenga la palabra clave correo basura en cualquier lugar de la URL.

Para esto necesitaremos Apache's volver a escribir módulo a estar habilitado. Para ver si volver a escribir El módulo está habilitado en su servidor Enter:

# apache2ctl -m | GREP Rewrite Rewrite_module (Shared) Sintaxis OK 

Si no ve la salida del volver a escribir El módulo no está habilitado. Para habilitar la ejecución del módulo de reescritura:

# a2enmod reescritura habilitando el módulo Reescritura. Para activar la nueva configuración, debe ejecutar: servicio apache2 reiniciar # servicio apache2 reiniciar [...] reiniciar servidor web: apache2apache2: . OK 

A continuación, cambia tu host virtualPermitir sobrescritura ajustes. Por ejemplo:

Desde: Indexos de opciones SIGUSYSYMLINKS MULTIVIEWS DESFOCHOURNEN NINGUNO PEDIDO Permitir, Denegar de todos los índices de opciones  

Una vez que haya realizado los cambios anteriores, reinicie su servidor web:

# Servicio Apache2 reiniciar 

En esta etapa tendremos dos opciones sobre cómo usar nuestras reescrituras para bloquear el spam de referente.

La primera opción es insertar nuestras declaraciones de reescritura en nuestro archivo de configuración del sitio. Se recomienda este enfoque, ya que no ejerce mucha presión sobre los recursos del servidor, ya que todas las declaraciones de reescritura se leen solo una vez durante la secuencia de inicio de Apache. Para hacer esto, ingrese las siguientes líneas de reescritura en el archivo de configuración de su sitio:

  Índices de opciones SIGUSYSYMLINKS MultIViews?.com |.*rewriterule spam [nc] .* - [f]  

Una vez que realice los cambios anteriores, reinicie su servidor web Apache. La desventaja de la configuración anterior es que debe tener un acceso raíz al servidor. Si no tiene acceso administrativo del servidor, tiene la opción de insertar .htaccess Archivo en un directorio raíz de su sitio web con un contenido siguiente:

RewriteEngine en RewriteCond %http_referer Ejemplo.com |.*rewriterule spam [nc] .* - [f] 

La desventaja de lo anterior .El método htaccess es que puede reducir significativamente el rendimiento de su servidor web como el .htaccess El archivo debe leerse cada vez que se realiza una solicitud HTTP.

De una forma u otra su servidor ahora debe negar cualquier tráfico del referente ejemplo.comunicarse o si la URL de referencia contiene una palabra clave correo basura. Para probar una corrección o su filtro de spam de referente rizo comando mientras finge una fuente de referencia. Su solicitud ahora debería dar como resultado un acceso prohibido (error Apache 403) causado por .* - [f] Rewriterule.

Tutoriales de Linux relacionados:

  • Introducción a los motores de almacenamiento MySQL
  • Analizador de registro de Linux Apache
  • Ubuntu 20.04 WordPress con instalación de Apache
  • Cosas para instalar en Ubuntu 20.04
  • Cómo administrar y solucionar problemas de Kubernetes
  • Cómo configurar el servidor Linux Apache MySQL Python
  • Sistema colgado de Linux? Cómo escapar a la línea de comando y ..
  • Guía de solución de problemas GNU/Linux General para principiantes
  • Cosas que hacer después de instalar Ubuntu 20.04 fossa focal Linux
  • Uso y ejemplos de comando de JournalCTL en Linux