fail2ban заставляет меня забанить Google из-за / пересылать в моем журнале

В моем журнале apache много чего такого:

<IP ADDRESS> - - <DATE> "GET /forward?path=http://vary_bad_link_not_for_children" <NUM1> <NUM2> "-" <String>

‹NUM1›: 302 или 404

‹NUM2›: 5XX, 6XX или 11XX

<Нить>:

"Mozilla / 5.0 (совместимый; AhrefsBot / 5.1; + http://ahrefs.com/robot/)"

"Mozilla / 5.0 (совместимый; MJ12bot / v1.4.5; http://www.majestic12.co.uk/bot.php?+) "

"Mozilla / 5.0 (совместимый; Googlebot / 2.1; + ... ссылка)"

"Mozilla / 5.0 (совместимый; Exabot / 3.0; + ... ссылка)"

так далее...

Я сделал тюрьму для fail2ban с этим регулярным выражением:

failregex = ^<HOST> .*"GET .*/forward\?path=

Все работает нормально, за исключением того, что заблокированные IP-адреса (см. ‹IP-АДРЕС› в журнале) являются IP-адресами Google и других очень известных компаний.

Я действительно не понимаю, почему это так; Я имею в виду, почему я должен запрещать Google и другие компании, и если нет, почему я должен принимать все эти несоответствующие запросы к моему серверу.

Я хотел бы уточнить свои вопросы, так как это было плохо объяснено:

1. Почему Google IP (и другие известные компании) выполняют такие «порнографические» запросы.

2-Есть ли смысл в "/ forward? Path = ...", это функция apache?

3-Как решить эту проблему, не останавливая "хороших" ботов для ссылки на мои сайты.

Заранее благодарим за любую помощь!


person Baud    schedule 12.04.2016    source источник
comment
Вы хотите, чтобы эти поисковые роботы перестали посещать /forward? В таком случае вам следует запретить его в своем robots.txt. Если нет, вы должны отредактировать вопрос, чтобы описать желаемое поведение.   -  person Leopold says Reinstate Monica    schedule 12.04.2016
comment
Моя проблема в том, что я согласен, чтобы эти (известные) боты посещали мои сайты, но я не разрешаю позволять им искать неподходящий (порно) URL (path = var_bad_link_not_for_children). Я не понимаю, почему IP-адрес Google ищет такой контент ... Дайте мне знать, если я понимаю.   -  person Baud    schedule 13.04.2016
comment
Я обновил свои вопросы, надеюсь, они более понятны.   -  person Baud    schedule 13.04.2016


Ответы (1)


Вы можете запретить роботам посещать части вашего сайта в своем robots.txt < / а>.

Добавление

User-agent: *
Disallow: /forward

в ваш robots.txt не позволит ботам посещать все страницы, начинающиеся с /forward. Они будут продолжать посещать и индексировать другие страницы.

Если вы хотите разрешить /forward?path=something_nice, но не /forward?path=very_bad_link, вы можете сделать это:

User-agent: *
Disallow: /forward?path=a_specific_bad_link
Disallow: /forward?path=another_bad_link

Почему боты делают эти запросы?

Это может быть совершенно невинно. Возможно, кто-то по ошибке связался с вашим сайтом, возможно, страница существовала и больше не существует.

Это может быть из-за ссылки на вашем собственном сайте, которая указывает на этот URL. Проверьте это.

В худшем случае это могут быть люди, использующие вас как невольного доверенного лица. Убедитесь, что сервер ничего не обслуживает при запросе /forward, и проверьте журналы на наличие чего-либо подозрительного.

Что, если запросы продолжатся?

Обработка запросов может занять некоторое время. Роботы не запрашивают ваш robots.txt каждый раз, и вам придется подождать, пока они обновятся.

Однако, если они в конечном итоге не остановятся, это означает, что они являются вредоносными ботами и подделывают пользовательский агент Googlebot. robots.txt содержит инструкции для робота. Доброжелательные боты чтят их, но они не могут заставить злонамеренного робота держаться подальше. Затем вам понадобится такое решение, как fail2ban.

person Leopold says Reinstate Monica    schedule 13.04.2016
comment
Это именно то, что я искал !!! Большое спасибо за такой отличный ответ. Поскольку это сотни разных http://vary_bad_link_not_for_children (см. Http: // ранее), я уверен, что это не мои собственные ссылки. Я проверю ваш непреднамеренный прокси ... это правило или модуль apache? - person Baud; 14.04.2016
comment
просто для информации, sudo apache2ctl -M | grep proxy ничего не вернуть - person Baud; 14.04.2016