Форум АНТИЧАТ

Форум АНТИЧАТ (https://forum.antichat.xyz/index.php)
-   PHP, PERL, MySQL, JavaScript (https://forum.antichat.xyz/forumdisplay.php?f=37)
-   -   Посоветуйте анти Ddos скритп ? Http Flood (https://forum.antichat.xyz/showthread.php?t=172965)

Adio 23.01.2010 14:15

Посоветуйте анти Ddos скритп ? Http Flood
 
Вообщем какие то казлы начинают парсить мой сайт выдирать мэйлы . Но как там их мало - они все равено парся мои 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:
PHP код:

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

Цитата:

Сообщение от Deathdreams
Какие проблемы?
Вот скрипт, с реализацией помог Gifts:
PHP код:

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

Цитата:

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

Имхо здесь нужен не 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

Цитата:

Сообщение от svesve
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 посетителей (парсеров, это неважно, фактически тот же посетитель.) падает сервер.


Время: 09:51