Cara menyekat trafik spam rujukan dengan webserver Apache

Cara menyekat trafik spam rujukan dengan webserver Apache

Dalam konfigurasi ini, anda akan mempelajari apakah trafik spam rujukan, bagaimana ia dihasilkan dan yang paling penting bagaimana untuk menyekat spam rujukan di Linux Apache Webserver.

Apa itu spam rujukan?

Spam rujukan adalah satu lagi gangguan yang dicipta oleh spammer yang menyebabkan pentadbir sistem, pemasar atau pemilik tapak yang tidak disedari secara tidak sengaja melawat atau menghubungkan kembali ke tapak spammer melalui akses atau log rujukan yang diterbitkan secara terbuka di laman web mangsa. Ini mungkin membawa kepada ranking enjin carian yang lebih rendah, dan juga untuk mengalirkan sumber pelayan anda.

Oleh kerana anda membaca artikel ini kemungkinan bahawa anda mungkin telah melihat trafik rujukan aneh yang memukul pelayan anda semasa mengikuti pautan yang anda mendarat di laman web yang tidak berkaitan sepenuhnya.

Bagaimana ia berfungsi

Semua hits yang dijana menggunakan teknik spam rujukan bukan pelawat tulen tetapi sebaliknya mereka adalah hasil daripada skrip automatik yang membuat permintaan HTTP sementara sengaja mengubah header HTTP dengan rujukan spam yang akan menyebabkan pelayan Web Server untuk log sebagai tulen. Di bawah ini anda boleh menemui sampel log akses Apache:

10.1.1.8 - - [10/Mar/2015: 11: 56: 55 +1100] "Dapatkan/http/1.1 "200 10543" http: // contoh.com/"" Mozilla/5.0 (x11; Linux x86_64) Applewebkit/537.36 (khtml, seperti tokek) krom/40.0.2214.111 Safari/537.36 " 

Dari yang di atas kita dapat membaca bahawa beberapa bentuk pengguna 10.1.1.8 Menggunakan penyemak imbas Chrome melawat halaman akar pelayan web kami, dari mana pautan rujukan berasal Contoh.com domain. Kemasukan log seperti itu boleh dihasilkan oleh sesiapa sahaja yang mempunyai akses ke alat yang betul. Mari kita gunakan curl perintah untuk menghasilkan rujukan palsu dari mydomain.Tempatan:

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

Sekarang, ketika kita memeriksa log Apache, kita dapat mencari entri berikut:

10.1.1.8 - - [10/Mar/2015: 12: 26: 20 +1100] "Dapatkan/http/1.1 "200 433" http: // mydomain.Tempatan "" curl/7.32.0 "" 

Di samping itu, dengan menggunakan curl Perintah Kita juga boleh mengubah jenis ejen:

 $ curl -a "Mozilla/5.0 (x11; Linux x86_64) Applewebkit/537.36 (khtml, seperti tokek) krom/40.0.2214.111 Safari/537.36 "-s -e http: // mydomain.http tempatan: // mysite.tempatan> /dev /null 

yang akan menghasilkan pelayan web anda untuk log:

10.1.1.8 - - [10/Mar/2015: 12: 31: 17 +1100] "Dapatkan/http/1.1 "200 433" http: // mydomain.Tempatan "" Mozilla/5.0 (x11; Linux x86_64) Applewebkit/537.36 (khtml, seperti tokek) krom/40.0.2214.111 Safari/537.36 " 

Di atas adalah spam rujukan dan ia dapat menipu alat statistik web anda seperti Google Analytics serta mengalirkan sumber pelayan anda.

Cara menyekat spam rujukan

Apa yang ingin kami capai di sini adalah dengan hanya menyekat lalu lintas dari rujukan yang mencurigakan. Contohnya, kita akan menghalang sebarang lalu lintas dari Contoh.com domain rujukan serta menyekat sebarang lalu lintas dari pautan rujukan yang mengandungi kata kunci spam di mana sahaja di URL.

