Hushfort

Bagaimana cara memblokir Googlebot palsu dan bot nakal di WordPress?

Oleh Eureka Studio · Diperbarui

Jawaban singkat

Googlebot asli datang dari rentang IP yang dipublikasikan Google; apa pun yang memakai nama itu dari alamat lain adalah palsu dan boleh diblokir. Untuk bot nakal lainnya, beri setiap IP jatah permintaan per menit, dengan permintaan berat seperti pencarian dan 404 dihitung lebih mahal, jawab IP yang melampaui jatah dengan 429 singkat, dan selalu loloskan checkout.

Langkah-langkah

  1. 1Langkah 1

    Kenali penyamar di lalu lintas Anda

    Banyak bot mengaku sebagai Googlebot karena situs jarang memblokirnya. Namanya bebas ditiru; alamat IP-nya tidak. Dengan daftar resmi Google dan Bing yang sudah dimuat, Hushfort menandai "Googlebot" dari alamat lain mana pun sebagai bot mesin pencari palsu.

    Blokir terbaru di Perlindungan Beban: bot mesin pencari palsu yang mengaku Googlebot dari 203.0.113.120, dan dua IP yang melampaui jatahnya, semuanya dicatat dalam mode Pantau
  2. 2Langkah 2

    Aktifkan Perlindungan Beban dalam mode Pantau

    Di Hushfort, buka Perlindungan Beban dan nyalakan. Mode awalnya "Hanya catat — mode Pantau (disarankan untuk memulai)": modul mencatat IP mana yang akan mencapai batas, tanpa memblokir siapa pun. Biarkan Bot mesin pencari palsu tetap aktif.

    Perlindungan Beban dinyalakan dalam mode Pantau dengan Bot mesin pencari palsu aktif
  3. 3Langkah 3

    Tetapkan jatah yang memberi harga wajar pada setiap permintaan

    Setiap IP mendapat Jatah per IP per menit (bawaannya 120 poin). Satu tampilan halaman bernilai 1, pencarian 5, panggilan XML-RPC 10, dan 404 menambah 4. Checkout dan callback pembayaran gratis.

    Jatah per IP per menit 120 poin beserta daftar poinnya, durasi blokir 10 menit, bot mesin pencari palsu dan pemindaian 404 aktif
  4. 4Langkah 4

    IP yang melampaui jatah diberi jeda singkat

    Dalam mode Lindungi, IP yang menghabiskan jatahnya mendapat halaman 429 "Too many requests" selama Durasi blokir, bawaannya 10 menit. Bot mesin pencari yang terverifikasi dikecualikan, dan checkout tetap berfungsi.

    Pencarian dari pengunjung yang melampaui jatah dijawab dengan: terlalu banyak permintaan dalam waktu singkat, silakan coba lagi dalam beberapa menit.
  5. 5Langkah 5

    Periksa log, lalu beralih ke Lindungi

    Setelah beberapa hari dalam mode Pantau, tinjau Blokir terbaru. Jika tidak ada pengunjung sungguhan di sana, atur Mode ke "Lindungi — hentikan IP yang melampaui jatah dengan 429" lalu simpan.

    Mode Perlindungan Beban diubah ke Lindungi — hentikan IP yang melampaui jatah dengan 429 dan disimpan

Untuk memblokir Googlebot palsu di WordPress, cocokkan IP pengunjung dengan rentang IP yang dipublikasikan Google: apa pun yang memakai nama Googlebot dari alamat lain adalah palsu. Bot nakal lainnya diatasi dengan jatah permintaan per IP dan jawaban 429 singkat, tanpa pernah memblokir checkout. Perlindungan Beban ada di Hushfort Pro, add-on berbayar untuk Hushfort Security, plugin keamanan WordPress gratis.

Mengapa ini penting

Tidak setiap hari yang lambat berarti lalu lintas sedang ramai. Sebagian bot menjelajahi situs jauh lebih agresif daripada manusia mana pun: membombardir kotak pencarian dengan kata acak, mencari ratusan file yang tidak ada, atau menyamar sebagai Googlebot agar tidak ada yang berani memblokirnya. Setiap permintaan itu melewati cache halaman dan memaksa WordPress serta database bekerja sungguhan.

Di shared hosting, akibatnya halaman lambat, batas CPU terlampaui, dan kadang akun ditangguhkan. Di toko online, pelanggan sungguhan harus menunggu sementara bot menjalankan pencarian.

Kuncinya adalah membedakan permintaan yang berat dari yang ringan. Menghitung "permintaan per menit" menyamakan tampilan halaman dari cache dengan pencarian tanpa cache. Memberi harga sesuai bebannya memungkinkan Anda tetap longgar kepada pengunjung sungguhan dan tegas terhadap pola yang hanya dihasilkan bot.

