Есть ли тест-кейс (симулятор) для поисковых роботов? - PullRequest
2 голосов
/ 05 марта 2012

Я написал себе очень сильный класс защиты "BlockIp", который может использовать черный список с IP-адресами, обнаруживать странные IP-конфигурации и блокировать прокси. Когда он нашел его, я получаю подробное электронное письмо о посетителе и о том, почему он заблокирован, и о том, что он хочет попробовать (раз в день, конечно). Кажется, что это работает очень хорошо, потому что в прошлом я получил несколько реальных атак, которые были заблокированы этим классом. Он не блокирует легальных ботов, но это не легко проверить, что метод обнаружения является правильным.

Сегодня я получил письмо от класса, в котором он заблокировал "ycar10.mobile.bf1.yahoo.com", он идентифицирует себя как робот Yahoo, но был за прокси. Я ищу в сети, если он был в черном списке, но не нашел, что он в черном списке. Таким образом, вопрос заключается в следующем: правильно ли блокировать ботов за прокси-сервером (в любом случае использовать легальные боты-прокси?)? Вот некоторая информация о боте:

HTTP_ACCEPT = */*
HTTP_X_FORWARDED_FOR = 107.38.3.137,  98.137.88.60
HTTP_USER_AGENT = YahooCacheSystem
PATH = /sbin:/bin:/usr/sbin:/usr/bin
SERVER_SIGNATURE = 
SERVER_SOFTWARE = Apache/2.2.14
SERVER_PORT = 80
REMOTE_ADDR = 98.139.241.249
REMOTE_PORT = 53863
GATEWAY_INTERFACE = CGI/1.1
SERVER_PROTOCOL = HTTP/1.1
REQUEST_METHOD = GET
QUERY_STRING = 
REQUEST_URI = /
SCRIPT_NAME = /index.php
PHP_SELF = /index.php
REQUEST_TIME = 1330923844   

В противном случае, есть ли тестовый набор (комплект / симулятор), чтобы можно было проверить правильность поведения легального бота (только основные, такие как: Google, Yahoo, Bing), чтобы убедиться, что я использовал правильный метод обнаружения. Есть несколько симуляторов, но большинство из них не работают должным образом, и следующий вопрос: «Могу ли я доверять этому ...».

* Примечание. Как видно из приведенных выше сведений, используется значение REMOTE_PORT 53863, какой тип порта 53863? *

Надеюсь, вы понимаете мой вопрос, если нет, напишите здесь.

1 Ответ

0 голосов
/ 17 марта 2012

Номер порта 53863 является допустимым портом, не зарезервированным для чего-либо.Компьютер, который подключается к вашему серверу, может выбрать любой порт для этого конкретного подключения (хотя вы, вероятно, увидите номера портов выше 1024).

Вы можете использовать такие сайты, как web-sniffer.net, которые могут идентифицировать себя как GoogleBot,Недостатком является то, что они только подделывают пользовательский агент, а не поведение (я сомневаюсь, что они сначала проверяют robots.txt).

В качестве личного совета, пожалуйста, не пытайтесь заблокировать много IP-адресов одновременно ипроверить онлайн черные списки.Если вы начнете блокировать множество IP-адресов, вы, возможно, поймете, что заблокировали доверенных ботов, и у вас не будет возможности узнать, какими они были.

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