Защита от дебильного сграбливания не вредящая ботам.

1 23
Алеандр
На сайте с 08.12.2010
Offline
192
#21
znaikin:
А зачем столько гимора и угрозы ложных срабатываний? Кто захочет контент спарсит или просканит на дыры и опытный админ про это даже не узнает.

А так проблемы создаются для пользователей за NAT, для различных пулов динамичных IP, где переподключившись, можно оказаться в бане за грехи предыдущего юзера айпишника, случайно забанить поисковик и т.п.

Не такой уж большой гемор, на практике. С десяток алертов за год - не такая большая цена за спокойствие от ботов. Разговор идет за автоматических ботов, ни о каком ручном "я хочу его скачать" разговор не ведется, мне было достаточно защиты от банальных "телепортов" сайтов, wget'ов и тд.

"просканит на дыры" - это уж слишком вы утрировали ) если бы можно было "просканить на дыры" сайт, вот просто так - цены бы не было такому софту, или что там это бы выполняло, особенно если сайт самопис, умахаетесь искать дыры.

Также многие из предложенных в теме способов забанят юзеров с Оперы турбо/Яндекс турбо и прочих ускорителей.

Нормальные ускорители работают как транспарент (турбо-Опера точно так работала), передавая, в том числе, конечный IP пользователя, с которым можно вести работу. А если "ускоритель" работает грязно и маскирует конечный IP - это проблема юзера, почему он его юзает. Уж точно не для белой цели.

И никто не говорит, что банить надо всех и на второй запрос, например. Умно к этому подходить нужно. Я, например, динамически менял количество запросов от одного пользователя без проверки. Кроме того, после анализа сайта становится понятна поведенческая мера "усредненного юзера", и действовать на блокировку можно начинать в случае отклонения от этой стандартной схемы. Поясню, если 90% пользователей сайта приходя смотрят 2-5 страниц сайта и уходят, то если запросов больше 10 - уже не просто юзер скорее всего )

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

_
На сайте с 24.03.2008
Offline
381
#22

Куда-то в дебри народ полез.

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

Изначально речь шла о технически малограмотных пользователях с "телепортами" итп.

Вот от них и хотелось бы "закрыться".

Как и от всяких амазоновско-хецтнеровских грабберов.

Именно в этом направлении и ищутся "изящные решения".

К примеру нет ли у кого желания поделится списком "стрёмных" подсетей, типа

амазона и хецтнера, с него явно не убудет... ? пяток таких списков реально облегчили

бы жизнь многим. Можно было бы собрать один, довольно исчерпывающий.

Как реагирует гугл на crawldelay ?

Парсит в один поток, или присылает 2-3 ботов ? (по идее должен в один конечно).

А яндекс ?

Нет ли опыта по игре на этом параметре ?

(скажем раз в неделю в рандомное время разрешать гуглу-яндексу забирать

весь контент без задержки, как он к этому отнесется ? будет ли приходить и забирать,

или будет "тупить" ?)

L
На сайте с 07.12.2007
Offline
351
#23
eN_Slon:
Кому нужно Вас спарсят.
Защиту обойдут с легкостью.

Не встречал еще сайта, который не мог содрать. Бывают упертые, но итог всегда один.

Выдачу Яндекса пробовал?

seocore:
те кто парсят аккуратно Вы их не словите

Их и ловить незачем - они и за год ничего не выпарсят.

Если исходить из разумных предпосылок - ни один пользователь не просматривает более 20 страниц сайта за сутки. Как действовать дальше - понятно: идентифицировать пользователей и считать.

Для ПС/Твиттеров/Фэйсбуков - белые списки по IP.

Остальным ботам - нечего делать на сайте.

_SP_:
(скажем раз в неделю в рандомное время разрешать гуглу-яндексу забирать
весь контент без задержки, как он к этому отнесется ? будет ли приходить и забирать,
или будет "тупить" ?)

Ограничивать ботов ПС - неразумно, проблем с индексацией/переиндексацией контента хватает и без этого.

Если у сайта явно определён регион - боты Google и Яндекс приходят в основном в ночное для этого региона время.

