TOTAL
Depuis Dec 2006
1'942'871 Visiteurs
4'218'042 Pages

Stats Nov 2010
82'909 Visiteurs
146'476 Pages
196 pays
Statistiques completes



Aidez-nous à traduire
nos tutoriaux!

REJOINGNEZ
l'équipe OpenManiak.
SNORT - Le tutorial facile

Snort Tutorial
Dernière modif: Dec 07 2007


Outil
Installation
Ergonomie
Forum



Détails Snort, c'est quoi?
Captures d'écran
Prérequis
Snort
BASE
Mise à jour Snort
Règles Bleedingsnort
Port Mirroring



⚠️⚠️⚠️
Please check our website about
attractions in Western Switzerland !! (Please use english translation).

⚠️⚠️⚠️
Merci de consulter notre site sur les
activités à faire en Suisse romande !!


1 - INSTALLATION DE SNORT

Vous pouvez installer Snort à l'aide d'un package ou manuellement. Si vous l'installez avec un package, vous aurez une version de Snort realtivement ancienne parce que les packages ne sont pas mis à jour très fréquemment mais vous n'aurez pas besoin de vous occuper des dépendances de Snort ou d'installer des outils pour la compilation.

1.a INSTALLATION PAR PACKAGE
     (Snort 2.3.3)
1.b INSTALLATION MANUELLE
     (Snort 2.6.1.3)


1.a INSTALLATION PAR PACKAGE (Snort 2.3.3)

Installation de Snort compilé pour envoyer les logs vers MySQL:

#apt-get install snort-mysql
Un tutorial apparaît. Entrer les paramètres:
- réseau sous surveillance: any
- paramétrage de la base de données: non

Continuez avec le point 2.


1.b INSTALLATION MANUELLE (Snort 2.6.1.3)

Pour débuter, nous devons installer les outils de compilations et les dépendances de Snort.

Les outils de compilation:

#apt-get install build-essential
LIBNET et ses fichiers de développement.
Libnet est une API générique réseau.

#apt-get install libnet1-dev
LIBPCAP et ses fichiers de développement..
Libpcap est une librairie pour capturer des paquets réseaux.

#apt-get install libpcap0.8-dev
LIBPCRE et ses fichiers de développement.
Pcre est une librairie de fonctions utilisant la même syntaxe et sémantique que Perl 5.

#apt-get install libpcre3-dev
Librairies de développement MySQL et fichiers header:

#apt-get install libmysqlclient12-dev
CHECKINSTALL pour désinstaller facilement les programmes installés depuis la source:

#apt-get install checkinstall


Téléchargez Snort et décompressez le.

#tar -xvf snort-2.6.1.3.tar.gz
Créez deux dossiers, un pour stocker les fichiers de configuration, l'autre pour stocker les règles Snort.

#mkdir /etc/snort
#mkdir /etc/snort/rules
Copiez les fichiers de configuration de Snort dans le dossier /etc/snort/ .

#cp snort_inline-2.6.1.3/etc/* /etc/snort/
Copiez deux fichiers de configuration dans notre dossier /etc/snort/rules:
- classification.config: définit des URLs pour les références trouvées dans les règles.
- reference.config: inclus de l'information pour la prioritisation des règles.

#cp snort-2.6.1.3/etc/classification.config /etc/snort_inline/rules/
#cp snort-2.6.1.3/etc/reference.config /etc/snort_inline/rules/
Créez un utilisateur appelé snort pour lancer Snort:

#useradd snort -d /var/log/snort -s /bin/false -c SNORT_IDS
Créez un dossier de log appertenant à l'utilisateur snort:

#mkdir /var/log/snort
#chown -R snort /var/log/snort
Vous avez besoin premièrement d'utiliser la commande "configure" pour vérifier les dépendances et préparer Snort à être compiler pour MySQL.

#cd snort_inline-2.6.1.3
#./configure --with-mysql
si vous avez installé les dépendances correctement, la commande "configure" doit se terminer sans erreur!
Si vous avez un message d'erreur, regardez ci-dessous.

Ensuite, nous compilons et installons Snort.

#make
#checkinstall
Regardez la page CheckInstall pour plus de détails à propos de cette commande.
Ci-dessous, la sortie écran sur notre système de test:

checkinstall 1.6.0, Copyright 2002 Felipe Eduardo Sanchez Diaz Duran
This software is released under the GNU GPL.

*****************************************
**** Debian package creation selected ***
*****************************************

This package will be built according to these values:

