Supervision fail2ban centralisée pour serveurs personnelsGratuitAuto-hébergé

Vos fail2ban éparpillés,
un seul écran pour voir et bloquer.

SSem SecuMon est une console de supervision fail2ban centralisée et gratuite pour les particuliers qui administrent eux-mêmes un VPS ou un serveur domestique. Avec un petit agent sur chaque serveur, vous voyez sur un seul écran qui est bloqué en ce moment et à quelle récidive il en est, et vous exécutez bannissement · débannissement · blocage de plage · blocage par pays au moyen de commandes signées.

Serveur Linux + fail2ban · nftables · l’agent n’ouvre aucun port entrant · console installée sur votre propre serveur

secumon Tableau de bordIP banniesCiblesExécutionBlocage par pays admin · ADMIN
Bannissements actifs128Total sur 3 serveurs
Nouveaux aujourd’hui3712 de plus qu’hier
IP récidivistes19Au moins 3 bannissements
Blocages automatiques6Dernières 24 heures
Évolution des bannissements · 24 hweb-01vpn-gw
Serveurs3 agents
  • web-01il y a 12 s
  • vpn-gwil y a 8 s
  • home-nasil y a 21 s
IP bannies en ce moment128
IPServeursjailNiveau de récidivePaysTemps restant
203.0.113.45web-01 · vpn-gwsshdNiveau 4 · 8 hXA5 h 12 min
198.51.100.7vpn-gwsshdNiveau 2 · 2 hXB1 h 40 min
203.0.113.201home-nassshdNiveau 3 · 4 hXC3 h 5 min
192.0.2.88web-01apache-authNiveau 1 · 1 hXD24 min

Les noms de serveurs, les IP et les pays de cet exemple sont fictifs (les IP proviennent de plages réservées à la documentation ; les codes pays XA–XD sont des exemples).

Même les serveurs personnels sont visés chaque jour

Un serveur exposé sur Internet reçoit des milliers de tentatives de connexion par jour. fail2ban les bloque, mais dès que vous avez plusieurs serveurs, une partie de la situation vous échappe.

Il faut consulter chaque serveur séparément

Pour savoir qui est bloqué, il faut se connecter en SSH à chaque serveur et lancer fail2ban-client. Et vous ne voyez pas qu’une même IP s’attaque à plusieurs serveurs.

Le bannissement exponentiel finit toujours par expirer

Plus une IP récidive, plus elle reste bloquée longtemps — mais elle finit toujours par être libérée. Une adresse qui revient pour la troisième fois ne se trompe pas : elle insiste.

Le blocage de plages est source d’erreurs

Ajouter des milliers de plages au pare-feu de chaque serveur et les tenir à jour demande beaucoup de travail. Une seule erreur, et c’est votre propre accès qui est coupé.

En un coup d’œil

Voir, bloquer, bloquer à grande échelle : tout se fait depuis une seule console. Les écrans ci-dessous utilisent uniquement des données d’exemple fictives.

Suivre une IP de bout en bout

Cliquez sur une IP dans la liste des IP bannies : les serveurs où elle est bannie, son historique de bannissements, son niveau actuel et la durée estimée du prochain bannissement sont réunis au même endroit.

  • Les serveurs où la même IP est bannie, affichés ensemble
  • Pays tiré d’une table de correspondance intégrée — sans consommer de quota d’API externe
  • Débannissement · blocage de plage · signalement AbuseIPDB, sur place
203.0.113.45XARécidive ×4
Serveurs concernés
web-01 · vpn-gw
Niveau actuel
Niveau 4 · 8 h
Prochain bannissement prévu
16 h
Score de réputation
100 / 100

Historique des bannissements — 1 h → 2 h → 4 h → 8 h

DébannirBlocage de plageSignaler à AbuseIPDB

Pour bloquer large, on vérifie deux fois

