PDA

Просмотр полной версии : Посоветуйте анти Ddos скритп ? Http Flood


Adio
23.01.2010, 14:15
Вообщем какие то казлы начинают парсить мой сайт выдирать мэйлы . Но как там их мало - они все равено парся мои 80 тыс страниц. Сайт иногда падает из за того что эти уроды из компов 5 точно парсят.
Так вот я на одном сайте видел такую штуку когда парсишь то тебя блокирует сайт по ип т.е по определенному количесву запросом типа анти http flood Что посоветуйте такое не сильно сложено просто что бы этих дураков банить ???

Deathdreams
23.01.2010, 14:26
Попробуй BASIC авторизацию.
где надо будет ввести рандомно сгенерированый пароль.
Любую "антиддос" говносистему можно обойти.
Буть то сессии или куки.

Adio
23.01.2010, 14:27
Нет мне нужно что бы было так как есть только при большом количесве запросов с ип блокировался юзер ! я же не могу все время сидеть и палить ИП атакуюищих и все время блочить мануально. Я хочу что бы скрипт определял ип и если с этого ип больше 20 запросов в сек то блочит типа такого

Deathdreams
23.01.2010, 14:33
Какие проблемы?
Вот скрипт, с реализацией помог Gifts:

function make_mask($ip)
{
$ip = trim($ip);
$out_ip = preg_replace('/\*+/i','0',$ip);
$mask = preg_replace(array('/\d+/', '/\*+/'), array('255','0'), $ip);
return array($out_ip,$mask);
}
function check_ip($needle, $haystack)
{
$tmp = make_mask($haystack);
return ((ip2long($needle) & ip2long($tmp[1])) == ip2long($tmp[0]));
}


Использование: check_ip($_SERVER['REMOTE_ADDR'], "С кем нужно сверить");
Нужно просто создать файл с масками IP адресов с которых идёт доступ к сайту, например 127.0.0.*

Теперь все IP ( 127.0.0.0-255 ) будут блокироваться

Adio
23.01.2010, 14:37
Какие проблемы?
Вот скрипт, с реализацией помог Gifts:

function make_mask($ip)
{
$ip = trim($ip);
$out_ip = preg_replace('/\*+/i','0',$ip);
$mask = preg_replace(array('/\d+/', '/\*+/'), array('255','0'), $ip);
return array($out_ip,$mask);
}
function check_ip($needle, $haystack)
{
$tmp = make_mask($haystack);
return ((ip2long($needle) & ip2long($tmp[1])) == ip2long($tmp[0]));
}


Использование: check_ip($_SERVER['REMOTE_ADDR'], "С кем нужно сверить");
Нужно просто создать файл с масками IP адресов с которых идёт доступ к сайту, например 127.0.0.*

Теперь все IP ( 127.0.0.0-255 ) будут блокироваться

Негодиться ! Так как я должен сам палить кто атакует !!! Я же выше написал...

GlooK
23.01.2010, 14:44
Негодиться ! Так как я должен сам палить кто атакует !!! Я же выше написал...
Имхо здесь нужен не PHP, а детальная настройка веб-сервера.

Adio
23.01.2010, 14:46
Ну ну... я видел скрипт когда то но не помню как называеться - так вот он блокирует тебя если ты перезагрузишь раз 20 страницу - потом вылазит страница твой ИП заблокирвоан !

svesve
23.01.2010, 15:29
http://forum.antichat.ru/showpost.php?p=1699109&postcount=3
http://forum.antichat.ru/showpost.php?p=1725619&postcount=4

у меня стоит 1 из них. Работает на ура.

Solker
23.01.2010, 15:57
Записывать в базу все обращения к сайту, и если число обращений с одного IP превышает например 40 запросов в минуту, то создавать правило в ipfw, deny на этот ip. Или, что там у вас.

b3
23.01.2010, 16:05
http://forum.antichat.ru/showpost.php?p=1699109&postcount=3
http://forum.antichat.ru/showpost.php?p=1725619&postcount=4

у меня стоит 1 из них. Работает на ура.
1-й скрипт не блокирует поисковых ботов, а значит в парсере можно указать ЮзерАгент любого поискового бота и вся система идет лесом.

В добавок если я правильно понял то у ТС парсят контент, а причем тут блокировка если сраницу много раз обновили, парсер при первом посещении украдет все что ему нужно. Если у него парсеры по всему сайту ищут, тут нужно блокировать доступ по Хитам в минуту к примеру, человек за минуту не в состоянии прочитать более 10 страниц, а парсер может и 100 спарсить. Либо блокировать по общему кол-ву хостов, к примеру в день разрешено просмотреть 100 страниц. Но все ето фигня, т.к. прокси можно прикрутить к парсеру.

Сайт иногда падает из за того что эти уроды из компов 5 точно парсят.
Может стоит переехать на более мощное железо раз у тебя от 5 посетителей (парсеров, это неважно, фактически тот же посетитель.) падает сервер.