Depuis quelques semaines, le site de SOS MEDITERRANEE subit des attaques répétées. Des robots qui cherchent des failles, tentatives d’injection, scans de routes connues, requêtes malformées en rafale. Rien de sophistiqué, mais du volume. Assez pour surcharger le projet et dégrader les temps de réponse.
Pas de panique côté infra : chaque projet tourne dans son propre conteneur Docker isolé. Les robots ne peuvent pas faire tomber le serveur, et encore moins atteindre les autres sites. Mais subir des attaques perçues comme du DDoS en silence, sans rien faire, c’est pas mon genre.
La réponse : CrowdSec
C’est Florian Perrot, l’admin sys du collectif, qui a mis en place la solution. Son choix : CrowdSec.
CrowdSec est un outil de sécurité open source qui analyse les logs en temps réel et détecte les comportements suspects, trop de requêtes en peu de temps, tentatives de connexion en masse, scans de vulnérabilités connus. Quand une IP se comporte mal, elle est bloquée. Automatiquement.
Ce qui le distingue des solutions classiques de type fail2ban : l’intelligence collective. CrowdSec s’appuie sur une base de données communautaire mondiale. Une IP qui a attaqué 10 000 serveurs avant le vôtre est déjà connue, et bloquée avant même qu’elle frappe.
Comment ça s’intègre sur notre infra
L’architecture est simple et non intrusive :
- CrowdSec agent, installé sur le serveur, il lit les logs Nginx et Docker en temps réel et détecte les comportements anormaux.
- Bouncer Nginx, le composant qui agit. Quand une IP est bannie, le bouncer la bloque au niveau du reverse proxy, avant même que la requête atteigne le conteneur WordPress.
- Console CrowdSec, tableau de bord en ligne pour visualiser les alertes, les IPs bloquées, et les scénarios déclenchés.
Résultat : les robots qui s’acharnent sur SOS MEDITERRANEE se font bloquer proprement, sans consommer de ressources inutiles côté application. Le projet respire à nouveau.
Ce que ça change concrètement
Avant CrowdSec, les attaques généraient du trafic inutile qui surchargeait le conteneur, même sans trouver de faille, un volume suffisant de requêtes ralentit tout. Maintenant, ces IPs sont bloquées en amont. Le conteneur ne voit même plus passer les requêtes malveillantes.
Et comme CrowdSec est maintenant actif sur l’ensemble du serveur, tous les projets hébergés bénéficient de la protection, pas seulement SOS MEDITERRANEE. Un investissement ponctuel de mise en place pour une protection continue sur toute l’infra.
Pourquoi CrowdSec plutôt qu’une autre solution
Quelques raisons qui ont motivé le choix de Florian :
- Open source, pas de licence, pas de dépendance à un éditeur propriétaire.
- Intelligence collective, les IPs malveillantes connues de la communauté sont bloquées proactivement.
- Faible empreinte, léger, non intrusif, s’intègre sans modifier l’architecture existante.
- Compatible Docker, fonctionne bien dans un environnement conteneurisé, ce qui n’est pas trivial avec certaines solutions de sécurité réseau.
Merci à Florian Perrot pour la mise en place et le suivi, c’est exactement le genre d’expertise qu’on est contents d’avoir dans le collectif.