Le blocage de plages est la fonction la plus risquée : plusieurs garde-fous se superposent pour éviter les erreurs. Il ne s’exécute qu’après ressaisie de la plage, et par défaut il se lève de lui-même au bout de 30 jours.

  • Plages plus larges que /16 en IPv4 · /48 en IPv6 refusées
  • Réseaux privés · boucle locale · plages que vous avez désignées : blocage impossible
  • Plusieurs plages × plusieurs serveurs en une seule fois
Blocage de plage
Plage
203.0.113.0/24
Nombre d’adresses
256
Serveurs
web-01 · vpn-gw
Durée
Levée automatique après 30 jours

Les plages protégées (réseaux privés · VPN · vos serveurs) ne peuvent pas être bloquées.

AnnulerBloquer

Vous pouvez aussi bloquer par pays

Les plages IP des pays que vous choisissez, parmi 233, sont ajoutées au pare-feu des serveurs. Dès l’activation, la liste est téléchargée et appliquée à tous les serveurs en moins de 30 secondes.

  • Rien n’est renvoyé aux serveurs si rien n’a changé
  • Ordre des règles figé : les réponses aux connexions déjà établies et le DNS ne sont jamais bloqués
  • Le nombre de plages est affiché avant l’activation
Blocage par pays 2 pays · 4 600 plages
  • XAPays A3 120 plages
  • XBPays B1 480 plages
  • XCPays C9 860 plages
  • XDPays D640 plages

Le DNS faisant autorité (53) est toujours autorisé. Si vous gérez la réception de courrier ou un VPN, consultez d’abord le guide.

Ce que vous pouvez faire

Voir, bloquer, et même bloquer automatiquement — juste ce qu’il faut pour quelques serveurs personnels.

Tableau de bord unifié

Bannissements en cours · bannissements cumulés · IP récidivistes · évolution de tous vos serveurs, sur un seul écran. Vous pouvez aussi n’afficher qu’un seul serveur.

Affichage du niveau de récidive

SecuMon lit le bannissement exponentiel de fail2ban (×1 · 2 · 4 · 8…) pour indiquer le niveau atteint et la durée du prochain blocage.

Bannir · débannir

Les commandes partent directement de l’interface. L’agent du serveur ne les exécute qu’après avoir vérifié la signature, et le résultat est consigné dans l’historique des commandes.

Blocage de plage

Limite de largeur · plages protégées · ressaisie de confirmation · levée automatique (30 jours par défaut) préviennent les erreurs. Si une plage plus large est déjà bloquée, l’opération est ignorée.

Blocage automatique des IP récidivistes

Les IP bannies au moins 3 fois au total sont bloquées 30 jours sur tous vos serveurs. Uniquement des IP individuelles, 20 au maximum par passage, le tout journalisé et notifié.

Listes de blocage publiques

Spamhaus DROP · FireHOL level1 sont téléchargées une fois par jour et appliquées à tous vos serveurs. Les entrées qui chevauchent vos propres plages sont écartées au préalable.

Blocage par pays

Les plages des pays choisis sont placées dans une liste dédiée du pare-feu des serveurs. La désactivation vide uniquement cette liste — les autres blocages restent en place.

AbuseIPDB · Telegram

Seules les IP bannies peuvent être signalées à AbuseIPDB, qui sert aussi à consulter leur réputation. Les blocages automatiques et les changements de listes sont notifiés via Telegram. Les clés restent uniquement sur le serveur de la console.

Journal d’audit · authentification à deux facteurs

Chaque exécution, signalement et connexion est journalisé. Trois rôles — lecture seule · opérateur · administrateur — et authentification à deux facteurs TOTP.

Comment ça marche ?

