La détection d’intrusion dans un réseau est importante pour la sécurité informatique. Système de détection d’intrusion utilisé pour la détection des tentatives illégales et malveillantes dans le réseau. Snort est un système de détection d’intrusion open source bien connu. L’interface Web (Snorby) peut être utilisée pour une meilleure analyse des alertes. Snort peut être utilisé comme un système de prévention des intrusions avec un pare-feu iptables/pf. Dans cet article, nous allons installer et configurer un système IDS open source snort.
Installation de snort
Prérequis
La bibliothèque d’acquisition de données (DAQ) est utilisée par le snort pour les appels abstraits aux bibliothèques de capture de paquets. Elle est disponible sur le site web de snort. Le processus de téléchargement est montré dans la capture d’écran suivante.
Extractez-le et exécutez les commandes ./configure, make et make install pour l’installation de DAQ. Cependant, DAQ a besoin d’autres outils donc le script ./configure va générer les erreurs suivantes .
erreur flex et bison
erreur libcap.
C’est pourquoi il faut d’abord installer flex/bison et libcap avant l’installation de DAQ, ce qui est montré dans la figure.
L’installation de la bibliothèque de développement libpcap est montrée ci-dessous
Après l’installation des outils nécessaires, exécutez à nouveau le script ./configure qui montrera la sortie suivante.
le résultat des commandes make et make install est montré dans les écrans suivants.
Après une installation réussie du DAQ, nous allons maintenant installer snort. Le téléchargement en utilisant wget est montré dans la figure ci-dessous.
Extraire le paquet compressé en utilisant la commande donnée ci-dessous.
#tar -xvzf snort-2.9.7.3.tar.gz
Créer le répertoire d’installation et définir le paramètre prefix dans le script configure. Il est également recommandé d’activer le drapeau sourcefire pour la surveillance de la performance des paquets (PPM).
#mkdir /usr/local/snort#./configure --prefix=/usr/local/snort/ --enable-sourcefire
Le script de configuration génère une erreur en raison de l’absence des bibliothèques de développement libpcre-dev , libdumbnet-dev et zlib.
Erreur due au manque de la bibliothèque libpcre.
Erreur due au manque de la bibliothèque dnet (libdumbnet).
Le script de configuration génère une erreur due au manque de la bibliothèque zlib.
L’installation de toutes les bibliothèques de développement requises est montrée dans les captures d’écran suivantes.
# aptitude install libpcre3-dev
# aptitude install libdumbnet-dev
# aptitude install zlib1g-dev
Après l’installation des bibliothèques requises ci-dessus pour snort, exécutez à nouveau les scripts de configuration sans aucune erreur.
Exécutez les commandes make & make install pour la compilation et les installations de snort dans le répertoire /usr/local/snort.
#make
#make install
Enfin, snort fonctionne depuis le répertoire /usr/local/snort/bin. Actuellement, il est en mode promisc (mode de vidage de paquets) de tout le trafic sur l’interface eth0.
Le vidage du trafic par l’interface snort est montré dans la figure suivante.
Règles et configuration de Snort
L’installation de snort à partir du code source a nécessité des règles et un paramétrage de la configuration donc maintenant nous allons copier les règles et la configuration sous le répertoire /etc/snort. Nous avons créé des scripts bash uniques pour les règles et le paramétrage de la configuration. Il est utilisé pour le paramétrage suivant de snort.
- Création d’un utilisateur snort pour le service snort IDS sur linux.
- Création de répertoires et de fichiers sous le répertoire /etc pour la configuration de snort.
- Mise en place des permissions et copie des données du répertoire etc du code source de snort.
- Suppression du # (signe commentaire) du chemin des règles dans le fichier snort.conf.
ipvar HOME_NET 192.168.1.0/24 # LAN side
ipvar EXTERNAL_NET !$HOME_NET # WAN side