KlavyeMonitor.com    


MENÜ

. ANASAYFA

. KABLOSUZ & TELSİZ

. AVUÇİÇİ & CEP

. LINUX

. WINDOWS

. WEB

. INTERNET

. BİLGİSAYAR

. ANTİK BİLGİ

. ARAMA

. BAĞLANTILAR
. Spam Gönderenler

POPÜLERLER

htmlders

linux kitapları

proxy adresleri kablo

sayisal loto sans topu

elmekyonlen

TDGTW-WarXing

eposta yazim kurallari

BearShare Morpheus ve iMeshi Hizlandirma Yolu

proxy-hiz

komutlar

web hosting hizmetleri

inet-hiz

linux ile windowslari uyutmak

squidle2kat

yedekleme

internet hizi

database oracle mysql sql komutlari

windows mydoom virus

PDA ve cep telefonu icin www sayfasi yapimi


= = =

Favorilere ekle
Google




Web Sayfalarını Tarayan Spam ve Casus Robotları Engelleme


Mart 2004
İlker Fıçıcılar

Web sayfalarımı her gün pek çok robot gezip bandwidth'den giderek daha fazla çalmaya başlayınca bir çözüm aramak gerekti. Web sunucularımın önünde squid bir httpd hızlandırıcı olarak çalışıyor. Uygun refresh_pattern ayarlarıyla squid'in sunucuyu oldukça rahatlattığını söyleyebilirim. Squid'le mutluyuz ve mutluluk gölgeleyici bu kötü robotlardan kurtulmak istiyoruz.

Squid ile Apache bir denge içinde çalışmalı, aksi halde kullanıcılar, sayfayı gezenler istenmeyen sonuçlarla karşılaşıyorlar. Performans için gerek squid'de gerekse apache'de pek çok ayarı sınırlarında kullanmak gerekiyor. Örneğin apache'de mod_gzip açtıysanız, apache'nin önündeki squid'in sayfaların farklı biçimlerini de önbellekte tutmasını sağlamalısınız, yoksa gzip ile sıkıştırılmış sayfaları gösteremeyen bir tarayıcı sayfalarınızı okuyamayacaktır.

Benzer şekilde kötü robotları apache içinden engellerseniz ve uygun Vary başlıkları eklemezseniz, ya robotlar squid'de daha önce normal kullanıcılarca önbelleklenmiş bilgiye ulaşacaklar ve engellenmemiş olacaklar, ya da ilk davranan kötü bir robotsa ve bu istek önbelleğe girdiyse normal kullanıcılar da Erişim Yasak sayfası ile karşılaşacaklardır. Bunu önlemek için apache'ye Header append "Vary:" "User-Agent" şeklinde bir ekleme yapabilirsiniz, ama bu da squid'in her sayfanın her tarayıcı için ayrı bir kopyasını önbellekte tutmasına yol açar. Bu ise, ziyaret eden farklı user-agent sayısına göre, performansını on kattan daha fazla düşürüyor.

Bu durumda, apache'de vary başlığı ayarı olarak sadece Header append "Vary:" "Accept-Encoding" kullanmak, apache'de RewriteEngine ile RewriteCond %{HTTP_USER_AGENT} EmailSiphon ve RewriteRule .* - [F,L] biçimindeki yasaklamaları kullanmamak gerekiyor. Yapmak istediğimizi squid acl'leri ile halledeceğiz.

Önce, apache veya squid http_accelerator kayıtlarınızı inceleyerek sizi rahatsız eden robotları tesbit etmelisiniz. Aşağıdaki liste veya internetteki başka listeler yerine kendi istenmeyen robotlar listenizi oluşturmanız verimlilik açısından yararlı olacaktır. Yine de bu kısa listeyi kullanabilirsiniz:


EmailSiphon
Microsoft\ URL\ Control
NPBot
Windows\ XP
FrontPage
MSIECrawler
HTTrack
^Mozilla/4.0$
Sqworm
WebCopier
WebReaper

Bu listedeki FrontPage sayfanızı editlemeye çalışıp başarılı olamadıkça tekrar tekrar deneyen acemileri engellemek için. Windows XP yazısı ise hiçbir normal user-agent'ta görülmez. Diğerleri ise spam, casus ve offline robotları / agent'ları genelde. Sayfanızın Teleport, GetRight vb. programlarla sömürülmesini istemiyorsanız listeyi bunları da ekleyerek biraz daha genişletebilirsiniz:


DA\ 
GetRight
FlashGet
Teleport
EmailSiphon
Microsoft\ URL\ Control
NPBot
Windows\ XP
FrontPage
MSIECrawler
HTTrack
^Mozilla/4.0$
Sqworm
WebCopier
WebReaper

Bu listeyi bir dosyaya yazıp kaydedin. Ben /usr/local/share/koturobot.lst dosyasına yazıp, squid.conf ayar dosyasına şu satırları ekledim:

acl koturobot browser "/usr/local/share/koturobot.lst"
http_access deny koturobot

