Hushfort

Hoe herken en blokkeer ik verkeer van nep-Googlebots in WordPress?

Door Eureka Studio · Bijgewerkt op

Kort antwoord

Een echte Googlebot komt uit de IP-bereiken die Google publiceert; alles wat die naam van ergens anders gebruikt, is nep en kan worden geblokkeerd. Geef voor andere kwaadwillende bots elk IP een verzoekbudget per minuut waarin zware verzoeken zoals zoekopdrachten en 404's meer kosten, beantwoord IP's die over hun budget gaan met een korte 429, en laat het afrekenen altijd door.

Stappen

  1. 1Stap 1

    Spot de bedriegers in je verkeer

    Veel bots noemen zich Googlebot, omdat sites die zelden blokkeren. De naam is vrij te kopiëren, het IP-adres niet. Met de officiële lijsten van Google en Bing geladen, markeert Hushfort een "Googlebot" vanaf elk ander adres als nepzoekbot.

    Recente blokkades in Belastingbeveiliging: een nepzoekbot die zich voordoet als Googlebot vanaf 203.0.113.120, en twee IP's over hun budget, allemaal vastgelegd in Monitormodus
  2. 2Stap 2

    Schakel Belastingbeveiliging in Monitormodus in

    Open Belastingbeveiliging in Hushfort en schakel het in. Modus begint op "Alleen loggen: Monitormodus (aanbevolen om mee te beginnen)": het logt welke IP's de limiet zouden raken, zonder iemand te blokkeren. Laat Nepzoekbots aan staan.

    Belastingbeveiliging ingeschakeld in Monitormodus, met Nepzoekbots aan
  3. 3Stap 3

    Stel een budget in dat verzoeken eerlijk prijst

    Elk IP krijgt een Budget per IP per minuut (standaard 120 punten). Een paginaweergave kost 1, een zoekopdracht 5, een XML-RPC-aanroep 10, en een 404 telt er 4 bij op. Afrekenen en callbacks van betalingen zijn gratis.

    Budget per IP per minuut 120 punten met de puntenlijst, blokkeerduur 10 minuten, nepzoekbots en 404-scans ingeschakeld
  4. 4Stap 4

    IP's boven het budget krijgen een korte pauze

    In de modus Beschermen krijgt een IP dat zijn budget opmaakt een 429-pagina "Te veel verzoeken" voor de duur van de Blokkeerduur, standaard 10 minuten. Geverifieerde zoekbots zijn uitgezonderd en het afrekenen blijft werken.

    De zoekopdracht van een bezoeker boven het budget krijgt als antwoord: te veel verzoeken in korte tijd, probeer het over een paar minuten opnieuw.
  5. 5Stap 5

    Bekijk de log en schakel dan over naar Beschermen

    Bekijk na een paar dagen in Monitormodus de Recente blokkades. Staan er geen echte bezoekers tussen, zet Modus dan op "Beschermen: IP's boven het budget stoppen met een 429" en sla op.

    Modus van Belastingbeveiliging gewijzigd in Beschermen: IP's boven het budget stoppen met een 429, en opgeslagen

Waarom het ertoe doet

Niet elke trage dag is een verkeerssucces. Sommige bots crawlen een site veel harder dan welk mens ook: ze bestoken het zoekvak met willekeurige woorden, zoeken naar honderden ontbrekende bestanden of doen zich voor als Googlebot zodat niemand ze durft te blokkeren. Elk van die verzoeken slaat de paginacache over en laat WordPress en de database echt werk doen.

Op gedeelde hosting betekent dat trage pagina's, CPU-limieten en soms een opgeschort account. In een webwinkel betekent het dat echte klanten wachten terwijl een bot zoekopdrachten uitvoert.

De truc is om dure verzoeken van goedkope te onderscheiden. Wie "verzoeken per minuut" telt, behandelt een gecachte paginaweergave en een niet-gecachte zoekopdracht als gelijk. Prijs je ze naar wat ze kosten, dan kun je ruimhartig zijn voor echte bezoekers en streng voor de patronen die alleen bots vertonen.

Veelgemaakte fouten

  • Blokkeren op user-agent. Iedereen kan beweren Googlebot te zijn, en wie de naam blokkeert, blokkeert ook de echte. Controleer op IP.
  • Eén limiet voor alles. Een vaste regel voor verzoeken per minuut laat zoekgolven door of vangt klanten die snel browsen. Prijs verzoeken naar wat ze kosten.
  • Het afrekenen blokkeren. Een snelheidslimiet die een betalingscallback of het afrekenen kan stoppen, kost je echt geld. Hou die gratis.
  • Lange blokkades. Een blokkade van een dag op een gedeeld IP kan een heel kantoor of mobiel netwerk buitensluiten. Korte pauzes zijn genoeg om het ritme van een bot te breken.
  • Verwachten dat een plugin netwerkgolven stopt. Verkeer dat groot genoeg is om de verbinding van de server te vullen, bereikt WordPress nooit. Dat is een taak voor je CDN.

Zonder plugin