"Дятел" Яндекса(простукивалка, что сайт живой) приходит ежедневно утром и поздно вечером, и проверяет одни и те же 2 URL-а(утром один, вечером -второй).

Vin_cent
На сайте с 22.01.2010
Offline
165
#24

Пожалуйста, мой список (в нём весь амазон, и немного других). Хороших в списке нет:

-A INPUT -s 95.211.0.0/16 -j DROP

-A INPUT -s 95.211.208.0/24 -j DROP

-A INPUT -s 162.213.248.0/24 -j DROP

-A INPUT -s 162.213.249.0/24 -j DROP

-A INPUT -s 162.213.250.0/24 -j DROP

-A INPUT -s 162.213.251.0/24 -j DROP

-A INPUT -s 162.213.253.0/24 -j DROP

-A INPUT -s 192.64.112.0/24 -j DROP

-A INPUT -s 192.64.113.0/24 -j DROP

-A INPUT -s 192.64.114.0/24 -j DROP

-A INPUT -s 192.64.115.0/24 -j DROP

-A INPUT -s 192.64.116.0/24 -j DROP

-A INPUT -s 192.64.117.0/24 -j DROP

-A INPUT -s 192.64.118.0/24 -j DROP

-A INPUT -s 192.64.119.0/24 -j DROP

-A INPUT -s 198.187.28.0/24 -j DROP

-A INPUT -s 198.187.29.0/24 -j DROP

-A INPUT -s 198.187.30.0/24 -j DROP

-A INPUT -s 198.187.31.0/24 -j DROP

-A INPUT -s 199.188.200.0/24 -j DROP

-A INPUT -s 199.188.201.0/24 -j DROP

-A INPUT -s 199.188.202.0/24 -j DROP

-A INPUT -s 199.188.203.0/24 -j DROP

-A INPUT -s 199.188.204.0/24 -j DROP

-A INPUT -s 199.188.205.0/24 -j DROP

-A INPUT -s 199.188.206.0/24 -j DROP

-A INPUT -s 199.188.207.0/24 -j DROP

-A INPUT -s 91.194.84.0/23 -j DROP

-A INPUT -s 91.194.84.0/24 -j DROP

-A INPUT -s 91.194.85.0/24 -j DROP

-A INPUT -s 108.59.0.0/20 -j DROP

-A INPUT -s 162.210.192.0/21 -j DROP

-A INPUT -s 192.96.200.0/21 -j DROP

-A INPUT -s 198.7.56.0/21 -j DROP

-A INPUT -s 199.115.112.0/21 -j DROP

-A INPUT -s 207.244.64.0/18 -j DROP

-A INPUT -s 209.58.128.0/18 -j DROP

-A INPUT -s 209.192.128.0/17 -j DROP

-A INPUT -s 198.74.231.0/24 -j DROP

-A INPUT -s 223.252.42.0/24 -j DROP

-A INPUT -s 223.252.43.0/24 -j DROP

-A INPUT -s 223.252.44.0/24 -j DROP

-A INPUT -s 223.252.45.0/24 -j DROP

-A INPUT -s 223.252.46.0/24 -j DROP

-A INPUT -s 173.208.128.0/17 -j DROP

-A INPUT -s 173.208.180.0/24 -j DROP

-A INPUT -s 173.208.250.0/24 -j DROP

-A INPUT -s 192.151.144.0/20 -j DROP

-A INPUT -s 192.187.96.0/19 -j DROP

-A INPUT -s 198.204.224.0/19 -j DROP

-A INPUT -s 199.168.96.0/21 -j DROP

-A INPUT -s 108.59.0.0/20 -j DROP

-A INPUT -s 192.31.184.0/22 -j DROP

-A INPUT -s 192.31.184.0/24 -j DROP

-A INPUT -s 192.31.185.0/24 -j DROP

-A INPUT -s 192.31.186.0/24 -j DROP

-A INPUT -s 192.31.187.0/24 -j DROP

-A INPUT -s 192.184.8.0/21 -j DROP

-A INPUT -s 192.184.8.0/24 -j DROP

-A INPUT -s 192.184.9.0/24 -j DROP

-A INPUT -s 192.184.10.0/24 -j DROP

