Ловушка для спам-бота

Многие спам-боты, чтобы скрыть свои реальные имена (названия), которые легко отследить по записи user_agent, изменяют эту запись, меняя её на записи разных браузеров (например: «mozilla/4.0 (compatible; msie 5.5; windows nt 5.0)» и так далее). Также эти боты игнорируют стандарты записей для файла robots.txt (описание стандарта Вы можете прочесть здесь http://www.robotstxt.org/wc/exclusion.html robots.txt standard)..
Можно, конечно, пойти путём записи нужных инструкций в файл robots.txt, а можно и предпринять другой способ, который мы опишем ниже.

Метод №1

Используем специальную директорию /bot-trap:
1. создайте поддиректорию /bot-trap (можете использовать любое другое имя)
2. сделайте такую запись в файле robots.txt:

user-agent: *
disallow: /bot-trap/

3. вставьте невидимую ссылку (это пиксел размера 1х1) в самом начале входной страницы сайта:

Теперь можно ждать и просматривать лог сервера, чтобы посмотреть кто перешёл по этой ссылке.
Человек не увидит этой ссылки, поэтому не сможет по ней перейти, а поисковые системы управляются директивами, записанными в фале robots.txt , поэтому никогда не посетят директорию /bot-trap.

4. В созданную нами директорию мы поместим /bot-trap/index.php. С помощью этого скрипта мы будем автоматически сохранять все ip адреса в файл blacklist.dat.
Для начала создайте пустой файл ../blacklist.dat и сделайте его доступным для чтения и записи на сервере.

* В тексте скрипта измените некоторые значения

<?phpif(phpversion() >= "4.2.0") {extract($_server);}?><html><head><title> </title></head><body><p>Здесь нечего смотреть. Так что же Вы здесь делаете?</p><p><a href="http://your.domain.ru/">вернуться назад</a></p><?php$badbot = 0;/* перебираем все записи файла blacklist.dat, чтобы не допустить задвоенности данных */$filename = "../blacklist.dat";$fp = fopen($filename, "r") or die ("Ошибка открытия файла ... <br>n");while ($line = fgets($fp,255)) {$u = explode(" ",$line);if (ereg($u[0],$remote_addr)) {$badbot++;}}fclose($fp);if ($badbot == 0) { /* отсылаем информацию веб-мастеру */$tmestamp = time();$datum = date("y-m-d (d) h:i:s",$tmestamp);$from = "badbot-watch@domain.ru";$to = "hostmaster@domain.ru";$subject = "Внимание! На сайт заходил спам-бот!";$msg = "Бот пришёл с $request_uri $datum n";$msg .= "адрес $remote_addr, агент $http_user_agentn";mail($to, $subject, $msg, "from: $from");/* добавляем запись в лог-файл blacklist.dat */$fp = fopen($filename,'a+');fwrite($fp,"$remote_addr - - [$datum] "$request_method $request_uri $server_protocol" $http_referer $http_user_agentn");fclose($fp);}?></body></html>


5. Чтобы исключить повторный заход спам-бота на страницвы сайта, перед выводом любой страница сайта нужно проверять содержимое файла blacklist.dat:

<?php include($_server['document_root'] . "/blacklist.php"); ?>


Это текст скрипта blacklist.php , который нужно подключать ко всем страницам Вашего сайта:

<?phpif(phpversion() >= "4.2.0") {extract($_server);}$badbot = 0;/* перебираем все записи файла blacklist.dat */$filename = "../blacklist.dat";$fp = fopen($filename, "r") or die ("Ошибка открытия файла ... <br>n");while ($line = fgets($fp,255)) {$u = explode(" ",$line);if (ereg($u[0],$remote_addr)) {$badbot++;}}fclose($fp);if ($badbot > 0) { /* это спам-бот, запрещаем вход на сайт */sleep(12);print ("<html><head>n");print ("<title>Сайт недоступен.</title>n");print ("</head><body>n");print ("<center><h1>Добро пожаловать!</h1></center>n");print ("<p><center>Этот сайт временно недоступен ...</center></p>n");print ("<p><center>Если Вы считаете, что это ошибка, отправьте письмо владельцу сайта.</center></p>n");print ("</body></html>n");exit;}?>


Метод №2

Другой метод не использует php и также запрещает доступ спам-ботов к Вашему сайту. Он заключается в использовании файла .htaccess.

Пример записи:

setenvifnocase user-agent «indy library» bad_bot
setenvifnocase user-agent «internet explore 5.x» bad_bot
setenvif remote_addr «195.154.174.[0-9]+» bad_bot
setenvif remote_addr «211.101.[45].[0-9]+» bad_bot
order allow,deny
allow from all
deny from env=bad_bot

Надеемся, что это поможет Вам избавиться (хотя бы частично) от воровства адресов электронной почты со страниц Вашего сайта.

Поделиться в соц. сетях

mailru Ловушка для спам бота
facebook Ловушка для спам бота
odnoklassniki Ловушка для спам бота
livejournal Ловушка для спам бота
googlebuzz Ловушка для спам бота

Также рекомендуем:

  1. Яндекс запустил RTFM для программистов Яндексом запущен специальный колдунщик для программистов, аналог RTFM. Сообщение об этом распространили разработчики Яндекса. Новый сервис будет показывать ответ на интересующий вопрос непосредственно в поисковой выдаче, облегчая тем самым работу программистам.. Колдунщик предоставляет описания, которые имеются в официальных справочных материалах или действующих руководствах по программированию. Колдунщик уже знает более чем десятью популярными языками программирования и [...]...
  2. Сайт от идеи до реализации Многие из этих вопросов неизбежно возникают у компаний или частных лиц (далее клиентов), заинтересованных в создании сайта.. В этой статье мы попытаемся рассмотреть этапы, которые, на наш взгляд, преодолевает клиент на пути от принятия решения о создании сайта до оценки результатов его реализации. Мы выделяем пять основных этапов этого пути (рис. 1): Рис. 1. Основные [...]...
  3. Второй раз повторяю: я человек! CAPTCHA 1. Краткий обзор Интернет-роботы или как их чаще называют боты, это программы созданные для автоматизированного выполнения некоторых функций в сети. В зависимости от их предназначения, цель работы таких программ тоже разная. Но объединяет роботов одно – избавить человека от выполнения однообразной рутинной работы. Казалось бы, в этом нет ничего зазорного. Бизнесмен, получающий на электронную почту [...]...
  4. Не цепляйтесь за запросы! 2 подхода к продвижению сайтов: «только по запросам», «общее увеличение трафика» Очень часто, когда новый клиент приходит заказывать услуги по оптимизации сайтов, от него слышна фраза:«интересует вывод на первые позиции по запросам».Далее он перечисляет несколько наиболее важных, по его мнению, запросов. Как правило, такого клиента больше ничего не интересует, он цепляется за эти запросы и [...]...
  5. Что такое блог? Блог – это сайт, на котором находятся личные заметки автора. В основном, заметками являются ссылки на сайты, которые кажутся владельцу ресурса наиболее интересными, и комментарии к ним. Одни владельцы блогов дают небольшие комментарии на приведенные ссылки, другие же пытаются подробно описать сайт. Это могут быть не только ссылки, но и просто дневник с записями, начиная [...]...
  6. Частые ошибки при поисковой оптимизации сайта. Как это избежать? 22 наиболее часто встречаемых ошибок при самостоятельной оптимизации сайта под поисковые системы:. Регистрируемая в поисковой системе страница должна содержать ссылки на другие страницы сайта. В противном случае она будет единственным, что проиндексирует поисковая машина.Не стоит регистрировать сайт в поисковых системах, который находится в стадии разработки (к каталогам, доскам объявлений и форумам это относиться в меньшей [...]...
  7. Как создать 1000 статей за полчаса 1. Качайте SEO Generator2. Пройдите режим обучения программы 3. Работаете со статьей также как с длиным описанием4. Генерируете статью в файлыПодсказка: используйте для отладки фишку: если строка начинаеться с символа #, то эта строка и последующие не будут генериться.Не переусердствуйте с синтаксисом не мучайте программу и свой мозг.Качаете SEO Generator http://www.altalabs.ru/files/SEOGENDEMO.rar. Так-же будет полезна прога [...]...
  8. Ruby on Rails vs. PHP stats Интересную статистику выложили недавно на phpinside.ru под душераздирающим заголовком “PHP съест Ruby on Rails на завтрак.” Только вот выводы из неё сделали несколько странные. Я же выводов делать не буду, а просто покажу два графика. Любой с каплей здравого смысла в голове, сам сделает вывод.....
  9. Лист бумаги Часть первая. 1. Создаем новый документ, называем Paper. 2. Выбираем Rectangular Marquee Tool (М) 3.Выделим весь лист. 4. Выделенное заполняем белым. 5. Заходим Layer>Layer Style>Drop Shadow-Opacity 20%-Distance 2-Spread 0 -Size 1 6. Нажимаем на Stroke.-Size 1px -Outside -Opacity 5% (Внимание! Для каждого размера листа, свои опции!) 7. Выбираем Elliptical Marquee Tool (M) 8. Зажимаем Shift [...]...
  10. Оптимизация Apache + PHP + PostgreSQL После ввода в строй динамического веб-сервера на базе apach + php + postgresql (да и на базе других систем тоже, если честно), вебмастер часто обнаруживает, что производительность системы начинает с большей или меньшей активностью стремиться к нулю, порой его достигая при наплывах посетителей. Стандартными действиями вебмастера при этом являются лихорадочное чтение документации, поиск в Интернете [...]...
  11. Метатэги Здесь можно расслабиться. В противоположность многочисленным утверждениям о важности правильного использования тэгов META, вам предстоит сейчас узнать о том, что это не так уж и важно.. Ключевые слова, равно как и заполнение метатагов, были придуманы для описания содержимого веб-страницы для поисковых систем, с целью облегчить тем работу, а также описать содержимое страниц, содержащих в основном [...]...
  12. AJAX’овые грабли в Internet Explorer 6 Если передаваемый сервером заголовок с кодировкой не понятен IE, то возникает прекрасная, красноречивая Системная ошибка: -1072896658. IE приводит к нижнему регистру передаваемые custom-заголовки запросов, например X-Requested-With: XMLHttpRequest превращается на сервере в x-requested-with: xmlhttprequest). Нафига? Internet Explorer иногда не кеширует фоновые изображения, полученные через AJAX; повторно загружаемый фон «забывает» посмотреть в кеше. IE некорректно парсит js-код [...]...
  13. Обнаружение фальшивого PR при покупке ссылок Скупой платит дважды При покупке ссылок, а так же при обмене, любой SEO специалист, особенно человек, совсем недавно занявшийся SEO, должен быть по крайне мере достаточно осторожным. Используя совершенно простые советы в этой статье, Вы сможете избежать ошибок, которые против Вас могут использовать не совсем порядочные SEO мастера. . И так покупка или обмен ссылками [...]...
  14. Множественные уязвимости в Mozilla Firefox Программа: Mozilla Firefox 1.5.0.1 и более ранние версии.Mozilla Suit версии до 1.7.13 Опасность: Критическая Наличие эксплоита: Нет . Описание: Обнаруженные уязвимости позволяют удаленному пользователю произвести XSS нападение, обойти ограничения безопасности, получить доступ к важным данным и скомпрометировать уязвимую систему. 1. Уязвимость существует из-за ошибки, которая позволяет внедрить JavaScript код в другую, в данный момент загружающуюся, [...]...
  15. 10 способов превратить трафик сайта в живые деньги Вне всякого сомнения, Рунет переполнен статьями, сайтами, блогами и форумами, посвященными общей теме «Как заработать в Интернет». И вы вполне правы, задавая себе вопрос – зачем писать еще одну статью на эту тему?. Все очень просто. Во-первых, половина сайтов по заработку в Интернет созданы «пионерами» для таких же «пионеров» и рассчитаны на максимальную прибыль в [...]...

Комментарии запрещены.