|
3.Installation et Configuration de SNORT:
Nous allons maintenant décrire les différents étapes d’installation et de configuration pour avoir un système de détection d’intrusion Snort fonctionnel. On a choisi de travailler sur la distribution Ubuntu Linux 8.04 vu que cette distribution offre aux utilisateurs le paquet “snort-mysql” qui nous évite d’installer snort à partir des sources.
|
insaf@insaf-laptop:~$ sudo apt-get install snort-mysql |
Ensuite il faut installer les serveurs apache, mysql et php : la base mysql va servir pour le stockage des logs et des alertes. Le serveur apache et php vont servir pour exécuter l’interface web acidbase qui nous facilitera la gestion de Snort.
|
insaf@insaf-laptop:~$ sudo apt-get install apache2 apache2-doc mysql-server php5 libapache2-mod-php5 php5-mysql |
Pour faciliter l'utilisation et l'administration de la base de données mysql, vous pouvez également installer l'outil phpmyadmin :
|
insaf@insaf-laptop:~$ sudo apt-get install phpmyadmin |
Nous commençons donc par créer la base de données mysql qui accueillera les logs et alertes de snort à l'aide de la commande suivante :
|
insaf@insaf-laptop:~$ mysql -u root -p
mysql> create database snort;
Query OK, 1 row affected (0.03 sec)
mysql> GRANT INSERT, DELETE, UPDATE ON snort.* TO 'snort'@'localhost' IDENTIFIEDBY 'snort';
Query OK, 0 rows affected (0.00 sec)
Mysql>GRANT INSERT, DELETE, UPDATE ON snort.* TO 'snort'@'%' IDENTIFIED BY 'snort';
Query OK, 0 row affected (0.00 sec) |
Rechargez les privileges MySQL:
|
>flush privileges;
>exit; |
Maintenant, nous devons créer les tables dans la base de données snort, Recherchez le fichier create_mysql.gz qui est normalement situé dans le dossier /usr/share/doc/snort-mysql.
Dézippez le fichier:
|
insaf@insaf-laptop:~$ cd /usr/share/doc/snort-mysql/
insaf@insaf-laptop:/usr/share/doc/snort-mysql$ zcat create_mysql.gz |
Importez les tables MySQL:
|
insaf@insaf-laptop:~$ mysql -u root -p snort < /usr/share/doc/snort-mysql/create_mysql |
Avant de lancer Snort, nous devons bien entendu le configurer. Les fichiers de configuration se trouve dans /etc/snort.
Prenons le premier fichier de configuration:/etc/snort/snort.conf. Nous devons spécifier à l'intérieur de ce fichier les informations spécifiques à la base de données qu'il doit utiliser. Le fichier étant assez long et conséquent, une recherche (Ctrl-f dans un éditeur) avec comme critère 'db' permet de retrouver facilement la section qu'il faut. Une fois dans la bonne section, il faut l'éditer (décommenter si nécessaire) de façon à ce que la ligne ressemble à ça:
|
output database: log, mysql, user=snort password=password dbname=snort host=localhost |
Les sections devront bien sûr être renseignées avec votre configuration.
Il est maintenant possible de lancer snort dans la console mais on va installer l’interface web ‘acidbase’pour faciliter la gestion, le listing des alertes.
Pour installer cette interface :
|
insaf@insaf-laptop:~$ sudo apt-get install acidbase |
Ensuite il fallait compléter la configuration de acidbase en ajoutant dans le fichier /etc/acidbase/database.php Le nom de l’utilisateur, la base de donnée , la machine hote.... et en plus renseigner apache pour considérer cette application en ajoutant la directive include /etc/acidbase/apache.conf dans le fichier /etc/apache2/sites-enabled/000-default
Maintenant si tout allait bien on peut lancer snort par les commandes en allant sur l’url suivante http://localhost/acidbase/base_main.php
Pour lancer snort, on utilise les comandes suivantes:
|
insaf@insaf-laptop:~$ snort -v
insaf@insaf-laptop:~$ snort -v -d -e
insaf@insaf-laptop:~$ snort -vde -l ./log -c /etc/snort/snort.conf |
On peut voir dans l’interface suivante des alertes ajoutées par snort
On aurait pu voir le résultat sur la console
Après l’initalisation , snort commence à capturer les paquets sur les réseau comme suit:
Ceci est le résultat obtenu en arretant snort, snort permet d’analyser tous le traffic du réseau et en plus il donne des statistiques sur les paquets logguées, supprimés aussi bien que le nombre alertes et une description de ces alertes grace aux regles qu’il possede.
Pour tester snort, on a développé nos propres règles qui nos ont permis de générer des attaques différentes telque le scan par nmap ou les tentatives successives pour se connecter par telnet.
|