Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: Как забанить фейковый Googlebot в htaccess?
Форумы портала PHP.SU » Серверное администрирование » Apache и другие веб-серверы » Как забанить фейковый Googlebot в htaccess?

Страниц (1): [1]
 

1. JustSkeptik - 08 Сентября, 2015 - 20:11:55 - перейти к сообщению
В последнее время заметил в логах сервера фальшивый Googlebot. Похоже, сканирует сайт с ботнета - по 2-10 запросов в секунду, и каждый раз с нового IP. При этом диапазон IP совершенно непредсказуем - то Вьетнам, то Кыргызстан, то Мексика и т. д.
В гугле говорят, что диапазон своих белых IP не раскрывают, так что, как я понимаю, блокировка по IP методом исключения - не вариант. Реально ли вообще как-то с этим бороться?
2. DlTA - 08 Сентября, 2015 - 21:12:20 - перейти к сообщению
если по логам видно что это гуглбот, а по ip это не он, вот и баньте
но для начала в robots.txt пропишите предпочитаемое время/задержку для бота, может учтут
3. JustSkeptik - 08 Сентября, 2015 - 21:19:43 - перейти к сообщению
DlTA пишет:
если по логам видно что это гуглбот, а по ip это не он, вот и баньте
Как банить? В секунду до 10 запросов, и каждый с разных IP. То есть совсем с разных - даже диапазоны разные. Причем они практически не повторяются - в течение часа каждый запрос с другого IP.
4. DlTA - 08 Сентября, 2015 - 21:21:51 - перейти к сообщению
JustSkeptik пишет:
Как банить? В секунду до 10 запросов, и каждый с разных IP. То есть совсем с разных - даже диапазоны разные. Причем они практически не повторяются - в течение часа каждый запрос с другого IP.

читайте заголовки если по ним видно что это гугл
проверяйте ip
если он не диапазоне гугла баньте/посылайте ему какую нить статику

в каком месте проблема то?
(Добавление)
DlTA пишет:
но для начала в robots.txt пропишите предпочитаемое время/задержку для бота, может учтут
5. JustSkeptik - 08 Сентября, 2015 - 21:41:00 - перейти к сообщению
DlTA пишет:
в каком месте проблема то?
Проблема в проверке IP. Как его проверить?
(Добавление)
DlTA пишет:
но для начала в robots.txt пропишите предпочитаемое время/задержку для бота, может учтут
Попробую, но маловероятно. У меня на другом сайте схожая ситуация с фейковым яндексботом. В роботсе для яндекса стоит задержка в 10 сек., а подделка все равно отправляет по нескольку запросов в секунду.
6. DlTA - 08 Сентября, 2015 - 21:53:54 - перейти к сообщению
getenv("REMOTE_ADDR")
возвращает пользовательский IP
7. JustSkeptik - 08 Сентября, 2015 - 22:03:39 - перейти к сообщению
То есть этот шаг позволит получить IP зашедшего. А с чем его сравнить? D гугле говорят следующее:
Цитата:
Компания Google не публикует "белые списки" IP-адресов для веб-мастеров. Они могут изменяться, что вызовет проблемы на сайтах, где эти адреса указаны в коде.
И рекомендуют сделать следующее:
Цитата:
Как убедиться, что сайт сканируется роботом Googlebot:

С помощью команды host выполните обратный DNS-запрос IP-адреса, который можно узнать в журнале.
Убедитесь, что доменное имя – googlebot.com или google.com.
С помощью команды host выполните прямой запрос DNS на преобразование доменного имени, которое вы узнали на шаге 1. IP-адрес, полученный в результате, и исходный должны совпадать.

https://support[dot]google[dot]com/webma[dot][dot][dot]swer/80553?hl=ru
Вот, собственно, и вопрос: возможно ли это реализовать через htaccess?
8. DlTA - 08 Сентября, 2015 - 22:13:28 - перейти к сообщению
JustSkeptik пишет:
Вот, собственно, и вопрос: возможно ли это реализовать через htaccess?

сомневаюсь, а зачем??
обрабатывайте это пыхой
9. JustSkeptik - 08 Сентября, 2015 - 22:15:29 - перейти к сообщению
DlTA пишет:
обрабатывайте это пыхой
А как это реализовать на php?
10. DlTA - 08 Сентября, 2015 - 22:57:03 - перейти к сообщению
JustSkeptik пишет:
А как это реализовать на php?

что именно?
11. JustSkeptik - 09 Сентября, 2015 - 08:38:59 - перейти к сообщению
DlTA пишет:
что именно?

То, о чем пишет гугл:
Цитата:

С помощью команды host выполните обратный DNS-запрос IP-адреса, который можно узнать в журнале.
Убедитесь, что доменное имя – googlebot.com или google.com.
С помощью команды host выполните прямой запрос DNS на преобразование доменного имени, которое вы узнали на шаге 1. IP-адрес, полученный в результате, и исходный должны совпадать.
Только не из журнала, а в режиме реального времени. Это возможно?
12. DeepVarvar - 09 Сентября, 2015 - 09:33:30 - перейти к сообщению
13. JustSkeptik - 09 Сентября, 2015 - 11:10:18 - перейти к сообщению
DeepVarvar пишет:
http://php.net/manual/ru/functio...ethostbyaddr.php
Да, это именно то, что нужно! Круто
14. JustSkeptik - 10 Сентября, 2015 - 11:32:10 - перейти к сообщению
DeepVarvar пишет:
http://php.net/manual/ru/functio...ethostbyaddr.php
Будет ли работать эта функция с IPv6?
15. Мелкий - 10 Сентября, 2015 - 11:46:52 - перейти к сообщению
Да, если PHP собран с #if HAVE_IPV6 && HAVE_INET_PTON

 

Powered by ExBB FM 1.0 RC1