Hallo, meine Damen und Herren, in diesem Artikel werde ich erklären, wie man Amazonbot auf seiner Website blockieren kann. Dieser äußerst ärgerliche Roboter verursacht eine Belastung, die mit einem kleinen DDOS-Angriff vergleichbar ist.
Lassen Sie uns also den Zugriff auf die Website für Amazonbot sperren, um Probleme mit der Website zu vermeiden.
Amazonbot – ein schädlicher Bot, den man blockieren sollte
Wenn Sie sofort zur Anleitung gelangen möchten, scrollen Sie bitte zum nächsten Abschnitt.
Eines schönen Tages ging ich auf meinen Hosting-Dienst und sah eine Belastung, die alle vernünftigen Grenzen sprengte.
Ausgangspunkt: Beget-Hosting, 300 CP verfügbar. Beachten Sie, dass auf einem einfachen Hosting nur 65 CP verfügbar sind. Diese Belastung hätte also leicht zu einer Sperrung eines kleinen Hostings führen können. Hostings mögen keine Überschreitungen der Belastung, daher blockieren sie den Dienst bei wiederholter Überschreitung.
Ich begann, das Problem zu untersuchen. Zuerst vermutete ich einen Hackerangriff, aber die Protokolle zeigten ein anderes Bild.
Der Roboter durchsuchte alle Seiten, selbst wenn sie bereits gescannt worden waren, und tat dies im Kreis. Dies führte zu einer zu hohen Serverbelastung.
Zuerst wollte ich herausfinden, was für ein Bot das war, und es stellte sich heraus, dass Amazonbot der Crawler des Amazon Alexa-Dienstes ist. Vielleicht ist Alexa ein nützlicher Dienst, der als Sprachassistent fungieren, Podcasts abspielen und Webseiten vorlesen kann, aber ich entschied, dass die zusätzliche Belastung für die Website nicht gerechtfertigt ist.
Zunächst besuchte ich die Bot-Seite: https://developer.amazon.com/support/amazonbot. Dort stand, dass der Crawler die im robots.txt-Datei festgelegten Anweisungen respektiert. Daher fügte ich sofort folgende Anweisungen hinzu:
User-Agent: Amazonbot
Disallow: /
Dies half nicht, der Bot griff weiterhin die Website an, daher blockierte ich ihn auf Serverebene über die .htaccess-Datei. Und das funktionierte. Natürlich versucht der Bot seit einigen Tagen, auf die Website zuzugreifen, erhält jedoch immer eine Antwort vom Server 403.
Eine DNS-Rückfrage bestätigte, dass es sich tatsächlich um Amazonbot handelt, da die Antwort von Amazon-Servern kam.
Nach der Sperrung sank die Belastung, aber Amazonbot versucht immer noch, auf die Website zuzugreifen, selbst ständige Serverantworten 403 schrecken ihn nicht ab.
Und jetzt werde ich Ihnen erklären, wie Sie den Zugriff von Amazonbot auf Ihre Website blockieren können.
Amazonbot blockieren: Schritt-für-Schritt-Anleitung
Auf der Amazonbot-Seite wird behauptet, dass er den Anweisungen aus der robots.txt-Datei folgt, aber die Anweisung „Disallow“ hat mir nicht geholfen. Der Bot verursachte weiterhin eine massive Belastung des Servers.
Auch CloudFlare konnte gegen Amazonbot nicht helfen, da er nicht als schädlicher Bot eingestuft wird. Folglich wird der Bot weiterhin frei auf der Website herumlaufen. Botschutz-Plugins funktionierten ebenfalls nicht, da sie nur auf spezifisches Bot-Verhalten reagieren. Daher fand ich nur eine Möglichkeit, Amazonbot zu blockieren.
Ich habe Amazonbot auf Serverebene über die .htaccess-Datei davon abgehalten, die Website zu besuchen. Sie können dies mit folgendem Code tun:
SetEnvIfNoCase User-Agent "Amazonbot" blocked_bot
<Limit GET POST HEAD>
Order Allow,Deny
Allow from all
Deny from env=blocked_bot
</Limit>
Dieser Code wird es Amazonbot nicht erlauben, die Website zu besuchen. Bei jedem Versuch wird Amazonbot eine Serverantwort 403 (Verboten) erhalten.
Natürlich wird dies die Serverbelastung nicht vollständig beseitigen, aber die dem Bot bereitgestellte fast leere Seite wird die Belastung erheblich reduzieren.
Diese Lösung ist am vernünftigsten, zumindest besser als nichts zu unternehmen. Sie könnten zwar auch einzelne IP-Adressen von Amazonbot blockieren, aber da er sich selbst identifiziert, ist das überflüssig. Es ist einfacher, wie oben vorgeschlagen, zu blockieren.
Ich empfehle auch, Artikel über die Blockierung von Bots und Crawlers sowie eine Liste schädlicher und nützlicher Bots zu lesen. Dort erfahren Sie mehr über Bots, die blockiert werden sollten, und solche, die nicht blockiert werden sollten.
Wenn Sie Hosting auf einem nginx-Webserver haben, könnten Schwierigkeiten auftreten, da Hosting-Benutzer keinen Zugriff auf die nginx-Konfiguration haben. Wenn Sie jedoch VDS oder VPS haben, gibt es keine Probleme.
In Ihrem Verzeichnis /etc/nginx müssen Sie eine Datei erstellen, z. B. badbot.conf. Sie können es nach Belieben benennen, hauptsache, der Name ist eindeutig und Sie erinnern sich an ihn.
Fügen Sie nun die folgende Zeile zu dieser Datei hinzu:
if ($http_user_agent ~* "Amazonbot"){ return 403; }
Auf diese Weise werden wir für alle Bots mit dem User-Agent „Amazonbot“ eine Serverantwort 403 zurückgeben.
Der nächste Schritt besteht darin, die Direktive in den Server-Block aufzunehmen:
include /etc/nginx/badbot.conf;
Starten Sie danach nginx mit dem Befehl neu:
service nginx restart
oder
service nginx reload
Denken Sie daran, diese Befehle als Root auszuführen.
Fertig. Wenn Sie Hosting haben, müssen Sie sich an den Hosting-Support wenden, um dies für Sie zu erledigen.
Das Blockieren von Amazonbot ist eine leichte Aufgabe
Schwierigkeiten können nur auftreten, wenn Sie Hosting auf Basis von nginx haben, da der Prozess dort etwas komplexer ist. Aber wenn Sie VPS oder VDS haben, ist es überhaupt nicht schwierig.
Jetzt wissen Sie, wie Sie Amazonbot auf Ihrer Website blockieren können. Damit verabschiede ich mich von Ihnen und wünsche Ihnen viel Erfolg. Alles Gute!
Если материалы с данного сайта были полезны, и вы желаете поддержать блог, то можете воспользоваться формой по ссылке: Донат на поддержку блога