0 - Maintainer: [ root@ubuntu ]
1 - Summary: [ Package created with checkinstall 1.6.0 ]
2 - Name: [ snort ]
3 - Version: [ 2.6.1.3 ]
4 - Release: [ 1 ]
5 - License: [ GPL ]
6 - Group: [ checkinstall ]
7 - Architecture: [ i386 ]
8 - Source location: [ snort-2.6.1.3 ]
9 - Alternate source location: [ ]
10 - Requires: [ ]


Messages d'erreur que vous pouvez obtenir après le lancement de la commande "./configure --with-mysql":

Build-essential n'est pas installé.

root@ubuntu:/home/po/Desktop/snort-2.6.1.3# ./configure --with-mysql
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for gawk... no
checking for mawk... mawk
checking whether make sets $(MAKE)... no
checking whether to enable maintainer-specific portions of Makefiles... no
checking for style of include used by make... none
checking for gcc... no
checking for cc... no
checking for cc... no
checking for cl... no
configure: error: no acceptable C compiler found in $PATH
See `config.log' for more details.


Libnet1-dev n'est pas installé.

ERROR! Libpcap library/headers not found, go get it from
http://www.tcpdump.org
or use the --with-libpcap-* options, if you have it installed
in unusual place


Libpcap0.8-dev n'est pas installé.

ERROR! Libpcap library/headers not found, go get it from
http://www.tcpdump.org
or use the --with-libpcap-* options, if you have it installed
in unusual place


Libpcre3-dev n'est pas installé.

ERROR! Libpcre header not found, go get it from
http://www.pcre.org


Libmysqlclient12-dev n'est pas installé.

**********************************************
ERROR: unable to find mysql headers (mysql.h)
checked in the following places
/usr/include
/usr/include/mysql
/usr/local/include
/usr/local/include/mysql
**********************************************



2 - CONFIGURATION DE LA BASE DE DONNÉES MYSQL

Ajoutez un mot de passe pour l'utilisateur root MySQL:

#mysqladmin -u root password nouveau_mot_de_passe_root
Créez la base de données MySQL et les tables pour recevoir les logs de Snort:

#mysql -u root -p
>create database snort;
Comme il est dangereux d'accéder la base de données avec l'utilisateur root, il est nécessaire de créer un utilisateur avec des permissions sur la base de données snort uniquement:

>grant all on snort.* to snortuser@localhost identified by 'snortpassword';
Rechargez les privileges MySQL:

>flush privileges;
>exit;
Maintenant, nous devons créer les tables dans la base de données snort:
Par chance, les tables sont déjà créées et nous devons juste les trouver et les installer dans la base de données:

Installation par package

Trouvez les tables: dpkg -L snort-mysql
Recherchez le fichier create_mysql.gz qui est normalement situé dans le dossier /usr/share/doc/snort-mysql.
Dézippez le fichier:

#gzip –d /usr/share/doc/snort-mysql/create_mysql.gz
Importez les tables MySQL:

#mysql -u root -p snort < /usr/share/doc/snort-mysql/create_mysql
Installation manuelle

#mysql -u root -p snort < schemas/create_mysql



3 - CONFIGURATION DE SNORT POUR SQL

Nous devons dévié les logs de Snort dans la base de données:
Ceci est déjà fait en installant le package snort-mysql, il est juste nécessaire de configurer le login et mot de passe pour accéder à la base de données snort.
Dans le fichier /etc/snort/snort.conf, nous devons modifier les lignes entre (#DBSTART#) et (#DBEND#):

output database: log, mysql, user=snortuser password=snortpassword dbname=snort host=localhost
Toujours dans le même fichier, décommenter les lignes suivantes:

ruletype redalert
{
type alert
output alert_syslog: LOG_AUTH LOG ALERT
output database: log, mysql, user=snortuser password=snortpassword dbname=snort host=localhost
}
Il est grand temps de lancer Snort !!

snort –u snort –c /etc/snort/snort.conf
Cela veut dire que snort est démarré avec l'utilisateur snort et va charger la configuration stockée dans le fichier /etc/snort/snort.conf. Pour des raisons de sécurité, il est toujours mieux de démarrer des programmes sans l'utilisateur root.

Si vous voyez la bannière Snort, cela veut dire que Snort est correctement chargé, si ce n'est pas le cas, regarder attentivement le message d'erreur.

Pour lancer snort automatiquement au démarrage du système, ajouter une ligne dans le fichier /etc/crontab.

@reboot root snort -u snort -c /etc/snort/snort.conf >> /dev/null
L'installation de Snort est maintenant terminée!
Pour consulter avec un navigateur les logs stockés la base de données, il est nécessaire d'installer la plate-forme BASE en suivant le tutorial BASE.