Anubis erklärt: Richtlinien und Proof of Work für selbst betriebene Websites
Technische Analyse der Proxy-Klassifizierung, Browser-Rechenaufgaben, Richtlinien, Bereitstellung, Messwerte, Barrierefreiheit und Fehlentscheidungen bei Anubis.
Einordnung und aktuelles Signal
Anubis ist ein quelloffener Schutz-Proxy vor dem Origin. Automatisierte Massenabrufe müssen Rechenarbeit leisten, während regelkonforme Besucher passieren. Zum Abrufzeitpunkt hatte das Repository 20.826 Stars, rund 23 Commits in 30 Tagen und Release v1.25.0. Die Aufmerksamkeit folgt dem Druck durch KI-Datensammlung; die Maintainer beschreiben den Ansatz jedoch als Maßnahme mit hoher Reibung, nicht als Standardinstallation.
Einsatzfelder und Fähigkeiten
Geeignet sind Dokumentation, Code-Hosting, persönliche Dienste und öffentliche Gemeinschaften, deren CPU, Bandbreite oder Datenbankverbindungen unter Bot-Wellen leiden. Geordnete Regeln erlauben, verweigern, prüfen oder gewichten Anfragen und berücksichtigen bekannte Bots sowie eigene Pfade. Nach bestandener Aufgabe erhält der Client einen signierten Nachweis. Prometheus-Metriken zeigen Prüfungen, Fehler, Regeltreffer und Verkehr.
Anfrageweg und Rechenbeweis
Jede Anfrage durchläuft Regeln in fester Reihenfolge. ALLOW lässt sie durch, DENY weist sie ab, CHALLENGE beginnt die Prüfung und WEIGH verändert die spätere Schwierigkeit. Der Browser berechnet einen Wert für ein Ziel; der Server prüft ihn günstig und stellt einen zeitlich begrenzten Nachweis aus. Damit steigen die Gesamtkosten für Sammler, doch die Identität des Besuchers ist nicht bewiesen und leistungsfähige Automatisierung bleibt möglich.
Technik und Integration
Der Dienst ist in Go geschrieben, die Prüfoberfläche nutzt Preact, Richtlinien stehen in YAML. Signaturen und JWT sichern den Zugangsnachweis; Ed25519-Schlüssel und Sitzungen sind dokumentiert. Anubis läuft zwischen nginx, Caddy, HAProxy, Traefik oder Kubernetes-Ingress und dem Origin, als Image, Paket oder Systemdienst. Vertrauenswürdige Proxy-Header, die Ermittlung der Client-Adresse und die Ziel-URL müssen korrekt konfiguriert sein.