Hushfort

Jak rozpoznać i zablokować ruch fałszywego Googlebota w WordPressie?

Autor: Eureka Studio · Zaktualizowano

Krótka odpowiedź

Prawdziwy Googlebot przychodzi z opublikowanych przez Google zakresów IP; wszystko, co używa tej nazwy z innego miejsca, jest fałszywe i można to zablokować. Na inne złośliwe boty: daj każdemu IP minutowy budżet żądań, w którym kosztowne żądania, takie jak wyszukiwania i błędy 404, kosztują więcej, odpowiadaj adresom ponad budżetem krótkim kodem 429 i zawsze przepuszczaj składanie zamówień.

Kroki

  1. 1Krok 1

    Wyłap podszywających się w swoim ruchu

    Wiele botów nazywa się Googlebotem, bo witryny rzadko go blokują. Nazwę można skopiować za darmo, adresu IP już nie. Po wczytaniu oficjalnych list Google i Bing Hushfort oznacza „Googlebota” z każdego innego adresu jako fałszywego bota wyszukiwarki.

    Ostatnie blokady w Ochronie przed przeciążeniem: fałszywy bot wyszukiwarki podający się za Googlebota z 203.0.113.120 i dwa adresy IP ponad budżetem, wszystko zapisane w trybie monitorowania
  2. 2Krok 2

    Włącz Ochronę przed przeciążeniem w trybie monitorowania

    W Hushfort otwórz Ochronę przed przeciążeniem i włącz ją. Tryb startuje od „Tylko zapisuj — tryb monitorowania (zalecany na początek)”: zapisuje, które adresy IP przekroczyłyby limit, nikogo nie blokując. Pozostaw włączone Fałszywe boty wyszukiwarek.

    Ochrona przed przeciążeniem włączona w trybie monitorowania, z włączoną opcją Fałszywe boty wyszukiwarek
  3. 3Krok 3

    Ustaw budżet, który uczciwie wycenia żądania

    Każdy IP dostaje Budżet na IP na minutę (domyślnie 120 punktów). Wyświetlenie strony kosztuje 1, wyszukiwanie 5, wywołanie XML-RPC 10, a błąd 404 dodaje 4. Składanie zamówienia i wywołania zwrotne płatności są darmowe.

    Budżet na IP na minutę: 120 punktów z listą punktów, czas blokady 10 minut, włączone fałszywe boty wyszukiwarek i skanowanie 404
  4. 4Krok 4

    Adresy ponad budżetem dostają krótką przerwę

    W trybie Chroń IP, który wyczerpie budżet, dostaje stronę 429 „Too many requests” na Czas blokady, domyślnie 10 minut. Zweryfikowane boty wyszukiwarek są wyłączone z limitu, a składanie zamówień działa dalej.

    Wyszukiwanie odwiedzającego ponad budżetem z odpowiedzią: zbyt wiele żądań w krótkim czasie, spróbuj ponownie za kilka minut.
  5. 5Krok 5

    Sprawdź dziennik, potem przełącz na Chroń

    Po kilku dniach w trybie monitorowania przejrzyj Ostatnie blokady. Jeśli nie ma tam prawdziwych odwiedzających, ustaw Tryb na „Chroń — zatrzymuj IP ponad budżetem kodem 429” i zapisz.

    Tryb Ochrony przed przeciążeniem zmieniony na Chroń — zatrzymuj IP ponad budżetem kodem 429 i zapisany

Dlaczego to ważne

Nie każdy wzrost ruchu to sukces. Niektóre boty przeczesują witrynę znacznie intensywniej niż jakikolwiek człowiek: zasypują wyszukiwarkę losowymi słowami, sprawdzają setki nieistniejących plików albo udają Googlebota, żeby nikt nie odważył się ich zablokować. Każde takie żądanie omija pamięć podręczną stron i zmusza WordPressa oraz bazę danych do prawdziwej pracy.

Na hostingu współdzielonym oznacza to wolne strony, limity CPU, a czasem zawieszone konto. W sklepie oznacza to, że prawdziwi klienci czekają, podczas gdy bot wykonuje wyszukiwania.

Sztuka polega na odróżnieniu kosztownych żądań od tanich. Liczenie „żądań na minutę” traktuje wyświetlenie strony z pamięci podręcznej i wyszukiwanie spoza niej tak samo. Wycena według kosztu pozwala być hojnym dla prawdziwych odwiedzających i surowym wobec wzorców, które tworzą tylko boty.

Typowe błędy

  • Blokowanie po user agencie. Każdy może podać się za Googlebota, a zablokowanie nazwy blokuje też prawdziwego. Weryfikuj po IP.
  • Jeden limit na wszystko. Płaska reguła „żądań na minutę” albo przepuszcza zalewy wyszukiwań, albo łapie klientów, którzy szybko przeglądają sklep. Wyceniaj żądania według kosztu.
  • Blokowanie zamówień. Limit, który może zatrzymać wywołanie zwrotne płatności albo składanie zamówienia, kosztuje Cię prawdziwe pieniądze. Zostaw je darmowe.
  • Długie bany. Całodniowy ban na współdzielony IP może zablokować całe biuro albo sieć komórkową. Krótkie przerwy wystarczą, by wybić bota z rytmu.
  • Oczekiwanie, że wtyczka zatrzyma zalew na poziomie sieci. Ruch na tyle duży, że zapycha łącze serwera, nigdy nie dociera do WordPressa. To zadanie dla Twojego CDN.

