• DONATE to NULLED!
    Вы можете помочь Форуму и команде, поддержать финансово.
    starwanderer - модератор этого раздела будет Вам благодарен!

Поиск Плагин антиспама и флуда

Статус
В этой теме нельзя размещать новые ответы.

Limmer

Профессор
Регистрация
3 Июн 2008
Сообщения
202
Реакции
45
Кто знает есть плагины антиспама и флуда, чтобы блокировать атаки специальных спамерских и флудерских программ на сайт, можно на автомате блокировать айпи с которого производится спам, очень надо!
 
А что мешает поставить: каптчу + akismet + wp-ban + parasite eliminator
 
А что мешает поставить: каптчу + akismet + wp-ban + parasite eliminator

это все стоит, но от флуда не помогает, если юзер юзает прогу типа флудерского эксплоита, пробивая капчи...может есть плагин задежки публикования комментов или автоматический бан зарегистрированных на блоге участников
 
Тогда, могу предложить модуль AntiOverload,
Модуль предназначен для ограничения доступа к сайту или к страницам, где он включён.
Принцип работы в том, что запоминается ip-адрес и время обращения с этого адреса. И если в течение заданного времени происходит обращение с того же адреса, то ему выдаётся ошибка 503.Т.е Если вы нажмёте кнопку обновить 3 раза подарят,вам выдаст это сообщение


Установка:
*В корне сайта создаем папку tmp и выдаём права 777(Если папка есть,то не чего создовать не надо.)
*Открываем index.php и перед: ?>, вставляем:
/* Время задержки в секундах */

$ad_delay=3;

/* Путь к папке с временными файлами. Должен существовать */

$ad_DirName=$_SERVER['DOCUMENT_ROOT'].'/tmp';



/*

*---------------------------------------------------------

* Список поисковых роботов.

* Очень не хорошо, если поисковый робот будет натыкаться

* на ошибки на сайте. Ему это может сильно не понравиться.

* Поэтому пишем список юзер-агентов роботов; добавляем или

* удаляем, что нужно.

*---------------------------------------------------------

*/

$ad_Robots_UserAgent=array(

'aipbot',

'Aport',

'eStyleSearch',

'Gigabot',

'Gokubot',

'Google',

'MJ12bot',

'msnbot',

'PlantyNet_WebRobot',

'StackRambler',

'TurtleScanner',

'Yahoo',

'Yandex',

'YaDirectBot',

);



/*

*----------------------------------------------------------

* Функция создаёт в указанной директории файл, начинающийся

* с буквы a (для отличия от других возможных файлов) и

* содержащий в имени ip-адрес клиента.

*----------------------------------------------------------

*/

function ad_WiteIP($dir){

$f=fopen($dir.'/a'.$_SERVER['REMOTE_ADDR'], 'w');

fclose($f);

}

/*

*----------------------------------------------------------

* Проверка на наличие в поле HTTP_USER_AGENT чего-нибудь из

* вышенаписанного списка.

*----------------------------------------------------------

*/

$ad_IsRobot=false;

foreach ($ad_Robots_UserAgent as $match){

if (strstr($_SERVER['HTTP_USER_AGENT'], $match)){

$ad_IsRobot=true;

break;

}

}



/*

*---------------------------------------------------------

* Поисковые роботы не любят, когда к адресу страницы

* добавляется переменная сессии. Поэтому, если на сайте

* используются сессии, то их лучше включать, если агент -

* не робот.

* Если сессии не используются, то этот кусок можно убрать.

*---------------------------------------------------------

*/

if (!$ad_IsRobot){

session_start();

}



if (!$ad_IsRobot){

/*** Чтение каталога и удаление старых файлов ***/

$ad_dir =opendir($ad_DirName)

or die('Отсутствует директория для временных файлов');

$ad_now =time();

$ad_forbid =$ad_now-$ad_delay;

/* IP-адрес в имени файла, начинающегося на букву a,

а время обращения - время изменения файла */

while (false!==($ad_FName=readdir($ad_dir))){

if (ereg('^a[1-9]',$ad_FName)

&& (@ filemtime($ad_DirName.'/'.$ad_FName)<$ad_forbid)){

@ unlink($ad_DirName.'/'.$ad_FName);

}

}

closedir($ad_dir);

/*** Проверка на существование пометки

о недавнем обращении с данного ip-адреса ***/

if (file_exists($ad_DirName.'/a'.$_SERVER['REMOTE_ADDR'])){

/* Если обращение было недавно, то выводим сообщение об ошибке */

header('HTTP/1.0 503 Service Unavailable');

header('Status: 503 Service Unavailable');

header('Retry-After: '.$ad_delay*3);

?>

<!doctype html public "-//W3C//DTD HTML 4.01//EN"

"http://www.w3.org/TR/html4/strict.dtd">

<html>

<head>

<title>Ошибка 503</title>

<meta http-equiv="Content-Type" content="text/html; charset=Windows-1251" />

</head>

<body>

<h1>Ошибка 503 (Service Unavailable)</h1>

<p>Сервер не может в данный момент выдать запрашиваемую Вами страницу.

Попробуйте вызвать эту страницу позже (клавиша F5).</p>

</body>

</html>

<?php

ad_WiteIP($ad_DirName); // Перед выходом записываем ip

exit;

}else{

ad_WiteIP($ad_DirName);

}

}
Сохраняем файл, как только загрузиться страница,нажимаем быстро кнопку F5(обновить страницу) 4-6 раз подряд.

ЗЫ при кешировании(WP-SUPER-CACHE) данный хак, работать не будет. При плагине HyperCache, не тестировал
 
у меня как раз и WP-SUPER-CACHE там стоит, но думаю перейти на HyperCache, вот и будет повод протестить

ps: спасибо за замороки ;)
 
Я решил все проблемы со спамом одним плагином math-comment-spam-protection. Ставишь один раз и наслаждаешься блогом без спама.
 
Для этих целей рекомендую Spam Karma II она правда на английском, но умеет много полезного:

1. Считает время между публикацией комментариев одним человеком, если оно маленькое, считает все это за спам.
2. Может почистить блог, если в него уже запостили 1000 спам-комментариев
3. Имеет кучу модулей против спама.
 
Статус
В этой теме нельзя размещать новые ответы.
Назад
Сверху