Untuk ini kita memerlukan Apache menulis semula modul yang akan diaktifkan. Untuk melihat sama ada menulis semula Modul didayakan pada pelayan anda masukkan:

# apache2ctl -m | grep menulis semula menulis semula_module (dikongsi) sintaks ok 

Sekiranya anda tidak melihat output menulis semula modul tidak diaktifkan. Untuk membolehkan modul menulis semula:

# A2enMod Rewrite Enabling Module Rewrite. Untuk mengaktifkan konfigurasi baru, anda perlu menjalankan: Perkhidmatan Apache2 Restart # Service Apache2 Restart [...] memulakan semula pelayan web: apache2apache2: . okey 

Seterusnya, tukar tuan rumah maya andaAllowoverride tetapan. Sebagai contoh:

Dari: Indeks Opsyen Mengikuti Multiviews Multiviews Peruntukan Perintah Tiada Perintah, Menolak Membenarkan Dari Semua Ke:  

Sebaik sahaja anda membuat perubahan di atas mulakan semula pelayan web anda:

# perkhidmatan apache2 mulakan semula 

Pada peringkat ini, kami akan mempunyai dua pilihan bagaimana menggunakan penulisan semula kami untuk menyekat spam rujukan.

Pilihan pertama ialah memasukkan penyataan penulisan semula kami ke dalam fail konfigurasi laman web kami. Ini adalah pendekatan yang disyorkan kerana ia tidak memberi tekanan kepada sumber pelayan kerana semua penyataan penulisan semula hanya dibaca sekali semasa urutan permulaan Apache. Untuk melakukan ini masukkan baris penulisan semula berikut ke dalam fail konfigurasi laman web anda:

  Indeks Pilihan berikut Multiviews Multiviews AllowOverRide None Order Benarkan, Deny Benarkan dari semua penulisan semula pada RewriteCond %http_referer.com |.*Spam [NC] Rewriterule .* - [f]  

Sebaik sahaja anda melakukan perubahan di atas sila mulakan semula pelayan web Apache anda. Kelemahan konfigurasi di atas adalah bahawa anda mesti mempunyai akses root ke pelayan. Sekiranya anda tidak mempunyai akses pentadbiran pelayan, anda mempunyai pilihan untuk memasukkan .Htaccess Fail ke dalam direktori root laman web anda dengan kandungan berikut:

RewriteEngine on RewriteCond %http_referer Contohnya.com |.*Spam [NC] Rewriterule .* - [f] 

Kelemahan di atas .kaedah htaccess adalah bahawa ia dapat mengurangkan prestasi pelayan web anda dengan ketara sebagai .Htaccess fail perlu dibaca setiap kali permintaan HTTP dibuat.

Satu cara atau yang lain pelayan anda sekarang harus menafikan lalu lintas dari rujukan Contoh.com atau jika url rujukan mengandungi kata kunci spam. Untuk menguji ketepatan atau penapis spam rujukan anda curl perintah semasa memalsukan sumber rujukan. Permintaan anda sekarang harus menghasilkan akses terlarang (ralat Apache 403) yang disebabkan oleh .* - [f] Penulisan semula.

Tutorial Linux Berkaitan:

  • Pengenalan kepada enjin penyimpanan MySQL
  • Linux Apache Log Analyzer
  • Ubuntu 20.04 WordPress dengan pemasangan Apache
  • Perkara yang hendak dipasang di Ubuntu 20.04
  • Cara Mengurus dan Menyelesaikan Log Kubernet
  • Cara Menyiapkan Linux Apache Mysql Python Server
  • Sistem Hung Linux? Cara melarikan diri ke baris arahan dan ..
  • Panduan Penyelesaian Masalah Umum GNU/Linux untuk Pemula
  • Perkara yang perlu dilakukan setelah memasang ubuntu 20.04 Focal Fossa Linux
  • Penggunaan dan Contoh Perintah JournalCtl di Linux