Составляем список "лишних" роботов которые грузят сервер, их описание и способы бана

Тема в разделе "Вопросы новичков", создана пользователем jabbaxatt, 9 май 2015.

  1. jabbaxatt

    jabbaxatt Добрый модератор

    Moderator
    Регистр.:
    21 янв 2009
    Сообщения:
    878
    Симпатии:
    411
    Рылся я сегодня в логах, на предмет роботов которые грузят сервер и при этом мне не особо нужных. И решил создать сию тему.

    Известно, что по мимо роботов яндекса и гугла (а также бинга, яхо, рамблера и мейла) есть ещё куча роботов всяких SEO сервисов, маленьких поисковых систем, ручных поделок и т.д.

    В итоге на сервере постоянно пасётся стадо терминаторов, и не все ведут себя вежливо в плане пожирания ресурсов.

    В общем для начала я в самом низу robots.txt всех своих сайтов впишу

    User-agent: MJ12bot
    Disallow: /
    user-agent: AhrefsBot
    disallow: /
    User-agent: dotbot
    Disallow: /
    User-agent: InterfaxScanBot
    Disallow: /
    User-agent: SputnikBot
    Disallow: /
    User-agent: SolomonoBot
    Disallow: /

    Это список тех что меня подзапарили. А Вас приглашаю - пополнить этот список и так-же озвучить рекомендации, скинуть информацию на тему - кто из роботов чей и для чего.

    Банить роботов ведь можно и через .htaccess по юзер агенту и там же - но по IP

    Я пока цивилизованно - через robots.txt - но прошу ваших советов и мнений. Кто как делает?
     
    Последнее редактирование: 9 май 2015
  2. latteo

    latteo Эффективное использование PHP, MySQL

    Moderator
    Регистр.:
    28 фев 2008
    Сообщения:
    1.404
    Симпатии:
    1.185
    Перед добавлением в robots.txt посмотрите в логах, а есть ли запросы файла robots от этих User-agent :)
    Из перечисленных вами как минимум AhrefsBot не спрашивал разрешения в роботс. SolomonoBot и InterfaxScanBot не смог обнаружить в логах.

    Остальные спрашивали. Но тут всплывает вопрос, а поняли ли?
    После запрета в файлике надо проверить логи на скан с этими UA.

    По хорошему, запретить бы по регулярке в htaccess/nginx.conf всё, что не в белом списке, ибо сервисов этих вагон и они прибывают. Сделать регулярку для основных ПС легко. Но вот только кто возьмётся составить такую регулярку для бестиария обычных UA :(
     
    jabbaxatt нравится это.
  3. _sergey_

    _sergey_ Писатель

    Регистр.:
    1 окт 2008
    Сообщения:
    1.744
    Симпатии:
    1.154
    Не проще, давать доступ только тем ботам каким нужно, а прочих банить?

    Вот, роботс для этого:
    User-agent: Yandex
    Disallow:
    Crawl-delay: 5
    Host: site.ru

    User-agent: Googlebot
    Disallow:
    Crawl-delay: 7
    Sitemap: site.ru/sitemap.xml

    User-agent: *
    Disallow: /

    Если что надо запретить для первых 2-х соответственно указываете в каждом блоке отдельно. Crawl-delay - чтобы не было слишком частых обращений - если страниц много выложено, это может повесить сервер после прогона для индексации. Если нужно временно разрешить какой-то поисковик или соцсеть, добавлять её. В общем я так делал когда дорами занимался.

    И ещё напомню про свой пост в моём блоге: https://www.nulled.cc/blog-entry/49/
     
    Последнее редактирование: 9 май 2015
    pozhisni, jabbaxatt и latteo нравится это.
  4. Denixxx

    Denixxx

    Регистр.:
    7 фев 2014
    Сообщения:
    247
    Симпатии:
    191
    Я при таких случаях парсю логи и выстраиваю список наиболее частых посетителей.
    Написал простенький скрипт http://fromgomel.com/uploads/analize_logs.zip
    Работает так — http://fromgomel.com/?module=articles&c=articles&b=6&a=15
    Как правило, идёт много запросов с одного IP
    Пробиваешь по WHOIS и если это не поисковик какой нибудь — банишь навсегда в .htaccess
     
    jabbaxatt и pozhisni нравится это.
  5. jabbaxatt

    jabbaxatt Добрый модератор

    Moderator
    Регистр.:
    21 янв 2009
    Сообщения:
    878
    Симпатии:
    411
    Мы точно таким способом не зарежем какой-нить яндекс или гугл бот, типа быстро-робота, индексатора иконок или картинок и т.д. ?
     
  6. Nei

    Nei Nosce te ipsum

    Регистр.:
    5 сен 2009
    Сообщения:
    599
    Симпатии:
    469
    ИМХО именно так по идее клоакинг и работает (по айпи определяются поисковые боты и им отдаётся отличный контент от того, который отдаётся реальным посетителям).
    Одна проблема - клоакинг, насколько я знаю, поисковиками палится. Отсюда вывод - айпи их ботов бывают разные.
     
  7. _sergey_

    _sergey_ Писатель

    Регистр.:
    1 окт 2008
    Сообщения:
    1.744
    Симпатии:
    1.154
    Нет. Тут разрешены все вспомогательные боты яндекса и гугла. Вот по яндексу к примеру: http://help.yandex.ru/webmaster/controlling-robot/robots-txt.xml#user-agent

    Более того, хостинг где я тогда хостился сам размещал подобный роботс при добавлении очередного домена, и проблем не было никогда.

    По скриптам, вот есть такой вариант: http://usings.ru/2009/07/12/bot-stat/ давно его не пробовал уже, раньше нормальный был.

    IP конечно используются различные для проверок против клоакинга + юзерагент мозилла и т.п. Но есть и системы которые отслеживают все новые IP позволяя их эффективно фильтровать, другое дело что это недёшево стоит и используется только теми кому это жизненно важно.
     
    latteo и jabbaxatt нравится это.
  8. Denixxx

    Denixxx

    Регистр.:
    7 фев 2014
    Сообщения:
    247
    Симпатии:
    191
    Ну вот для этого я и написал
    Именно вручную проверяешь, когда обычная конфигурация и настройки apache+nginx не справляются.
    Такие случаи редки — DDOS не чаще раз в месяц обычно, поэтому ручками, ручками;)
     
  9. audit-saitov001

    audit-saitov001 Создатель

    Регистр.:
    14 июл 2015
    Сообщения:
    16
    Симпатии:
    1
    SISTRIX Crawler можно забанить. Говорят - как только "наползет" - то нагрузит так, что мама не горюй.
    Вообще советую проверять логи регуляркой Crawler|spider|bot - смотреть, какие боты по сайту ходят.
    Ненужных банить, чтобы не грузили и траф не жгли.

    Банить лучше не по ip, а по юзер агенту - ip запросто может меняться, а юзер агент - очень редко.

    Я разбираюсь с ботами так:
    Составляю список "хороших" и "плохих" ботов, далее баню "плохих", а новых отлавливаю так:
    Беру логи, випиливаю из них регуляркой запросы ботов, которые у меня в белом/черном списке, далее ищу оставшееся регуляркой Crawler|spider|bot , смотрю, что осталось и что с этим делать - кого в белый список, кого в черный.
    Регулярка для удаления известных ботов такая: ^.*compatible; Baiduspider.*$|^.*Baiduspider-image.*$|^.*compatible; HaosouSpider.*$|^.*compatible; MJ12bot.*$|^.*.................
    Автоматическим скриптам не доверяю - есть риск забанить нужный поисковик/сео-анализатор, etc....
     
    Последнее редактирование модератором: 11 сен 2015
    latteo нравится это.
  10. awmz

    awmz Создатель

    Регистр.:
    24 окт 2014
    Сообщения:
    10
    Симпатии:
    1
    Нет, директивы в robots.txt носят рекомендательный характер, и могут быть проигнорированы роботами.
    Клоакинг будет когда для робота будет отдаваться другое содержимое. А здесь просто указание не смотреть на содержимое, причем это указание можно спокойно проигнорить.