Le problème.
Un serveur personnel qui expose SSH et des services sur Internet est scanné en permanence. Je voulais voir ce qui arrive réellement, apprendre à régler un IDS sans être noyé sous le bruit, et industrialiser l'analyse.
Ce que j'ai construit.
01
Détection
- Suricata 8 en conteneur sur le réseau de l'hôte, IPv4 et IPv6, mise à jour hebdomadaire automatique des règles.
- EveBox pour trier les alertes, accessible uniquement par tunnel SSH.
- Réglage du bruit versionné dans git : exclusions précises par règles pass plutôt que désactivation globale, rechargement à chaud.
02
Durcissement
- fail2ban : 5 échecs en 10 minutes, ban d'une heure qui augmente à chaque récidive.
- Comptes techniques sans mot de passe, rotation des journaux, mot de passe d'administration changé après une fuite dans les journaux.
03
Analyse assistée
- Compte en lecture seule pour l'agent IA et commande /analyse-ids : tri en incident probable, à investiguer, attendu ou bruit, puis investigation des points suspects.
- Accès administrateur de l'agent fermé par défaut, ouvert seulement avec validation explicite.
L' architecture.
Internetscans · SSH
Serveur Linuxinterface réseau
Suricata53 500 règles
EveBoxtunnel SSH
Agent IAlecture seule · /analyse-ids
Sécurité & garde-fous.
- Surveillance seule : rien n'est bloqué par l'IDS, il reçoit une copie du trafic.
- Réseau personnel uniquement.
- Moindre privilège pour l'agent IA : lecture seule par défaut.
Les résultats.
- Détection de bout en bout testée et validée, robots SSH bannis dès le démarrage.
- Limites documentées honnêtement : sans switch avec copie de port, l'IDS ne voit que le trafic du serveur.