Shieldlist

L'agent Shieldlist

Le programme qui tourne sur une machine protégée : il lit les journaux de cette machine, décide ce qui est une attaque, et applique la réponse dans le noyau. C'est un produit complet à lui seul — configuré localement par défaut, enrôlé auprès d'un contrôleur en option.

ligne de journal → parseur → coup → seuil → déclenchement → ban → nftables

Un parseur reconnaît quelque chose dans une catégorie de journaux. Une règle compte ce que les parseurs trouvent et se déclenche quand son seuil est franchi dans sa fenêtre. Une politique dit combien de temps dure le ban et comment il monte à la récidive. Une exemption retire la sanction et jamais l'observation.

L'application, ce sont des ensembles nftables avec un délai d'expiration par élément : un ban survit à l'agent — tuer le processus est un trou de détection, jamais un déblocage.

Pages

Getting started Installer, regarder ce qu'il ferait, puis l'armer
Enrolment Rejoindre un contrôleur : ce qui vient de lui, ce qui reste à vous
Configuration Chaque fichier et chaque clé, avec son rôle
Writing rules Parseurs, seuils, poids, et tester une règle avant de l'armer
Commands La CLI complète, et pourquoi les commandes qui agissent passent par l'agent
Replay Lire le passé d'un journal, et la règle qui rend ça utile
Abuse reporting Signaler les fautifs à AbuseIPDB — et ce qui ne peut jamais sortir
Enforcement Comment un ban arrête vraiment le trafic, et ce qui survit à un redémarrage
Sizing and limits Ce que ça coûte à la machine — et le budget qu'aucun réglage ne borne
Troubleshooting Quand quelque chose cloche

Dans les dépôts

Le wiki est le guide ; ceci fait autorité, et c'est versionné avec le code.

Spécification Vocabulaire, exigences et décisions ouvertes. Tranche tout ce que ce wiki dirait de faux.
Référence de configuration Le format, clé par clé
Ce que ça coûte à la machine Mesures de mémoire, processeur et disque

Où en est le projet

Publié : v0.0.9 (26 août 2026) — l'enrôlement auprès d'un contrôleur, le format de règle simple (une règle par fichier, threshold: 5/10m, des packs qui sont des listes de règles, les niveaux instant/strict/standard/lenient), des packs de règles pour sshd, le web, le mail, BIND, MariaDB et Plesk, les clés pays et réseau sur les règles et les exemptions, les cibles par site, le partage de bans par pack dans un parc, les listes publiées tenues dans leurs propres ensembles pare-feu, et beaucoup de travail sur la tenue de l'agent sous un flood. Avant elle, la v0.0.3 avait apporté le signalement à AbuseIPDB en une chance, shield report et shield tail, les hooks, le préfiltre multi-littéral prefilter_any et les adresses de la machine jamais bannies. L'agent fait tout le travail à lui seul : il lit des fichiers et des unités journald, parse, évalue sans dépendre de l'ordre, décide avec des politiques, des exemptions et de la confiance, applique dans nftables, et garde son propre enregistrement durable. Il a été éprouvé contre cinq millions d'attaquants distincts sur une machine virtuelle à deux cœurs sans perdre un ban.

La suite APT à installer est stable : elle porte les versions publiées et les conserve. Une suite dev porte nos builds de développement — en avance sur les versions publiées, et faits pour casser. Ce wiki décrit le code publié.

Pas encore là : la signature des versions — les sommes de contrôle prouvent que le téléchargement n'est pas corrompu et rien de plus ; la découverte, qui proposerait quoi surveiller au lieu d'attendre qu'on le lui dise ; la centralisation des journaux sur le contrôleur.