SeodarBot

SeodarBot holt Seiten, damit deren Betreiber sehen können, was eine Suchmaschine finden würde. Er läuft nur, wenn jemand ihn darum bittet - entweder die Betreiberin der Website aus ihrem Dashboard oder eine Person, die eine URL in den kostenlosen Scanner auf unserer Startseite getippt hat. Er crawlt das Web nicht von selbst.

User-Agent

SeodarBot/0.1 (+https://seodar.io/bot)

Wie er sich verhält

Beweisen, dass es wirklich wir sind

Jede Anfrage von SeodarBot ist signiert, Sie müssen einer User-Agent-Zeichenkette also nie aufs Wort glauben - einen Namen kann jeder fälschen, eine Signatur niemand. Er trägt die drei Header aus RFC 9421 mit dem Tag web-bot-auth, über den angefragten Host und die Adresse unseres Schlüsselverzeichnisses:

Signature-Agent: "https://api.seodar.io/.well-known/http-message-signatures-directory"
Signature-Input: sig2=("@authority" "signature-agent");created=…;keyid=…
                 ;alg="ed25519";expires=…;nonce=…;tag="web-bot-auth"
Signature: sig2=:…:

Die öffentlichen Schlüssel sind als JWKS veröffentlicht unter https://api.seodar.io/.well-known/http-message-signatures-directory. Es ist mehr als einer, weil der Satz der Weg ist, einen Schlüssel ohne Lücke zu wechseln: Der nächste Schlüssel wird veröffentlicht, bevor er benutzt wird, und der vorige bleibt, bis nichts mehr gegen ihn prüfen kann.

Wenn Ihre Firewall ihn blockiert

Ein Scan, der mit „auf dieser Website konnte nichts gemessen werden“ endet, heißt meist, dass ein Bot-Schutz statt Ihrer Website geantwortet hat. Den Namen zu erlauben reicht allein nicht: Eine Managed Challenge wird durch Ausführen von JavaScript bestanden, was ein Crawler nicht tut, die Regel muss die Prüfung also überspringen statt den Agenten zuzulassen.

In Cloudflare: Security → WAF → Custom rules → Create rule, mit diesem Ausdruck und der Aktion Skip → alle verbleibenden Custom Rules, dazu Managed Challenge und Bot Fight Modeunter „More components to skip“:

(http.user_agent contains "SeodarBot" and ip.src eq 85.10.199.27)

Beide Hälften zählen. Die Adresse allein würde alles von diesem Server durchlassen; der Name allein ist eine Zeichenkette, die jeder senden kann. Andere Firewalls benutzen andere Wörter für dasselbe - eine Allow-Regel, eine Skip-Regel, eine Ausnahme - und das einzutragende Paar ist immer dasselbe:

Diese Adresse ist die einzige ausgehende Adresse dieses Dienstes, und diese Seite ist der Ort, an dem sie veröffentlicht ist - sollte sie sich je ändern, ändert sie sich zuerst hier.

Ihn blockieren

Fügen Sie dies Ihrer robots.txt hinzu, und er hält bei der nächsten Anfrage an:

User-agent: SeodarBot
Disallow: /

Wenn SeodarBot Ihnen Ärger macht oder Sie glauben, er habe eine Regel ignoriert, schreiben Sie an [email protected] mit einem Zeitstempel, und wir sehen in die Protokolle.