PDA

Prikaži potpunu verziju : Kako blokirati posetioce iz jedne zemlje?


tarantula
1.7.2008, 2:19
Koji je najefikasniji način za blokiranje poseta iz određene zemlje?

Previše trošim resurse servera i preti mi suspenzija hosting naloga.
Razlog je nenormalno veliki broj poseta iz Amerike, čak 10-15 puta više nego iz Srbije.

Pokušao sam da sa sajta http://www.blockacountry.com/ skinem us IP adrese i blokiram ih iz .htaccess-a, ali bezuspešno.

Pokušao sam sa svojom IP adresom i .htaccess mi blokira pristup, ali sa kodom za us ne radi.

Neki savet?

nighthawk
1.7.2008, 15:00
Upravo sam bacio pogled na ovaj sajt, i generisao listu koji bi trebalo da blokira posetioce iz Srbije. Lista izgleda ovako <Limit GET HEAD POST>
order allow,deny
deny from 77.74.248.0/21
deny from 77.105.0.0/18
deny from 77.243.16.0/20
deny from 77.247.200.0/21
deny from 194.110.216.0/24
allow from all
</LIMIT>


Ovde fale adrese verat.net-a i jos nekoliko domacih ISP-a, sto znaci da bi oni mogli da pristupe sajtu bez ikakvih problema.

Isto se verovatno desava i u tvom slucaju, lista nije kompletna.

Trebalo bi da pratis ip adrese ljudi koji pristupaju tvom sajtu i da ona banujes samo one koje ti najvise smetaju. Uostalom, nema potrebe da blokiras celu jednu zemlju sa preko 250 miliona ljudi kad ti problem prave verovatno samo nekoliko opsega ip adresa.

tarantula
1.7.2008, 17:21
Hvala na odgovoru.
To sam i probao, samo kada pokusam da potrazim te IP adrese u Awstats-u Cpanel-a, vidim samo IP-ove iz Srbije, Bosne, Makedonije itd, ali nijedna od ovih sa najvise kacenja i saobracaja sto sam proveravao nije iz US. :S
Da li se mozda ne prikazuju ili sta li ne znam.

Uglavnom broj poseta i saobracaj je 10-15 puta veci ka US nego ka Srbiji.

nighthawk
1.7.2008, 20:57
Pa cela ta stvar sa iznalazenjem lokacije iz ip adrese je jako nepouzdana. Moze da se desi recimo da jedan veliki provajder iz Amerike da u zakup mali opseg ip adresa nekom ISP-u recimo iz Chilea, ili otvori svoju kancelariju u Cileu. Pri tome oni uopste nisu duzni da bilo koga obavestavaju o geografskoj lokaciji. Jedini nacin da se onda sazna geografska lokacija tih adresa je da se one prate tokom vremena. A moze da se desi recimo da jedna firma koja ima vise kancelarija u nekoliko zemalja koristi jedan opseg za sve te zemlje, onda adresa koja je juce bila dodeljena nekom iz Svajcarske moze danas da zavrsi u Poljskoj, a sutra da bude dodeljena nekom iz Italije. Geograske lokacije ip adresa uopste ne treba shvatati ozbiljno.

tarantula
2.7.2008, 0:18
Pa cela ta stvar sa iznalazenjem lokacije iz ip adrese je jako nepouzdana. Moze da se desi recimo da jedan veliki provajder iz Amerike da u zakup mali opseg ip adresa nekom ISP-u recimo iz Chilea, ili otvori svoju kancelariju u Cileu. Pri tome oni uopste nisu duzni da bilo koga obavestavaju o geografskoj lokaciji. Jedini nacin da se onda sazna geografska lokacija tih adresa je da se one prate tokom vremena. A moze da se desi recimo da jedna firma koja ima vise kancelarija u nekoliko zemalja koristi jedan opseg za sve te zemlje, onda adresa koja je juce bila dodeljena nekom iz Svajcarske moze danas da zavrsi u Poljskoj, a sutra da bude dodeljena nekom iz Italije. Geograske lokacije ip adresa uopste ne treba shvatati ozbiljno.


Kako onda da sprečim ovako nešto?

http://img376.imageshack.us/img376/8522/dfhdaa4lx9.th.gif (http://img376.imageshack.us/my.php?image=dfhdaa4lx9.gif)

:confused:

<Rio_da>
2.7.2008, 0:28
Da li se oni roboti pretrazivaca racunaju u hit-ove i potrosen bandwidth? A jedan moj drug je na vektor.net kablovskom operateru i kad gledam njegov IP u uTorrent-u pokazuje USA zastavu... tako da je vrlo moguce da nisu ameri za sve krivi...

nighthawk
2.7.2008, 15:14
Kako onda da sprečim ovako nešto?

http://img376.imageshack.us/img376/8522/dfhdaa4lx9.th.gif (http://img376.imageshack.us/my.php?image=dfhdaa4lx9.gif)

:confused:

Sa ovim podacima ne mozes da uradis nista. Treba da pratis koje ip adrese ti prave najvise problema, i da blokiras taj opseg (opseg je recimo 132.25.241.0-132.25.241.222 ili 132.25.241.0/24). Ako ti alati iz controlnog panela ne omogucavaju da vidis pojedinacne adrese onda bi sam morao da napravis sistem za pracenje kombinacijom php-a i mysql-a. To je lako uraditi, tesko je izanalizirati podatke.

b0xd
8.7.2008, 16:04
Pretpostavljam da imas neki dinamicki sajt, cim imas toliko poseta, po svemu sudeci php, jer je najzastupljeniji sta li.
Anyhow, na brzaka iskucah ovo ispod.

<?php
function provera($host)
{
$sock = fsockopen("whois.lacnic.net", 43, $errno, $errstr, 5);
if (!$sock)
return false;
fwrite($sock, $host."\r\n");
$rezultati = "";
while (!feof($sock))
$rezultati .= fgets($sock, 1024);
fclose($sock);

preg_match_all("/country:.*\n/", $rezultati, $drzava, PREG_PATTERN_ORDER);
list($smetje,$kod)=explode(":", $drzava[0][0]);
$kod = trim($kod);

$dozvoljeni_posetioci = array("CS"); //ovde dodajes country codes

if (!in_array($kod, $dozvoljeni_posetioci))
{ $pristup = 0; }
else
{ $pristup = 1; }


return $pristup;
}

if (provera($_SERVER['REMOTE_ADDR']) == 0) { die("not allowed"); }
?>


kod je prilicno self-explanatory.
u nizu dozvoljeni_posetioci dodaje kodove zemalja kojima zelis da odobris pristup.
sad recimo samo posetioci iz srbije mogu da pristupe sajtu.

cheers. :qliranje:

Andorea
12.7.2008, 9:33
Pored ovoga mozes da ublazis preopterecenje naredjujuci google crawleru da ti ne posecuje sajt precesto i ne jede time bandwidth, cini mi se da Google Analytics ima tu opciju