Accueil

Snort : Détection d'intrusion réseau (NIDS)

Security
Difficulte: Advanced
5 min de lecture

Tutoriel détaillé pour installer et configurer Snort, un système de détection d\'intrusion réseau (NIDS), pour surveiller et sécuriser votre infrastructure.

Retour aux tutoriels

L'essentiel

  • Snort est un IDS/IPS réseau basé sur les signatures : il compare le trafic en temps réel à des jeux de règles. Il réclame au moins deux interfaces réseau, une pour l'administration et une dédiée à l'écoute.
  • Quatre points sont à vérifier dans /etc/snort/snort.conf : ipvar HOME_NET qui doit correspondre à votre réseau local, ipvar EXTERNAL_NET !$HOME_NET, var RULE_PATH /etc/snort/rules, et la ligne include $RULE_PATH/local.rules qui doit être décommentée pour charger vos propres règles.
  • Validez toujours la configuration avec snort -T -c /etc/snort/snort.conf avant de lancer quoi que ce soit. En mode détection : snort -A console -q -u snort -g snort -c /etc/snort/snort.conf -i eth1, où -i désigne l'interface de monitoring et les alertes sont journalisées dans /var/log/snort.
  • Pour valider la chaîne de bout en bout, ajoutez une règle de test dans /etc/snort/rules/local.rulesalert icmp any any -> $HOME_NET any (msg:"Test de ping ICMP"; sid:1000001; rev:1;) — puis envoyez un ping depuis une autre machine du réseau : l'alerte doit s'afficher sur la console.
  • Le mode IPS (inline) se lance avec -Q --daq afpacket -i eth0:eth1 et impose de passer les règles de alert à drop ou reject : le trafic traverse alors physiquement Snort et une mauvaise règle coupe du trafic légitime. Suricata, fork multi-thread plus moderne, est souvent préféré pour les nouvelles installations à haut débit.
Qu'est-ce que Snort ?
Snort est un système de détection et de prévention d'intrusions réseau (IDS/IPS) open-source. Il analyse le trafic réseau en temps réel et le compare à un ensemble de règles pour identifier les activités malveillantes, les scans de ports, les tentatives d'exploitation de vulnérabilités, et d'autres menaces. C'est l'un des outils IDS les plus anciens et les plus reconnus.

Pourquoi utiliser Snort ?

  • Détection basée sur les signatures : Très efficace pour détecter les menaces connues grâce à de vastes ensembles de règles (officielles, communautaires, ou payantes).
  • Trois modes de fonctionnement : Il peut agir comme un simple "sniffer" de paquets, un enregistreur de paquets, ou un système de détection d'intrusion complet.
  • Mature et Stable : A des décennies de développement et d'utilisation en production derrière lui.
  • Intégration : Peut être intégré avec d'autres outils (pare-feu, SIEM) pour une réponse automatisée.

Prérequis

  • Un serveur Linux (Ubuntu/Debian) avec au moins deux interfaces réseau : une pour la gestion et une pour l'écoute (monitoring).
  • Accès root ou privilèges sudo.

Contenu Premium

Ce tutoriel avancé est réservé aux membres premium.

9,90€ / mois
  • Tous les tutoriels avancés
  • Nouveaux contenus chaque semaine
  • Suivi de progression
  • Annulation à tout moment
MR

Écrit par

Morgann Riu

Expert en cybersécurité et administration Linux. Je partage mes connaissances à travers des tutoriels gratuits et des formations pour aider les administrateurs systèmes et développeurs à sécuriser leurs infrastructures.

Questions fréquentes

Snort tourne mais aucune alerte n'apparaît, par où commencer ?
Trois causes couvrent la quasi-totalité des cas. Les règles d'abord : vérifiez que var RULE_PATH pointe bien sur /etc/snort/rules et que la ligne include $RULE_PATH/local.rules est décommentée. L'interface ensuite : l'option -i doit désigner l'interface de monitoring et non celle d'administration, faute de quoi Snort n'observe que son propre trafic de gestion. Enfin HOME_NET : si la valeur ne correspond pas à votre réseau réel, les règles écrites pour $HOME_NET ne se déclenchent jamais. Commencez par snort -T -c /etc/snort/snort.conf pour éliminer une erreur de configuration.
Pourquoi faut-il deux interfaces réseau sur la sonde ?
L'une porte l'administration (SSH, supervision) et garde une adresse joignable ; l'autre est dédiée à l'écoute du trafic à inspecter, et c'est elle que vous passez à l'option -i. Les séparer évite que la sonde analyse ses propres flux de gestion et permet de placer l'interface de capture sur le segment réellement à surveiller. En mode IPS, on va plus loin encore avec une paire d'interfaces (-i eth0:eth1), puisque le trafic doit traverser Snort pour pouvoir être bloqué.
Quelle différence concrète entre le mode IDS et le mode IPS ?
En mode IDS, Snort est passif : il observe le trafic sur son interface d'écoute et se contente d'alerter, sur la console avec -A console ou dans /var/log/snort. En mode IPS (inline), il se lance avec -Q --daq afpacket et une paire d'interfaces, le trafic transite réellement par lui, et les règles passées de alert à drop ou reject bloquent effectivement les paquets. Le mode IPS est nettement plus complexe et à manier avec une extrême prudence : une règle trop large coupe du trafic légitime.
Snort ou Suricata pour une nouvelle installation ?
Suricata est un fork plus moderne de Snort, conçu dès l'origine pour être multi-thread, ce qui le rend généralement plus performant sur les matériels actuels à plusieurs cœurs. Snort a comblé une partie de l'écart avec Snort 3, mais pour un déploiement neuf à haut débit, Suricata est souvent le choix par défaut. Snort garde pour lui sa maturité, des décennies de développement et d'utilisation en production, et un écosystème de règles très fourni.
Comment maintenir les règles à jour sans écraser les miennes ?
Snort ne vaut que par la fraîcheur de ses règles : un jeu figé ne détecte plus rien de récent. En manuel, on télécharge les règles communautaires depuis le site de Snort et on les dépose dans /etc/snort/rules/. En pratique, on automatise avec un gestionnaire de règles comme Oinkmaster ou PulledPork, qui récupère et applique les mises à jour. Gardez vos règles maison dans local.rules, distinct des fichiers de règles officiels, pour qu'une mise à jour ne les efface pas.

Partager ce tutoriel

Cet article vous a plu ?

Cet article vous a-t-il été utile ?

Merci pour votre retour !

Commentaires

Recommandé pour vous

Article de fond sur le sujet

Checklist Sécurité Linux

30 points essentiels pour sécuriser un serveur Linux. Recevez aussi les nouveaux tutoriels par email.

Pas de spam. Désabonnement en 1 clic.