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
- Liest
robots.txtvor allem anderen und beachtet sie, einschließlichCrawl-delay. - Eine Anfrage auf einmal je Website, mit einer Pause dazwischen, und er bremst weiter, wenn Ihr Server langsamer wird oder mit 429 antwortet.
- Bleibt auf dem Host, der ihm gegeben wurde, und dessen www-/Apex-Zwilling. Er wandert nicht auf andere Domains.
- Stellt nur GET-Anfragen auf HTML; er sendet keine Formulare ab, folgt keinen Abmelde-Links und schickt keine Cookies.
- Hält am Seitenlimit des Plans, der ihn beauftragt hat - höchstens 25 Seiten bei einem anonymen Scan.
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:
- User-Agent enthält
SeodarBot - Quell-IP
85.10.199.27
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.