Hatalı çalışan robotlarla başa çıkmak için taktikler


9

Yasal nedenlerden dolayı otomatik olarak dizine eklenemeyen veya aranamayan bir sitem var. Bu, tüm robotları uzak tutmamız ve siteyi örümcek yapmasını önlememiz gerektiği anlamına gelir.

Açıkçası baştan beri izin vermeyen bir robots.txt dosyasına sahibiz. Ancak, robots.txt dosyasını gözlemlemek yalnızca iyi davranan robotların yaptığı bir şeydir. Son zamanlarda, daha az iyi davranan robotlarla ilgili bazı sorunlar yaşadık. Apache'yi birkaç kullanıcı aracısını yasaklayacak şekilde yapılandırdım ancak bunun üstesinden gelmek oldukça kolay.

Yani, soru, robot benzeri davranışı algılamak ve yanıt vermek için Apache'yi (belki de bir modül kurarak) yapılandırmanın bir yolu var mı? Başka fikir var mı?

Şu anda yapabileceğim tek şey günlüklerin manuel olarak denetlenmesine dayalı IP adreslerini yasaklamak ve bu sadece geçerli bir uzun vadeli strateji değil.


Apache modülleri (mod_evasive'a göz atın) hakkında soru sorduğunuz ve çözümünüzün bazı özel günlük ayrıştırma ve iptables kurallarını içerebileceği göz önüne alındığında, belirli bot davranışlarını engelleme hakkında sorularınız varsa bu konu ServerFault.com için daha iyi bir aday olabilir .
danlefree

Yanıtlar:


7

Ziyaret edildiğinde, botun kullanışlı adresini ve IP adresini yakalayan ve ardından bunlardan birini veya her ikisini kalıcı olarak engelleyen bir .htaccess dosyasına ekleyen gizli bir sayfaya bağlayabilirsiniz. Otomatiktir, böylece onu korumak için hiçbir şey yapmanız gerekmez.


Bu çok ilginç bir fikirdir, ancak çok genel bir kullanıcı aracısı kullanmaları durumunda, herhangi bir kullanıcı aracısını otomatik olarak kilitlemek istemezsiniz.
Kris

O zaman IP adreslerine bağlı kalırım. Ayrıca, ben adreslerini kullanır ve bir IP bloğundan bir desen görürseniz, tek tek IP'lerin uzun bir listesini tutmak yerine hepsini tek bir basit kuralla kolayca engelleyebilirsiniz.
John Conde

3
Sen olabilir tesadüfen sitenizi taramasını kötü botlar durdurma gelen açıklanan yöntemi kullanın. Ancak 1) Baypas etmek mümkündür (kötü botlar - ve ustaları - bal küplerini nasıl tanımlayacağını ve onlardan nasıl kaçınılacağını öğrenebilir); ve 2) Bu yöntem aynı zamanda, yanlış davranan botlara ait olarak kara listeye alınan IP'leri yeniden tahsis eden insan kullanıcıları yasal olarak da engelleyebilir. Eğer bir varsa yasal veya düzenleyici yükümlülüğünü değil, site seached otomatik olarak dizine veya sahip olmalıdır uygun kimlik doğrulama kullanmak ve sadece doğrulanmış kullanıcılara erişim sağlar. Diğer her şey güvenli değil.
Ücretsiz Radikal

İyi fikir. Ama, eğer uygularsam, kazara bal kabına kendim vurmaya devam edeceğim ve kendi sitemden bloke olmaya devam edeceğim.
JW01

@ JW01 Bundan kaçınmak için yapmanız gereken tek şey bunu işleyen sayfayı ziyaret etmektir. Üzerinde hiç içerik olmaması gereken bir içerik olmadığı için.
John Conde

2

Project Honeypot'un IP kara listesi ile arayüz oluşturan bir Apache modülünü kullanarak diğer kişilerin kötü IP'leri tanımlamak için yaptıkları çalışmalarda piggyback yapabilirsiniz . Bunu büyük ölçekte yapıyorsanız, bir bal küpü çalıştırmayı teklif etmek muhtemelen kibar olacaktır.


Siteme Project Honeypot'un IP kara listesini eklediğimde şaşırdım. Yıllar süren ızdırap, kötülükleri engelleyerek sona erdi. Ben de onunla arama motoru botları tespit edebilirsiniz düşünüyorum. Bunun için artı 1.
JW01

Ancak konunun özü şudur: Herkese açık sayfalarınız varsa, dizine eklenmesini bekleyin. Bu nedenle, bir tür kimlik doğrulaması gereklidir. Michael Hampton'un cevabına bakınız .
JW01

2

Bir yorumda Gisle Hannemyr'in de belirttiği gibi, bunu yapmanın en iyi yolu tüm kullanıcıların oturum açmasını istemek ve oturum açmamış kimseye kısıtlı içerik sağlamaktır.

Herhangi bir nedenle oturum açmanız gerekmiyorsa, hala kullanabileceğiniz birkaç geri dönüş vardır (feragatname: her ikisi de kısmen veya tamamen benim hatamdır):

  1. OWASP ModSecurity'nin Çekirdek Kural Seti bot (örn numara yapıyor onun User-Agent string) Bir tarayıcı olarak kendini gizlemeye adımlar atmış olsa bile, otomasyon algılamak için tasarlanmış bir kurallar içermektedir. VPS, özel sunucu veya bundan daha büyük bir şey gibi sunucunuzun tam denetimindeyseniz, bu kuralları ModSecurity ile kullanabilirsiniz .

    Bu kural kümesi ayrıca çok çeşitli uygunsuz etkinlikleri durdurmayı amaçlayan başka kurallar da içerir; Eğer bakmadıysanız kesinlikle yapmalısınız.

  2. Sunucunuz üzerinde tam denetime sahip değilseniz (yani paylaşılan web barındırma işindeyseniz) ve barındırıcınız kendi ModSecurity kurallarınızı kullanmanıza izin vermiyorsa, kendi Kötü durumum gibi uygulama düzeyinde bir şey deneyebilirsiniz Davranış . Bu projeye 2005 yılında blog spam'ları ve sizi ilgilendiren içerik kazıyıcılarıyla savaşmak için başladım. Herhangi bir PHP tabanlı web sitesine eklenebilir.

    Ayrıca, Kötü Davranış kurallarının çoğunun ModSecurity Çekirdek Kural Seti'ne dahil edildiğine dikkat etmeliyim, bu kuralları etkinleştirdiğiniz sürece, her ikisini de çalıştırmak oldukça gereksiz olacaktır. Bu kurallar, Temel Kural Kümesinde Kötü Davranış kaynaklı olarak açıklanır.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.