La console ne pousse jamais de commandes vers les serveurs. C’est l’agent de chaque serveur qui contacte d’abord la console pour lui remonter son état, puis récupère les commandes signées, les vérifie lui-même et les exécute.

  1. Remontée d’état Toutes les 30 secondes, l’agent lit l’état de fail2ban et du pare-feu, le signe avec sa propre clé et l’envoie à la console.
  2. Centralisation La console rassemble l’état de tous les serveurs dans une seule base de données. Chaque serveur apparaît sur le même écran.
  3. Commandes en file d’attente Quand vous cliquez sur bannir ou bloquer, la console signe la commande et la place dans la file d’attente, sans jamais se connecter au serveur.
  4. Vérification avant exécution L’agent n’exécute que les commandes dont il a vérifié la signature, le serveur cible, l’expiration (60 secondes) et l’absence de rejeu.
  5. Un seul wrapper en root L’agent ne tourne pas en root. Les opérations privilégiées passent par un unique wrapper root qui n’accepte que les actions autorisées.

Dans le pare-feu, la décision suit cet ordre

SecuMon utilise sa propre table nftables, distincte des règles de fail2ban. Les blocages sont répartis en trois couches, ce qui permet de savoir « pourquoi c’est bloqué », et la mise à jour d’une couche laisse les autres intactes.

  1. 1Réponses aux connexions établiesAutorisé
  2. 2DNS (53)Autorisé
  3. 3Blocage manuel · automatiqueBloqué · levé à l’échéance
  4. 4Listes de blocage publiquesBloqué
  5. 5PaysBloqué

Principes de sécurité

Conçu pour que l’outil censé protéger vos serveurs ne devienne pas lui-même une nouvelle faille.

  • Les serveurs n’ouvrent aucun port entrant. C’est toujours l’agent qui se connecte en premier à la console.
  • Chaque commande est signée en Ed25519. Elle expire au bout de 60 secondes, ne s’exécute qu’une seule fois, et uniquement sur le serveur désigné.
  • Cinq actions autorisées, pas une de plus. Vérification d’état · bannir · débannir · bloquer une plage · débloquer — exécutées sous forme de tableau d’arguments, sans jamais passer par un shell.
  • Votre propre accès n’est jamais coupé. La console refuse de bloquer les réseaux privés, la boucle locale et les plages que vous avez désignées, et le wrapper du serveur revérifie chaque commande.
  • Les secrets passent uniquement par des fichiers. Clé d’API, jeton Telegram et clé de signature sont injectés sous forme de fichiers sur le serveur de la console ; les mots de passe sont hachés avec PBKDF2.
  • La connexion est protégée. Authentification à deux facteurs TOTP, verrouillage de 15 minutes après 5 échecs, et vérification d’un jeton CSRF pour chaque requête qui modifie l’état.

Prérequis

Serveurs à protéger
Linux (systemd) + fail2ban · nftables · sqlite3. amd64 · arm64. Testé sur Ubuntu 22.04 · CentOS 8.
Serveur de console
Un seul. JDK 21 · Tomcat 11 · PostgreSQL 17. Le plus simple est de passer par Docker.
Réseau
Il suffit que les serveurs puissent joindre l’adresse de la console en HTTPS. Il est recommandé de placer la console derrière un VPN ou sur un réseau interne.
Horloge
Synchronisez l’horloge de tous les serveurs par NTP. Une signature dont l’horodatage s’écarte de plus de 60 secondes est rejetée.
Langue de l’interface
L’interface de la console et les messages de journal sont pour l’instant uniquement en coréen. Cette présentation et le guide sont disponibles en 10 langues.
Tarif
Gratuit. Conçu pour les serveurs personnels.

BientôtLa distribution des fichiers d’installation est en préparation.

Consultez dès à présent le guide gratuit pour les prérequis et la procédure d’installation.

Lire le guide gratuit

Commencez avec le guide gratuit

Des prérequis au premier blocage, il vous guide étape par étape, sur la base d’un seul serveur personnel.
Il couvre aussi ce qu’il faut absolument savoir avant d’activer le blocage par pays.

Lire le guide gratuit

Des questions ? halo@levelupsoft.com