Проверка Googlebot: Как выполнять обратный DNS-поиск для безопасности
Проверка трафика Googlebot с помощью обратного DNS-поиска — это стандартный метод подтверждения того, что запрос к вашему серверу действительно исходит от Google. Злоумышленники часто подделывают юзер-агент Googlebot, чтобы обойти фильтры безопасности или парсить проприетарный контент. Выполняя DNS-проверку, вы подтверждаете, что IP-адрес разрешается в доменное имя в пространстве имен googlebot.com или google.com, что эффективно отделяет подлинный поисковый трафик от неавторизованных автоматизированных ботов.
Почему проверка IP-адресов Googlebot необходима?
Современные веб-серверы имеют дело с постоянным автоматизированным трафиком. Хотя часть этого трафика поступает от поисковых систем, большая его часть состоит из парсеров и сканеров безопасности. Если настройки вашего брандмауэра слишком строгие, вы можете случайно заблокировать Googlebot, что приведет к выпадению страниц из результатов поиска. И наоборот, если вы добавляете в белый список каждый запрос, который утверждает, что является ботом, вы подвергаете свою инфраструктуру уязвимостям.
Команды безопасности часто борются с балансом между доступностью и защитой. Когда IP-адрес утверждает, что он Googlebot, он предоставляет строку юзер-агента, которую легко подделать. Без вторичного механизма подтверждения ваш сервер не может отличить полезный краулер от вредоносного скрипта, пытающегося потребить вашу пропускную способность или прощупать слабые места сайта.
Если вы разрешаете все боты, которые утверждают, что они Googlebot, вы открываете свой сайт для атак. Проверка действует как критический привратник для вашего сервера. Проверяя источник каждого запроса, вы гарантируете, что только законный поисковый трафик потребляет ресурсы вашего сервера. Это необходимо для защиты проприетарных данных и поддержания скорости сайта для реальных пользователей.
Проверка IP-адреса — единственный способ подтвердить истинную личность краулера.
Google Search Central
Как Googlebot идентифицирует себя перед серверами?
Googlebot идентифицирует себя с помощью определенной строки юзер-агента в HTTP-заголовке запроса. Эти строки различаются для разных типов краулеров, таких как Googlebot Smartphone или Googlebot Desktop. Однако, поскольку этот заголовок предоставляется клиентом, он сам по себе не является безопасным идентификатором. Запрос, утверждающий, что он Googlebot, действителен только в том случае, если подтверждено, что исходный IP-адрес принадлежит Google.
Инфраструктура Googlebot обширна и использует широкий диапазон IP-адресов, которые меняются по мере роста их сетевых требований. Именно поэтому проверка IP-адреса — единственный способ подтвердить истинную личность краулера. Связывая IP с проверенным доменом Google, администраторы могут уверенно поддерживать свои политики безопасности, не влияя на свою видимость в органическом поиске.
В типичной серверной среде краулер отправит запрос типа ‘Mozilla/5.0 (Linux; Android 6.0.1; Nexus 5X Build/MMB29P) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/W.X.Y.Z Mobile Safari/537.36 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)’. Поскольку эту строку может скопировать кто угодно, ваш сервер должен выполнить DNS-поиск, чтобы убедиться, что соединение исходит из инфраструктуры Google.
Как выполнить ручной обратный DNS-поиск
Вы можете проверить личность IP-адреса с помощью инструментов командной строки, доступных в большинстве операционных систем. Эти инструменты запрашивают систему доменных имен, чтобы найти имя хоста, связанное с конкретным IP-адресом. Выполните следующие шаги, чтобы проверить подозрительный IP:
Откройте терминал или командную строку на вашей локальной машине или сервере.
Используйте команду host, за которой следует IP-адрес, например ‘host 66.249.66.1’.
Наблюдайте за выводом, чтобы увидеть, заканчивается ли имя хоста на googlebot.com или google.com.
Выполните прямой DNS-поиск для полученного имени хоста, чтобы убедиться, что оно соответствует исходному IP-адресу, завершая процесс двойной проверки.
Выполнение этих поисков вручную полезно для выборочной проверки конкретных логов. Если вы идентифицируете подозрительный IP-адрес, который обращается к вашему серверу с высокой частотой, простая команда терминала дает немедленный ответ. Если обратный DNS-поиск не удался или вернул домен, не связанный с Google, вы идентифицировали поддельный запрос, который следует заблокировать.
Для больших наборов данных ручная проверка неэффективна. Вам следует использовать скриптовые языки, такие как Python или Bash, чтобы автоматизировать эти проверки по вашим логам доступа. Это позволяет обрабатывать тысячи записей за секунды и автоматически отфильтровывать нелегитимный трафик без ручного вмешательства.
Как Alien Road применяет это для безопасности клиентов
В Alien Road мы управляем безопасностью на стороне сервера для наших клиентов, внедряя автоматизированные скрипты, которые выполняют эти проверки в режиме реального времени. Во время нашей фазы обнаружения мы проверяем существующие правила брандмауэра, чтобы убедиться, что они не блокируют законный поисковый трафик. Мы настраиваем инструменты анализа логов, которые отслеживают входящие паттерны ботов и помечают любые IP-адреса, которые представляют поддельный юзер-агент, но не проходят тест на обратную DNS-проверку.
Шаги, которые мы предпринимаем во время первоначальной настройки
Аудит логов сервера для идентификации наиболее частых IP-адресов и паттернов краулеров.
Настройка брандмауэров веб-приложений для разрешения только проверенных диапазонов IP-адресов Googlebot.
Настройка автоматизированных оповещений, которые уведомляют нашу команду, когда краулер ведет себя беспорядочно.
Проверка директив robots.txt, чтобы гарантировать, что сайт остается индексируемым основными поисковыми системами.
В типичном проекте мы обнаруживаем, что у многих клиентов есть устаревшие правила брандмауэра, которые блокируют законный трафик Googlebot. Мы исправляем это, приводя их настройки безопасности в соответствие с опубликованными рекомендациями Google. Наша цель — гарантировать, что, пока вредоносные парсеры блокируются, Googlebot может достичь каждой страницы сайта для поддержания или улучшения позиций в поисковых системах.
Каковы распространенные ошибки при проверке ботов?
Распространенная ошибка — полагаться исключительно на строку юзер-агента, предоставленную в HTTP-заголовке. Многие пользователи предполагают, что если запрос идентифицирует себя как ‘Googlebot’, то это он и есть. Это неверно, потому что юзер-агент — это поле, сообщаемое самим клиентом, которое может быть легко отредактировано кем угодно. Другая проблема заключается в невыполнении второй половины проверки: прямого DNS-поиска. Всегда подтверждайте, что доменное имя разрешается обратно в исходный IP-адрес, чтобы избежать атак спуфинга.
Другая ошибка заключается в жестком кодировании конкретных IP-адресов в вашем брандмауэре. Поскольку Google обновляет свою инфраструктуру, эти IP-адреса могут со временем меняться. Если ваши правила брандмауэра статичны, вы можете в конечном итоге заблокировать новые экземпляры Googlebot, которые только что были добавлены в их сеть. Вместо этого используйте скрипты, которые динамически проверяют статус проверки любого бота, утверждающего, что он представляет поисковую систему.
Не игнорируйте аспект потребления ресурсов. Если вы запускаете сложные скрипты для проверки каждого запроса, вы можете случайно замедлить работу вашего сервера. Мы рекомендуем кэшировать результаты ваших DNS-поисков на разумный период, чтобы гарантировать, что ваши меры безопасности не окажут негативного влияния на скорость сайта для человеческих посетителей.
С чего начать на этой неделе
Просмотрите логи доступа вашего сервера, чтобы увидеть, какие боты запрашивают ваши самые ресурсоемкие страницы. Если вы заметите большой объем трафика с IP-адресов, утверждающих, что они Googlebot, выполните ручную обратную DNS-проверку для пяти самых частых адресов. Если они не разрешаются в домен, принадлежащий Google, обновите правила брандмауэра, чтобы заблокировать эти конкретные адреса, гарантируя, что ресурсы вашего сервера останутся доступными для законных пользователей и поисковых краулеров. Это проактивное обслуживание сохраняет вашу техническую основу в безопасности.
Поделиться
Alien Road · поиск
Быстрый доступ
Перейдите сразу к услуге, проекту или корпоративной странице.
Ничего не найдено. Попробуйте другое слово.
↑↓ навигация↵ открытьEsc закрытьAlien Road
ARСейчас в сети
Специально для вас
Давайте спланируем ваш проект
Напишите нам в WhatsApp — наша команда ответит как можно скорее.