Controleer Googlebot met de hand. Voor een verdacht IP uit je toegangslog:

host 66.249.66.1
# 1.66.249.66.in-addr.arpa domain name pointer crawl-66-249-66-1.googlebot.com.
host crawl-66-249-66-1.googlebot.com
# crawl-66-249-66-1.googlebot.com has address 66.249.66.1

Beide richtingen moeten overeenkomen en eindigen op googlebot.com of google.com. Google publiceert de IP-bereiken van zijn crawlers ook als JSON-bestand waarmee je kunt vergelijken.

Beperk de snelheid op de server. Op Nginx kun je het aantal verzoeken per IP begrenzen:

# in the http block
limit_req_zone $binary_remote_addr zone=perip:10m rate=60r/m;

# in the server block
location / {
    limit_req zone=perip burst=20 nodelay;
    limit_req_status 429;
    try_files $uri $uri/ /index.php?$args;
}

Serverregels zijn snel, maar ze kennen WordPress niet. Ze kunnen afrekenen niet van een zoekopdracht onderscheiden, ze vereisen roottoegang die de meeste hostingpakketten je niet geven, en de IP-lijst van Google met de hand bijhouden is omslachtig. Een CDN-firewall is ook een goede optie, als je daar eigen regels in kunt schrijven.

Als er iets misgaat

  • Een echte bezoeker kreeg een 429. Zoek het IP op in de log. Is het een kantoor of een tool die je gebruikt, voeg het dan toe aan de lijst met toegestane IP's. Overweeg het budget per minuut te verhogen.
  • Search Console meldt crawlfouten. Echte Google-crawlers zijn uitgezonderd, dus controleer of de fouten niet van een server- of CDN-regel buiten Hushfort komen.
  • De site wordt nog steeds overspoeld. De golf is mogelijk te groot voor welke plugin dan ook. Schakel de aanvalsmodus van je CDN in. De noodmodus van Hushfort kan de "Under Attack"-modus van Cloudflare voor je inschakelen, met je eigen API-sleutel, en hem daarna weer uitschakelen.

Met Hushfort

Belastingbeveiliging is onderdeel van Hushfort Pro, de add-on bovenop Hushfort Security, de gratis WordPress-beveiligingsplugin.

De laag Belastingbeveiliging van Hushfort geeft elk IP standaard een budget van 120 punten per minuut. Paginaweergaven kosten 1, admin-ajax GET 1 en POST 2, REST GET 2 en POST 3, toevoegen aan winkelwagen 3, zoeken 5, andere POST-verzoeken 5, XML-RPC 10, en een 404 telt er 4 bij op. Afrekenen, callbacks van betalingen, WP-Cron en schermen in wp-admin zijn gratis.

  • IP's boven het budget krijgen een korte 429 en een pauze van 10 minuten.
  • Nep-Googlebots en -Bingbots, die de naam gebruiken vanaf een IP dat niet op de officiële lijst staat, worden geblokkeerd. Geverifieerde zoekbots zijn uitgezonderd. Het enige wat van buiten wordt opgehaald, zijn de openbare IP-lijsten van de crawlers van Google en Bing.
  • De noodmodus kan de "Under Attack"-modus van Cloudflare inschakelen met je eigen API-sleutel.
  • Hij begint in Monitormodus.

In onze eigen tests rondde een IP boven zijn budget het afrekenen nog steeds af, terwijl zijn andere verzoeken een 429 kregen.

Veelgestelde vragen

Hoe weet ik of een bezoek van Googlebot echt is?

Controleer het IP. Google publiceert de IP-bereiken die zijn crawlers gebruiken, en een reverse-DNS-lookup op een echt Googlebot-IP eindigt op googlebot.com of google.com. Een Googlebot-user-agent vanaf elk ander IP is nep.

Schaadt het blokkeren van nep-Googlebots mijn SEO?

Niet als de controle op IP gebeurt. Echte crawlers van Google en Bing worden herkend en uitgezonderd, dus alleen bedriegers worden weggestuurd.

Wat betekent een 429-status?

Het betekent Too Many Requests, oftewel te veel verzoeken. Het vertelt een client om rustiger aan te doen. De 429 van Hushfort duurt kort, dus een echt mens die gewoon heel actief was, kan na de pauze verder.

Kan een plugin een DDoS-aanval stoppen?

Niet een aanval op netwerkniveau. Dat verkeer overspoelt de server voordat WordPress draait. Een CDN zoals Cloudflare is daar het echte schild; een plugin vangt golven op die WordPress wel bereiken.

Waarom kosten zoekopdrachten en 404's meer?

Een zoekopdracht voert een databasequery uit en een 404 is meestal een scanner die naar bestanden zoekt. Beide kosten je server veel meer dan een gecachte paginaweergave.

Meld een bug of vraag een functie aan

Je bericht gaat rechtstreeks naar het team dat Hushfort bouwt.

Waar gaat het over?

Alleen gebruikt om je te antwoorden.

We gebruiken deze gegevens alleen om je te antwoorden. Privacy