regla de iptables para prohibir y redirigir el tráfico malicioso

4

Estoy ejecutando Apache 2 y después de analizar access_log, descubrí que mi sitio web es visitado más de 800 veces al día (hoy 924) desde majestic.co.uk bot. El bot utiliza este rango de direcciones IP:

  

46.4.123.172
  220.241.45.142
  94.22.46.23
  88.198.16.153
  178.137.88.101
  91.194.84.106
  144.76.8.132
  46.4.120.3
  176.9.10.227
  208.107.12.128
  46.4.89.35
  91.230.202.131
  62.210.90.118
  62.16.252.183
  46.4.32.75
  46.4.116.197
  198.27.66.194
  199.58.86.206
  46.165.197.142
  195.154.187.115
  144.76.7.107
  91.121.221.15
  51.254.97.22
  195.154.156.209
  98.218.34.60
  195.154.157.47
  198.27.82.146
  178.202.133.84
  91.179.245.81


Desde el punto de vista que he visto que la IP sigue cambiando, lo primero que pensé fue (correcto si me equivoco) configurar una regla como esta en el ejemplo de la primera dirección IP:

  

agregar ruta -net 46.4.123.0/24 gw 127.0.0.1 lo


De esta manera, bloquearía 46.4.123.1 a 46.4.123.255, pero no funcionaría para mí, ya que cada vez que cambio la IP, tengo que localizar y bloquear cada una.

Mi pregunta es que, en lugar de enrutar nulo, hay una forma de redirigir el tráfico a un dominio como blocked.xxx.com donde el usuario ve "Oye, tu IP está bloqueada, no puedes visitar el sitio web, por favor, si crees que esta es una error contáctame ".

    
pregunta Marcos Lamba 13.09.2015 - 18:59
fuente

3 respuestas

9

El proyecto Majestic es un rastreador web distribuido, que explica por qué obtiene tantas direcciones IP de origen diferentes. No es malicioso, es decir, no ataca su sitio y ni siquiera utiliza muchos recursos (800 solicitudes al día no son muchas).

Como la mayoría de los bots apropiados, Majestic incluso incluye una URL en la cadena de usuario-agente y si visita esta URL encontrará temas como "¿Cómo puedo bloquear MJ12bot?". Este tema explica cómo puedes bloquear este bot de una manera sana y te recomiendo que sigas los consejos allí. Tenga en cuenta que este bot no es algo especial, sigue las mismas reglas como la mayoría de los otros rastreadores inocentes como los bots de google, yahoo , bing etc.

Aparte de eso, su idea de bloquear en función de la IP de origen de la solicitud no solo es inútil en este caso, sino que también es perjudicial porque excluirá de su sitio web a usuarios inocentes. Estas solicitudes para este rastreador distribuido se realizan desde las computadoras de voluntarios como usuarios domésticos. Podría ver esto si invierte la búsqueda en algunas de las direcciones IP, por ejemplo. 91.179.245.81 resuelve también 81.245-179-91.adsl-dyn.isp.belgacom.be. . Por lo tanto, si bloqueara la red completa / 24 para esta dirección IP, excluiría a muchos usuarios de este ISP.

    
respondido por el Steffen Ullrich 13.09.2015 - 19:53
fuente
3

Si entiendo su pregunta correctamente, ¿desea redireccionar ciertas direcciones IP a un dominio diferente? Si ese es el caso, puede usar esto en su archivo .htaccess:

RewriteEngine On
RewriteBase /
RewriteCond %{REMOTE_HOST} 46\.4\.123\.1
RewriteCond %{REQUEST_URI} /index\.html$
RewriteRule .* /blocked.html [R=301,L]

cambie RewriteCond y RewriteRule, o en IPtables usando:

"# sysctl net.ipv4.ip_forward=1"
then
"# iptables -t nat -A PREROUTING -s 46.4.123.0/24 -p tcp --dport 80 -j DNAT --to-destination 1.1.1.1:80"

cambie la primera IP a las que desea redireccionar y la 1.1.1.1 a la que desea redirigir

    
respondido por el Zardox 13.09.2015 - 19:31
fuente
0

No hay ningún punto que bloquee las direcciones IP de los bots ya que Majestic es un proyecto de indización de búsqueda distribuida y cualquiera puede optar por configurar un bot en su computadora. Al bloquear las direcciones IP de Majestic, bloquea efectivamente el acceso de los usuarios normales a su sitio web.

Cómo bloquear el bot Majestic

Use el archivo robots.txt para no permitir el acceso de los bots a su sitio web. Esta es una forma mucho más recomendada y ya se ha respondido aquí .

Cómo redirigir el bot Majestic

Utilice mod_rewrite de Apache para redirigir el bot a otra ubicación buscando su User-Agent Encabezado de solicitud HTTP. Cree un archivo .htaccess en el directorio raíz de su sitio web con el siguiente contenido. Asegúrate de que tienes mod_rewrite habilitado en tu host virtual .

  RewriteEngine On
  RewriteBase /    
  RewriteCond %{HTTP_USER_AGENT} ^MJ12bot
  RewriteRule ^(.*)$ http://blocked.xxx.com [R=301,L]

Nota: no he probado las entradas anteriores.

En los dos métodos mencionados anteriormente, es posible que sigas viendo entradas de acceso a bots en tus registros de Apache de vez en cuando, a menos que el bot esté programado para ignorar por completo tu sitio web para siempre.

    
respondido por el Dr. mattle 14.09.2015 - 00:15
fuente

Lea otras preguntas en las etiquetas