-A INPUT -s 192.184.11.0/24 -j DROP

-A INPUT -s 192.184.12.0/24 -j DROP

-A INPUT -s 192.184.13.0/24 -j DROP

-A INPUT -s 192.184.14.0/24 -j DROP

-A INPUT -s 192.184.15.0/24 -j DROP

-A INPUT -s 70.39.244.0/23 -j DROP

-A INPUT -s 70.39.246.0/23 -j DROP

-A INPUT -s 70.39.246.0/24 -j DROP

-A INPUT -s 173.192.224.0/20 -j DROP

-A INPUT -s 173.192.240.0/24 -j DROP

-A INPUT -s 173.192.241.0/24 -j DROP

-A INPUT -s 173.192.242.0/24 -j DROP

-A INPUT -s 173.192.243.0/24 -j DROP

-A INPUT -s 173.192.244.0/24 -j DROP

-A INPUT -s 173.192.245.0/24 -j DROP

-A INPUT -s 173.192.248.0/21 -j DROP

-A INPUT -s 173.192.255.0/24 -j DROP

-A INPUT -s 66.147.240.0/20 -j DROP

-A INPUT -s 185.3.40.0/22 -j DROP

-A INPUT -s 74.50.48.0/20 -j DROP

-A INPUT -s 67.228.0.0/18 -j DROP

-A INPUT -s 88.198.0.0/16 -j DROP

-A INPUT -s 184.172.0.0/18 -j DROP

-A INPUT -s 62.212.64.0/19 -j DROP

-A INPUT -s 64.225.0.0/16 -j DROP

-A INPUT -s 5.104.104.0/21 -j DROP

-A INPUT -s 192.243.48.0/20 -j DROP

-A INPUT -s 50.28.0.0/18 -j DROP

-A INPUT -s 185.3.40.0/22 -j DROP

-A INPUT -s 199.217.112.0/21 -j DROP

-A INPUT -s 82.192.64.0/19 -j DROP

-A INPUT -s 91.250.64.0/18 -j DROP

-A INPUT -s 74.208.0.0/16 -j DROP

-A INPUT -s 176.9.0.0/16 -j DROP

-A INPUT -s 64.77.0.0/17 -j DROP

-A INPUT -s 95.211.0.0/16 -j DROP

-A INPUT -s 95.211.208.0/24 -j DROP

-A INPUT -s 198.57.128.0/17 -j DROP

-A INPUT -s 148.251.0.0/16 -j DROP

-A INPUT -s 192.31.184.0/22 -j DROP

-A INPUT -s 192.31.186.0/24 -j DROP

-A INPUT -s 192.185.0.0/18 -j DROP

-A INPUT -s 144.76.0.0/16 -j DROP

-A INPUT -s 31.22.0.0/21 -j DROP

-A INPUT -s 5.135.0.0/16 -j DROP

-A INPUT -s 79.112.0.0/13 -j DROP

-A INPUT -s 192.241.192.0/19 -j DROP

-A INPUT -s 108.162.192.0/21 -j DROP

-A INPUT -s 108.162.196.0/24 -j DROP

-A INPUT -s 67.159.44.0/24 -j DROP

-A INPUT -s 67.159.0.0/18 -j DROP

-A INPUT -s 178.159.248.0/21 -j DROP

-A INPUT -s 178.32.0.0/15 -j DROP

-A INPUT -s 178.32.132.0/24 -j DROP

-A INPUT -s 178.32.133.0/24 -j DROP

-A INPUT -s 178.32.134.0/24 -j DROP

-A INPUT -s 178.32.135.0/24 -j DROP

-A INPUT -s 72.44.32.0/19 -j DROP

-A INPUT -s 67.202.0.0/18 -j DROP

-A INPUT -s 75.101.128.0/17 -j DROP

-A INPUT -s 174.129.0.0/16 -j DROP

-A INPUT -s 204.236.192.0/18 -j DROP

-A INPUT -s 184.73.0.0/16 -j DROP

-A INPUT -s 184.72.128.0/17 -j DROP

-A INPUT -s 184.72.64.0/18 -j DROP

-A INPUT -s 50.16.0.0/15 -j DROP

