RousselTMLEARNING

Artículo · Traefik: del descubrimiento a la experiencia

Los plugins - ejemplo con CrowdSec

Este artículo está disponible en francés.

1. Les plugins Traefik #

Ajouter des middlewares et des providers.

Fonctionnement #

Les plugins Traefik sont écrits en Go et exécutés par l'interpréteur Yaegi intégré : pas besoin de recompiler Traefik. Ils sont publiés dans le Plugin Catalog et déclarés dans la configuration statique, puis utilisés comme des middlewares.

# configuration statique
experimental:
  plugins:
    crowdsec:
      moduleName: github.com/maxlerebourg/crowdsec-bouncer-traefik-plugin
      version: v1.3.5        # fixez une version testée
Erreur Courante : Un plugin s'exécute dans le processus Traefik : choisissez des plugins maintenus, fixez leur version et testez-les avant la production.

2. CrowdSec #

Une détection collaborative.

Architecture #

Traefik et CrowdSec
Le blocage se fait dans Traefik, avant que la requête n'atteigne l'application.
  1. Traefik écrit ses access logs dans un fichier partagé.
  2. L'agent CrowdSec les analyse avec des scénarios (force brute, scans, exploitation de vulnérabilités connues) et envoie des alertes.
  3. L'API locale crée des décisions (bannir une IP pendant 4 h) et reçoit aussi les listes partagées par la communauté.
  4. Le plugin bouncer interroge l'API locale et répond 403 aux IP bannies.

3. Mise en place avec Docker Compose #

Les éléments essentiels.

Configuration #

services:
  crowdsec:
    image: crowdsecurity/crowdsec
    environment:
      COLLECTIONS: "crowdsecurity/traefik crowdsecurity/http-cve"
    volumes:
      - ./acquis.yaml:/etc/crowdsec/acquis.yaml:ro
      - traefik-logs:/var/log/traefik:ro
  traefik:
    image: traefik:v3
    command:
      - --accesslog.filepath=/var/log/traefik/access.log
      - --experimental.plugins.crowdsec.modulename=github.com/maxlerebourg/crowdsec-bouncer-traefik-plugin
      - --experimental.plugins.crowdsec.version=v1.3.5
    volumes: [traefik-logs:/var/log/traefik]
# middleware dynamique : crowdsecLapiKey = clé créée par « cscli bouncers add traefik »
docker compose exec crowdsec cscli bouncers add traefik   # clé pour le plugin
docker compose exec crowdsec cscli metrics                 # lignes lues, scénarios déclenchés
docker compose exec crowdsec cscli decisions list          # IP bloquées
docker compose exec crowdsec cscli decisions add --ip 203.0.113.7 --duration 1h   # test
Bonne Pratique : Ajoutez vos propres adresses (supervision, bureaux) dans une liste blanche CrowdSec pour ne jamais vous bloquer vous-même.

📄 Les plugins Traefik : l'exemple de CrowdSec pour bloquer les attaques →

Mi seguimiento

  • ⏱ Duración estimada : ≈ 6 min

Inicia sesión para seguir tu progreso y tomar notas. Iniciar sesión

💬 Hacer una pregunta

Artículos recomendados

Traefik : les providers (Docker, Kubernetes, Nomad, Consul, fichiers, clés-valeurs)

Les providers alimentent la configuration dynamique de Traefik : découverte des services Docker, ...

Traefik : sécuriser et transformer les requêtes avec les middlewares (BasicAuth, ForwardAuth…)

Les middlewares Traefik modifient les requêtes et réponses entre le routeur et le service : authe...

Traefik comme Ingress Controller pour Kubernetes (Helm, IngressRoute, Gateway API)

Installer Traefik dans Kubernetes avec Helm et publier des applications avec Ingress, les CRD Ing...

Traefik : les logs (journaux applicatifs et access logs)

Configurer les deux journaux de Traefik : le journal de fonctionnement (niveaux, format) et les a...

L'API de Traefik : inspecter la configuration et sécuriser le tableau de bord

Utiliser l'API REST de Traefik pour inspecter routeurs, services, middlewares et entrypoints, l'e...

Traefik : les métriques avec Prometheus et OpenTelemetry

Exposer les métriques de Traefik (Prometheus ou OTLP), comprendre les séries par entrypoint, rout...

Traefik : vue d'ensemble, architecture et premier déploiement

Découvrir Traefik : reverse proxy et load balancer cloud-native, entrypoints, routers, services, ...

Bonnes pratiques Traefik : sécurité, haute disponibilité et observabilité

Bonnes pratiques Traefik : sécurisation du dashboard et du socket Docker, TLS moderne, middleware...

Protection des Applications

Découvrez comment sécuriser vos backends contre les abus et les attaques courantes. Guide pratiqu...

Apoyar

♥ APOYAR

Apoya RousselTM Learning

Los cursos, artículos, prácticas y certificados siguen siendo gratuitos y sin publicidad intrusiva. Una contribución libre, por el importe que elijas, financia el alojamiento, los entornos de prácticas y nuevos contenidos.

Contribuir con PayPal Importe libre · tarjeta o cuenta PayPalMás información
QR code PayPal
O escanea este código QR con tu teléfono

¡Gracias, cada contribución cuenta!