Bez wtyczki

Zweryfikuj Googlebota ręcznie. Dla podejrzanego IP z dziennika dostępu:

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

Oba kierunki muszą się zgadzać i kończyć na googlebot.com lub google.com. Google publikuje też zakresy IP swoich robotów jako plik JSON, z którym możesz porównywać adresy.

Ogranicz żądania na serwerze. W Nginx możesz ustawić limit żądań na IP:

# 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;
}

Reguły serwera są szybkie, ale nie znają WordPressa. Nie odróżnią składania zamówienia od wyszukiwania, wymagają dostępu roota, którego większość planów hostingowych nie daje, a ręczne utrzymywanie listy IP Google jest żmudne. Zapora w CDN to kolejna dobra opcja, jeśli Twój CDN pozwala pisać reguły.

Jeśli coś pójdzie nie tak

  • Prawdziwy odwiedzający dostał 429. Znajdź jego IP w dzienniku. Jeśli to biuro lub narzędzie, z którego korzystasz, dodaj je do listy dozwolonych. Rozważ zwiększenie budżetu na minutę.
  • Search Console zgłasza błędy indeksowania. Prawdziwe roboty Google są wyłączone z limitu, więc sprawdź, czy błędy nie pochodzą z reguły serwera lub CDN poza Hushfort.
  • Witryna nadal jest przeciążona. Zalew może być za duży dla jakiejkolwiek wtyczki. Włącz tryb ochrony przed atakiem w swoim CDN. Tryb awaryjny Hushfort może za Ciebie włączyć w Cloudflare tryb „Under Attack” przy użyciu Twojego własnego klucza API, a potem go wyłączyć.

Z Hushfort

Ochrona przed przeciążeniem należy do Hushfort Pro, płatnego dodatku instalowanego obok Hushfort Security, darmowej wtyczki bezpieczeństwa WordPress.

Warstwa Ochrona przed przeciążeniem w Hushfort daje każdemu IP budżet domyślnie 120 punktów na minutę. Wyświetlenie strony kosztuje 1, admin-ajax GET 1 i POST 2, REST GET 2 i POST 3, dodanie do koszyka 3, wyszukiwanie 5, inne żądania POST 5, XML-RPC 10, a błąd 404 dodaje 4. Składanie zamówienia, wywołania zwrotne płatności, WP-Cron i ekrany wp-admin są darmowe.

  • Adresy IP ponad budżetem dostają krótki kod 429 i 10 minut przerwy.
  • Fałszywe Googleboty i Bingboty, które podają się za nie z IP spoza oficjalnej listy, są blokowane. Zweryfikowane boty wyszukiwarek są wyłączone z limitu. Jedyne pobieranie z zewnątrz to publiczne listy IP robotów Google i Bing.
  • Tryb awaryjny może włączyć w Cloudflare tryb „Under Attack” przy użyciu Twojego własnego klucza API.
  • Startuje w trybie monitorowania.

W naszych testach IP ponad budżetem nadal sfinalizował zamówienie, podczas gdy jego pozostałe żądania dostawały kod 429.

Najczęstsze pytania

Skąd mam wiedzieć, czy wizyta Googlebota jest prawdziwa?

Sprawdź IP. Google publikuje zakresy IP używane przez swoje roboty, a odwrotne zapytanie DNS dla prawdziwego IP Googlebota kończy się na googlebot.com lub google.com. User agent Googlebota z dowolnego innego IP jest fałszywy.

Czy blokowanie fałszywych Googlebotów zaszkodzi mojemu SEO?

Nie, jeśli weryfikacja odbywa się po IP. Prawdziwe roboty Google i Bing są rozpoznawane i wyłączone z limitu, więc odprawiani są tylko podszywający się.

Co oznacza status 429?

Oznacza Too Many Requests (zbyt wiele żądań). Każe klientowi zwolnić. Kod 429 w Hushfort działa krótko, więc prawdziwy człowiek, który był po prostu bardzo aktywny, może kontynuować po przerwie.

Czy wtyczka może zatrzymać atak DDoS?

Nie atak na poziomie sieci. Taki ruch przeciąża serwer, zanim WordPress w ogóle się uruchomi. Prawdziwą tarczą jest tam CDN, np. Cloudflare; wtyczka radzi sobie z zalewami, które docierają do WordPressa.

Dlaczego wyszukiwania i błędy 404 kosztują więcej?

Wyszukiwanie wykonuje zapytanie do bazy danych, a 404 to zwykle skaner szukający plików. Oba kosztują Twój serwer znacznie więcej niż wyświetlenie strony z pamięci podręcznej.

Zgłoś błąd lub zaproponuj funkcję

Twoja wiadomość trafia prosto do zespołu, który tworzy Hushfort.

Czego dotyczy?

Używany tylko do odpowiedzi.

Używamy tych danych wyłącznie, aby Ci odpowiedzieć. Prywatność