-A INPUT -s 50.19.0.0/16 -j DROP

-A INPUT -s 107.20.0.0/14 -j DROP

-A INPUT -s 23.20.0.0/14 -j DROP

-A INPUT -s 54.242.0.0/15 -j DROP

-A INPUT -s 54.234.0.0/15 -j DROP

-A INPUT -s 54.236.0.0/15 -j DROP

-A INPUT -s 54.224.0.0/15 -j DROP

-A INPUT -s 54.226.0.0/15 -j DROP

-A INPUT -s 54.208.0.0/15 -j DROP

-A INPUT -s 54.210.0.0/15 -j DROP

-A INPUT -s 54.221.0.0/16 -j DROP

-A INPUT -s 54.204.0.0/15 -j DROP

-A INPUT -s 54.196.0.0/15 -j DROP

-A INPUT -s 54.198.0.0/16 -j DROP

-A INPUT -s 54.80.0.0/13 -j DROP

-A INPUT -s 50.112.0.0/16 -j DROP

-A INPUT -s 54.245.0.0/16 -j DROP

-A INPUT -s 54.244.0.0/16 -j DROP

-A INPUT -s 54.214.0.0/16 -j DROP

-A INPUT -s 54.212.0.0/15 -j DROP

-A INPUT -s 54.218.0.0/16 -j DROP

-A INPUT -s 54.200.0.0/15 -j DROP

-A INPUT -s 54.202.0.0/15 -j DROP

-A INPUT -s 54.184.0.0/13 -j DROP

-A INPUT -s 204.236.128.0/18 -j DROP

-A INPUT -s 184.72.0.0/18 -j DROP

-A INPUT -s 50.18.0.0/16 -j DROP

-A INPUT -s 184.169.128.0/17 -j DROP

-A INPUT -s 54.241.0.0/16 -j DROP

-A INPUT -s 54.215.0.0/16 -j DROP

-A INPUT -s 54.219.0.0/16 -j DROP

-A INPUT -s 54.193.0.0/16 -j DROP

-A INPUT -s 54.176.0.0/15 -j DROP

-A INPUT -s 54.183.0.0/16 -j DROP

-A INPUT -s 79.125.0.0/17 -j DROP

-A INPUT -s 46.51.128.0/18 -j DROP

-A INPUT -s 46.51.192.0/20 -j DROP

-A INPUT -s 46.137.0.0/17 -j DROP

-A INPUT -s 46.137.128.0/18 -j DROP

-A INPUT -s 176.34.128.0/17 -j DROP

-A INPUT -s 176.34.64.0/18 -j DROP

-A INPUT -s 54.247.0.0/16 -j DROP

-A INPUT -s 54.246.0.0/16 -j DROP

-A INPUT -s 54.228.0.0/16 -j DROP

-A INPUT -s 54.216.0.0/15 -j DROP

-A INPUT -s 54.229.0.0/16 -j DROP

-A INPUT -s 54.220.0.0/16 -j DROP

-A INPUT -s 54.194.0.0/15 -j DROP

-A INPUT -s 54.72.0.0/14 -j DROP

-A INPUT -s 54.76.0.0/15 -j DROP

-A INPUT -s 54.78.0.0/16 -j DROP

-A INPUT -s 54.254.0.0/16 -j DROP

-A INPUT -s 54.255.0.0/16 -j DROP

-A INPUT -s 54.179.0.0/16 -j DROP

-A INPUT -s 54.252.0.0/16 -j DROP

-A INPUT -s 54.253.0.0/16 -j DROP

-A INPUT -s 54.206.0.0/16 -j DROP

-A INPUT -s 54.79.0.0/16 -j DROP

-A INPUT -s 175.41.192.0/18 -j DROP

-A INPUT -s 46.51.224.0/19 -j DROP

-A INPUT -s 176.32.64.0/19 -j DROP

-A INPUT -s 103.4.8.0/21 -j DROP

-A INPUT -s 176.34.0.0/18 -j DROP

-A INPUT -s 54.248.0.0/15 -j DROP

-A INPUT -s 54.250.0.0/16 -j DROP

-A INPUT -s 54.238.0.0/16 -j DROP

