Plugin Traefik

Plugin Traefik qui bloque bots et VPN

Bots, Tor, VPN et proxys, vérifiés routeur par routeur avec un seul label. Démarre en mode monitor et ne bloque rien tant que vous ne basculez pas.

Gratuit, licence MITTesté avec Traefik v3.7

Classes de trafic

Ce qu'il vérifie

Chaque visiteur reçoit une classe. Votre service la reçoit dans X-IPScanner-Class.

  • Humain
  • Robot vérifié
  • VPN
  • Relais privé
  • Hébergement
  • Proxy
  • Tor
  • Agent IA
  • Automatisation malveillante

Installation

Quatre étapes, mode monitor d'abord

  1. 1

    Créer une clé API

    Placez-la dans l'environnement du conteneur Traefik. Chaque middleware ipscanner la lit.

    Créer une clé API gratuite
    docker-compose.yml
    environment:
      IPSCANNER_API_KEY: pk_live_...
  2. 2

    Déclarer le plugin

    Dans la configuration statique, ou avec deux flags CLI. Redémarrez Traefik.

    traefik.yml
    experimental:
      plugins:
        ipscanner:
          moduleName: github.com/ipscanner/ipscanner-traefik
          version: v0.1.0
  3. 3

    Ajouter un site et définir siteId

    Le mode et la politique viennent alors du tableau de bord, sans rechargement.

    Ajouter un site dans le tableau de bord
    labels
    traefik.http.middlewares.ipscanner.plugin.ipscanner.siteId=site_...
  4. 4

    L'attacher à un routeur

    Les autres routeurs le réutilisent sous ipscanner@docker.

    labels
    traefik.http.routers.app.middlewares=ipscanner

Votre stack

Coolify, Compose ou Kubernetes

Le même plugin, où que Traefik lise sa configuration.

Servers › votre serveur › Proxy
command:
  # ...the flags Coolify set
  - '--experimental.plugins.ipscanner.modulename=github.com/ipscanner/ipscanner-traefik'
  - '--experimental.plugins.ipscanner.version=v0.1.0'
environment:
  - IPSCANNER_API_KEY=pk_live_...
Votre app › Configuration › Container Labels
traefik.http.middlewares.ipscanner-myapp.plugin.ipscanner.siteId=site_...
traefik.http.routers.https-0-<uuid>.middlewares=gzip,ipscanner-myapp

Un nom de middleware par app, ajouté à chaque routeur généré par Coolify. Derrière Cloudflare, définissez aussi trustedProxies=cloudflare et ipHeaders=CF-Connecting-IP.

Tableau de bord Sites

Changez la politique sans toucher à Traefik

Autorisez, signalez ou bloquez chaque classe depuis le tableau de bord. Le middleware applique un changement en 30 secondes.

  • Les robots de recherche et d'IA vérifiés passent toujours.
  • Le mode monitor ne bloque rien et montre ce qu'il aurait bloqué.
  • Si IPScanner ne répond pas en 1,5 seconde, la requête passe.

Options

Options du middleware

Définissez-les sur le middleware : en labels, en YAML ou dans la CRD.

OptionPar défaut
siteIdVotre site dans le tableau de bord ; mode et politique en viennentVide
modemonitor ou enforce, sans siteIdmonitor
blockClassesClasses bloquées en mode enforce sans siteIdmalicious_automation
trustedProxiesProxys dont les en-têtes IP sont fiables : CIDR, private, cloudflareVide
ipHeadersEn-têtes lus depuis un proxy de confiance, dans l'ordreX-Forwarded-For
timeoutDélai d'une vérification, puis la requête passe1500ms
cacheTTLCache des verdicts par visiteur10m
cacheSizeVisiteurs gardés en cache10000
policyTTLDurée de validité d'une politique chargée30s
skipPathsRegex de chemin qui saute la vérificationFichiers statiques
apiKeyFileFichier contenant la clé API, pour les secretsVide
debugAjoute les en-têtes aux réponses et journalise chaque décisionfalse

Questions

FAQ du plugin Traefik

Chaque visiteur est vérifié au plus une fois toutes les 10 minutes et le verdict reste en mémoire, donc les requêtes suivantes ne passent pas par l'API. Une vérification dispose de 1,5 seconde, ensuite la requête passe.

Commencez en mode monitor

Ajoutez le middleware, lisez une semaine de trafic dans le tableau de bord, puis bloquez.