Evet, hepsi bu. Eğer www sunucularınızın önünde bir squid httpd hızlandırıcı olarak çalışıyorsa, bu ayar sayfalarınızdan eposta adresi ve resim çalınması engellemek yönünde iyi bir adım olacak ve bandwidth'inizin de bir miktar rahatlamasını sağlayacaktır.

Eğer, squid'siz sadece apache sunucuyu kullanıyorsanız, virtual hostlarınız için aşağıdaki gibi bir ayar eklemesiyle apache'nin bu robotları engellemesini sağlayabilirsiniz:


RewriteEngine on
RewriteCond %{HTTP_USER_AGENT} "DA " [OR]
RewriteCond %{HTTP_USER_AGENT} GetRight [OR]
RewriteCond %{HTTP_USER_AGENT} FlashGet [OR]
RewriteCond %{HTTP_USER_AGENT} Teleport [OR]
RewriteCond %{HTTP_USER_AGENT} EmailSiphon [OR]
RewriteCond %{HTTP_USER_AGENT} "Microsoft URL Control" [OR]
RewriteCond %{HTTP_USER_AGENT} NPBot [OR]
RewriteCond %{HTTP_USER_AGENT} "Windows XP" [OR]
RewriteCond %{HTTP_USER_AGENT} FrontPage [OR]
RewriteCond %{HTTP_USER_AGENT} MSIECrawler [OR]
RewriteCond %{HTTP_USER_AGENT} HTTrack [OR]
RewriteCond %{HTTP_USER_AGENT} "^Mozilla/4.0$" [OR]
RewriteCond %{HTTP_USER_AGENT} Sqworm [OR]
RewriteCond %{HTTP_USER_AGENT} WebCopier [OR]
RewriteCond %{HTTP_USER_AGENT} WebReaper
RewriteRule .* - [F,L]

Bu yöntemle sadece user-agent'inden tanınabilen robotları durdurabiliyoruz. Diğerleri, user-agent bilgilerini normal olanlara benzeterek bu filtrelerden geçebiliyorlar. Bunları ise IP adreslerinden, IP bloklarından tanıyarak engellemek mümkün. Bu engeli de ister iptables ile, istersek de squid ile koyabiliriz. Kısa bir Kötü Robot IP Listesi olarak şunlar kullanılabilir:


64.140.49.66/30
12.148.196.128/25
12.148.209.192/26
63.148.99.224/27

Bu listeyi, /usr/local/share/koturobotip.lst gibi bir dosyaya kaydettikten sonra, iptables ile şu şekilde kullanıyoruz:


cat /usr/local/share/koturobotip.lst | while read ipler
do
iptables -A INPUT -i $DEV -s $ipler -p tcp --destination-port 80 -j DROP
done


Squid içinden kullanabilmek için listeyi önce squid'in anlayabileceği biçime getirelim:


64.140.49.66-64.140.49.69/255.255.255.69
12.148.196.128-12.148.196.255/255.255.255.255
12.148.209.192-12.148.209.255/255.255.255.255
63.148.99.224-63.148.99.255/255.255.255.255

Bu IP listesini /usr/local/share/koturobotadres.lst dosyasına yazıp şu iki satırı da squid'e ekleyerek squid'in bu adresleri engellemesini sağlarız:

acl koturobotadres src "/usr/local/share/koturobotadres.lst"
http_access deny koturobotadres


Daha kapsamlı bir Kötü Robotlar Listesi olarak aşağıdaki kullanılabilir:


almaden
CherryPicker
Crescent
DA\ 
DIIbot
EmailCollector
EmailSiphon
EmailWolf
ExtractorPro
FlashGet
FrontPage
GetRight
HTTrack
InternetSeer\.com
LinkWalker
Microsoft\ URL\ Control
Mozilla.*Indy
Mozilla.*NEWT
^Mozilla/4.0$
MSIECrawler
NICErsPRO
NPBot
psbot
sitecheck\.internetseer\.com
Sqworm
Teleport
WebBandit
webbandit
WebCopier
WebEMailExtrac
WebReaper
Windows\ XP
Zeus.*Webster

Son Not: Bazen çok ufak unutkanlıklar, sorunu yanlış yerde aramamıza ve epeyce bir zaman kaybetmemize yol açabilirler. Sözün özü, yukarıdaki değişiklikleri yaptıktan sonra squid ve/veya apache'yi yeniden başlatmayı unutmamakta yarar var.


Yardımcı Kaynaklar:


Mart 2004
İlker FIÇICILAR

İlgili Benzer Yazılar:


Arama önerileri: antispam, antivirus, apache, squid, bogofilter, pyzor, razor, HTTPD_ACCELERATOR, cache, proxy, web, www, httpd.conf, httpd, acl, user_agent, browser, spam, block, spy, spam abuse, nosppam, robots.txt, robot.txt, bot,


Kaynak gösterecekler için referans: "Web Sayfanızı Ziyaret Eden Kötü Web", İlker Fıçıcılar, http://www.KlavyeMonitor.com/kotu_robot_engelleme.html


 
 
 
   
Bu sayfaları Linux'ta oluşturan programı yazan: İlker Fıçıcılar