-A INPUT -s 54.199.0.0/16 -j DROP

-A INPUT -s 54.178.0.0/16 -j DROP

-A INPUT -s 54.95.0.0/16 -j DROP

-A INPUT -s 177.71.128.0/17 -j DROP

-A INPUT -s 54.232.0.0/16 -j DROP

-A INPUT -s 54.233.0.0/18 -j DROP

-A INPUT -s 54.207.0.0/16 -j DROP

-A INPUT -s 188.93.20.0/22 -j DROP

-A INPUT -s 72.167.52.0/22 -j DROP

-A INPUT -s 173.224.208.0/20 -j DROP

-A INPUT -s 203.170.80.0/21 -j DROP

-A INPUT -s 50.1.96.0/19 -j DROP

-A INPUT -s 149.3.128.0/20 -j DROP

-A INPUT -s 67.225.128.0/18 -j DROP

-A INPUT -s 67.227.128.0/17 -j DROP

-A INPUT -s 46.254.20.0/23 -j DROP

-A INPUT -s 198.199.64.0/20 -j DROP

-A INPUT -s 185.35.77.0/24 -j DROP

-A INPUT -s 78.129.128.0/17 -j DROP

-A INPUT -s 78.157.192.0/19 -j DROP

-A INPUT -s 198.143.184.0/21 -j DROP

-A INPUT -s 184.154.0.0/16 -j DROP

-A INPUT -s 185.15.244.0/22 -j DROP

-A INPUT -s 217.79.176.0/20 -j DROP

-A INPUT -s 192.227.164.0/22 -j DROP

-A INPUT -s 50.97.192.0/18 -j DROP

-A INPUT -s 75.126.112.0/20 -j DROP

-A INPUT -s 173.244.212.0/22 -j DROP

-A INPUT -s 50.22.64.0/18 -j DROP

-A INPUT -s 50.116.92.0/22 -j DROP

-A INPUT -s 173.234.232.0/22 -j DROP

-A INPUT -s 173.234.8.0/22 -j DROP

-A INPUT -s 173.234.248.0/21 -j DROP

-A INPUT -s 173.234.164.0/22 -j DROP

-A INPUT -s 5.79.0.0/18 -j DROP

-A INPUT -s 83.149.64.0/18 -j DROP

-A INPUT -s 95.211.0.0/16 -j DROP

-A INPUT -s 5.79.64.0/18 -j DROP

-A INPUT -s 46.165.192.0/18 -j DROP

-A INPUT -s 192.241.192.0/20 -j DROP

-A INPUT -s 192.241.224.0/20 -j DROP

-A INPUT -s 91.224.160.0/23 -j DROP

-A INPUT -s 50.117.64.0/19 -j DROP

-A INPUT -s 50.117.0.0/17 -j DROP

-A INPUT -s 173.208.180.0/24 -j DROP

-A INPUT -s 109.73.168.0/24 -j DROP

-A INPUT -s 107.161.176.0/20 -j DROP

-A INPUT -s 108.163.128.0/18 -j DROP

-A INPUT -s 5.9.0.0/16 -j DROP

-A INPUT -s 180.179.212.0/24 -j DROP

-A INPUT -s 91.232.96.0/23 -j DROP

-A INPUT -s 72.22.192.0/20 -j DROP

-A INPUT -s 192.99.0.0/16 -j DROP

-A INPUT -s 64.49.192.0/18 -j DROP

-A INPUT -s 166.78.128.0/18 -j DROP

-A INPUT -s 198.101.240.0/21 -j DROP

-A INPUT -s 173.199.120.0/22 -j DROP

-A INPUT -s 173.199.114.0/23 -j DROP

-A INPUT -s 173.199.116.0/22 -j DROP

---------- Добавлено 06.05.2014 в 11:19 ----------

Пример, как действовать:

1. Подставляешь IP который нужно забанить тут: https://dazzlepod.com/ip/216.127.94.127/

2. Нажимаешь на ссылку: "ASN AS21844"

3. Попадаешь на сайт: http://bgp.he.net/AS21844

4. Идешь в раздел: "Prefixes v4"