Kesalahan yang sering terjadi

  • Memblokir berdasarkan user agent. Siapa pun bisa mengaku sebagai Googlebot, dan memblokir namanya berarti ikut memblokir yang asli. Verifikasi lewat IP.
  • Satu batas untuk semuanya. Aturan datar permintaan per menit akan meloloskan banjir pencarian atau justru menjaring pelanggan yang menjelajah dengan cepat. Beri harga sesuai beban.
  • Memblokir checkout. Pembatasan laju yang bisa menghentikan callback pembayaran atau checkout membuat Anda kehilangan uang sungguhan. Biarkan keduanya gratis.
  • Blokir yang terlalu lama. Blokir seharian pada IP bersama bisa menghalangi satu kantor atau satu jaringan seluler. Jeda singkat sudah cukup untuk mematahkan ritme bot.
  • Berharap plugin menghentikan banjir di tingkat jaringan. Lalu lintas yang cukup besar untuk memenuhi koneksi server tidak pernah sampai ke WordPress. Itu tugas CDN Anda.

Tanpa plugin

Verifikasi Googlebot secara manual. Untuk IP mencurigakan dari access log Anda:

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

Kedua arah harus cocok dan berakhir dengan googlebot.com atau google.com. Google juga memublikasikan rentang IP crawler-nya sebagai file JSON yang bisa Anda jadikan pembanding.

Batasi laju di server. Di Nginx, Anda bisa membatasi permintaan per 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;
}

Aturan server memang cepat, tetapi tidak mengenal WordPress. Aturan itu tidak bisa membedakan checkout dari pencarian, memerlukan akses root yang tidak diberikan sebagian besar paket hosting, dan memelihara daftar IP Google secara manual itu merepotkan. Firewall CDN juga pilihan yang bagus jika CDN Anda mengizinkan Anda menulis aturan.

Jika terjadi masalah

  • Pengunjung sungguhan mendapat 429. Cari IP-nya di log. Jika itu kantor atau alat yang Anda pakai, tambahkan ke daftar izin. Pertimbangkan untuk menaikkan jatah per menit.
  • Search Console melaporkan kesalahan crawl. Crawler Google yang asli dikecualikan, jadi pastikan kesalahan itu tidak berasal dari aturan server atau CDN di luar Hushfort.
  • Situs masih kewalahan. Banjirnya mungkin terlalu besar untuk plugin apa pun. Nyalakan mode serangan di CDN Anda. Mode darurat Hushfort bisa menyalakan mode "Under Attack" Cloudflare untuk Anda, memakai kunci API Anda sendiri, lalu mematikannya kembali setelahnya.

Dengan Hushfort

Perlindungan Beban adalah bagian dari Hushfort Pro, add-on yang dipasang di atas plugin gratis.

Lapisan Perlindungan Beban dari Hushfort memberi setiap IP jatah 120 poin per menit secara bawaan. Tampilan halaman bernilai 1, admin-ajax GET 1 dan POST 2, REST GET 2 dan POST 3, tambah ke keranjang 3, pencarian 5, POST lainnya 5, XML-RPC 10, dan 404 menambah 4. Checkout, callback pembayaran, WP-Cron, dan layar wp-admin gratis.

  • IP yang melampaui jatah mendapat 429 singkat dan jeda 10 menit.
  • Googlebot dan Bingbot palsu, yang memakai nama itu dari IP yang tidak ada di daftar resmi, diblokir. Bot mesin pencari yang terverifikasi dikecualikan. Satu-satunya pengambilan data ke luar adalah daftar IP crawler publik milik Google dan Bing.
  • Mode darurat bisa menyalakan mode "Under Attack" Cloudflare dengan kunci API Anda sendiri.
  • Modul ini dimulai dalam mode Pantau.

Dalam pengujian kami sendiri, IP yang melampaui jatahnya tetap berhasil menyelesaikan checkout sementara permintaan lainnya mendapat 429.

Pertanyaan umum

Bagaimana cara mengetahui kunjungan Googlebot itu asli?

Periksa IP-nya. Google memublikasikan rentang IP yang dipakai crawler-nya, dan reverse DNS lookup pada IP Googlebot asli berakhir dengan googlebot.com atau google.com. User agent Googlebot dari IP lain mana pun adalah palsu.

Apakah memblokir Googlebot palsu merugikan SEO saya?

Tidak, selama verifikasinya dilakukan lewat IP. Crawler Google dan Bing yang asli dikenali dan dikecualikan, jadi hanya penyamar yang ditolak.

Apa arti status 429?

Artinya Too Many Requests (terlalu banyak permintaan). Status ini meminta klien untuk melambat. 429 dari Hushfort hanya berlaku singkat, jadi orang sungguhan yang kebetulan sangat aktif bisa melanjutkan setelah jeda.

Bisakah plugin menghentikan serangan DDoS?

Tidak untuk serangan di tingkat jaringan. Lalu lintas seperti itu membanjiri server sebelum WordPress berjalan. CDN seperti Cloudflare-lah perisai yang sesungguhnya di sana; plugin menangani banjir permintaan yang sampai ke WordPress.

Mengapa pencarian dan 404 dihitung lebih mahal?

Pencarian menjalankan kueri database, dan 404 biasanya berasal dari pemindai yang mencari-cari file. Keduanya jauh lebih membebani server daripada tampilan halaman dari cache.

Laporkan bug atau minta fitur

Pesan Anda langsung diterima tim yang membangun Hushfort.

Tentang apa?

Hanya dipakai untuk membalas Anda.

Data ini hanya kami pakai untuk membalas Anda. Privasi