5. Смотришь в описание что за чёрт, что за хостер.... ну и примаешь решение, банить или нет. Там удобно выводится, сразу подсетями. И сразу в iptables закидывай.

_
На сайте с 24.03.2008
Offline
381
#25

Во, уже дело, спасибо большое.

T3
На сайте с 16.02.2007
Offline
132
#26


# keyweb
87.118.64.0/18
84.19.160.0/19
193.22.254.0/24
95.169.160.0/19
62.141.48.0/20
217.114.208.0/20

# Amazon EC2 Public IP Ranges
72.44.32.0/19
67.202.0.0/18
75.101.128.0/17
174.129.0.0/16
204.236.192.0/18
184.73.0.0/16
184.72.128.0/17
184.72.64.0/18
50.16.0.0/15
50.19.0.0/16
107.20.0.0/14
23.20.0.0/14
54.242.0.0/15
54.234.0.0/15
54.236.0.0/15
54.224.0.0/15
54.226.0.0/15
50.112.0.0/16
54.245.0.0/16
54.244.0.0/16
204.236.128.0/18
184.72.0.0/18
50.18.0.0/16
184.169.128.0/17
54.241.0.0/16
79.125.0.0/17
46.51.128.0/18
46.51.192.0/20
46.137.0.0/17
46.137.128.0/18
176.34.128.0/17
176.34.64.0/18
54.247.0.0/16
54.246.0.0/16
54.228.0.0/16
175.41.128.0/18
122.248.192.0/18
46.137.192.0/18
46.51.216.0/21
54.251.0.0/16
54.252.0.0/16
175.41.192.0/18
46.51.224.0/19
176.32.64.0/19
103.4.8.0/21
176.34.0.0/18
54.248.0.0/15
177.71.128.0/17
54.232.0.0/16

# GLESYS VPS
109.74.0.0/20
79.99.0.0/21
# VDS
93.186.168.0/22
# Dedicated-servers
31.192.104.0/21
# Electronic-government
109.207.0.0/20
# Timeweb
92.53.112.0/23
# Fornex Hosting
91.228.152.0/22
# Azara bot
91.219.236.0/22
# Colocat DC
109.95.208.0/21
# logol.ru
188.93.212.0/24

(может еще кто-нибудь поделится готовым списком сетей хетцнера?)

Списки по странам можно найти тут:

https://www.countryipblocks.net/country_selection.php

---------- Добавлено 06.05.2014 в 23:26 ----------

Vin_cent:
сразу в iptables закидывай.

В iptables напрямую неудобно, я пользуюсь apf и ipset

Ну и fail2ban с белыми списками.

---------- Добавлено 06.05.2014 в 23:32 ----------

_SP_:
Как реагирует гугл на crawldelay ?

Никак. Вроде раньше в инструментах для веб-мастеров можно было задать скорость сканирования, а сейчас нет.

_SP_:
А яндекс?

Яндекс вроде бы тоже не особо смотрит на crawldelay. В любом случае это довольно бесполезная директива.

Рекомендую VPS за $5/месяц (https://m.do.co/c/e366f023194b). Готовый сервер разворачивается за 2 минуты.
_
На сайте с 24.03.2008
Offline
381
#27
T-34:

Яндекс вроде бы тоже не особо смотрит на crawldelay. В любом случае это довольно бесполезная директива.

Еслиб слушались отличная былаб директива.

Ставишь Х, все те кто забирают чего-то "много" и быстрее Х - в бан.

forest25
На сайте с 12.09.2009
Offline
67
#28
Алеандр:

"просканит на дыры" - это уж слишком вы утрировали ) если бы можно было "просканить на дыры" сайт, вот просто так - цены бы не было такому софту, или что там это бы выполняло, особенно если сайт самопис, умахаетесь искать дыры.

Хм, а откуда же тогда по вашему берутся Joomscan, WPscan, SQLmap, Xspider и еще куча софта для аудита безопасности? Причем большая часть этого ПО открытая.

VPS 512MB 20GB SSD KVM - 5$ (http://u.hmdw.me/digitalocean) | ИМХО о хостингах (http://u.hmdw.me/hosting)
1 23

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий