Commentaire

Cette procédure a été établie dans le cadre d'une étude de mise en place d'une solution IDS qui m'avait été confiée. Elle est basée sur la documentation fournie sur le site de Snort et sur mon expérience personnelle.

Installation de Snort sur une Fedora Core 2

Sommaire

top Introduction

Ce document décrit la procédure complète d'installation du produit d'IDS Snort sur une plateforme Linux. La distribution choisie est une Fedora Core 2, version gratuite de la RedHat Entreprise. Cette version est composée de 4 CDs pour l'installation. Seuls les 3 premiers CDs seront requis ici.

Tous les produits installés dans cette procédure sont sous licence GPL, et sont donc libre d'utilisation.

top Commentaire(s)/Correction(s)

Merci de me contacter pour tout commentaire ou correction.

Pour cette installation, nous partirons du principe que la machine cible possède deux interfaces réseaux: eth0 servant à la surveillance en mode promiscuous et eth1 servant à l'administration de la sonde IDS.

On considère également que les fichiers sources se trouvent sur une clé USB. Notez bien que vous pouvez très bien utiliser un support CDR pour vos fichiers sources.

top Téléchargements

Voici la liste des fichiers à télécharger pour l'installation:

snort-2.2.0-0.fdr.1.i386.rpm
snort-mysql-2.2.0-0.fdr.1.i386.rpm
snortrules-snapshot-CURRENT.tar.gz
jpgraph-1.17.tar.gz
adodb455.tgz
acid-0.9.6b23.tar.gz
nqt.php.txt

top Installation de Fedora Core 2

Pour installer cette distribution de linux, bootez sur le CD1 puis au prompt boot: pressez la touche <ENTER>.
L'installation débute maintenant.

   CD Found
   Skip

   Welcome to Fedora Core
   Next

   Language Selection
   English

   Keyboard Configuration
   French (latin1)

   Installation Type
   Custom

   Disk Partitioning Setup
   Automatically partition

   Automatic Partitioning
   Remove all partitions on this system
   Décochez "Review (and modify if needed) the partitions created"

   Are you sure you want to do this ?
   Yes

   Boot Loader Configuration
   Next

   Network Configuration
   eth0:
   Edit
   Décochez "Configure using DHCP"
   IP Address: 192.168.0.200
   Netmask: 255.255.255.0

   eth1:
   Edit
   Décochez "Configure using DHCP"
   Cochez "Active on boot"
   IP Address: 192.168.0.201
   Netmask: 255.255.255.0

   Set the hostname: manualy: monIDS

   Gateway: 192.168.0.1
   Primary DNS: 192.168.0.1

   Firewall Configuration
   No firewall

   Choose "Proceed" to continue without a firewall.
   Proceed

   Additional Language Support
   Next

   Time Zone Selection
   Europe/Paris

   Set Root Password
   mot_de_passe_root

   Package Group Selection
   Laissez les options par défaut avec les exceptions suivantes:

       X Windows System - cliquez sur "details" et décochez
        * vnc-server

       Graphical Internet - cliquez sur "details" et ne gardez que le composant
        * mozilla

       Text-based Internet - décochez

       Office/Productivity - décochez

       Sound and Video - décochez

       Graphics - décochez

       Server Configuration Tools - cochez et gardez les options par défaut

       Web Server - cochez et ne gardez que les composants
        * mod_auth_mysql
        * mod_perl
        * mod_ssl
        * php
        * php_mysql

       SQL Database Server - cochez et ne gardez que le composant
        * mysql-server

       Administration Tools - cochez et gardez les options par défaut

       Printing Support - décochez

   About to Install
   Next

   Continue
  

L'installation des packages commence. Changez le CD quand cela vous est demandé (le CD s'eject automatiquement à chaque fois).

   reboot
  

La machine redémarre et lance l'interface de post-installation.

   Welcome
   Next

   Licence Agreement
   Yes, I agree to the Licence Agreement

   Date and Time
   Vérifiez la date et l'heure

   Display
   Next

   User Account - Attention le clavier est en qwerty pendant cette étape
   Username:  idsuser
   Full Name: Gestionnaire IDS
   Password:  mot_de_passe_snort

   Additional CDs
   Next

   Finish Setup
   Next
  

top Préparation post-installation

A l'écran de login connectez vous avec le compte "root".
Désactivez les services inutilent

   System Settings > Server Settings > Services
  

Stoppez et décochez les services suivants:

Sauvegardez en cliquant sur "Save".
Copiez les fichiers post-installation récupérés à l'étape téléchargement dans le répertoire /root. Lancez une fenêtre de terminal

   System Tools > Terminal
  

puis taper les commandes suivantes pour accéder à votre clé usb

   [hostname]$ mkdir /mnt/usbkey
   [hostname]$ mount -t vfat /dev/sda1 /mnt/usbkey
   [hostname]$ cp -r /mnt/usbkey/* /root
  

top Test du serveur Apache

Editez le fichier de configuration d'apache

   [hostname]$ vi /etc/httpd/conf/httpd.conf
  

Décommentez la ligne #ServerName new.host.name:80 et remplacez new.host.name:80 par yst2136.cram06.cnav
A la suite de

   <Directory />
     Option FollowSymLinks
     AllowOverride None
   </Directory>
  

Ajoutez les lignes suivantes :

   <Directory "/var/www/html/acid">
     AuthType Basic
     AuthName "SnortIDS"
     AuthUserFile /var/www/passwords/passwords
     Require user acid:
   </Directory>
  

Enregistrez puis fermez le fichier et exécutez les commandes suivantes

   [hostname]$ chkconfig httpd on
   [hostname]$ chkconfig mysqld on
   [hostname]$ service httpd start
   [hostname]$ service mysqld start

   [hostname]$ mkdir /var/www/passwords
   [hostname]$ htpasswd -c /var/www/passwords/passwords acid
   (entrez le mot de passe mont_de_passe_snort)
  

Copier le fichier /root/nqt.php.txt dans le répertoire /var/www/html puis le renommer en index.php.

   [hostname]$ cp /root/nqt.php.txt /var/www/html/index.php
  

Ouvrez un navigateur internet et entrez l'url suivante: http://127.0.0.1/, vous devriez voir un formulaire "Network Query Tool".

top Installation et paramétrage de Snort

   [hostname]$ rpm -ivh snort-2.2.0-0.fdr.1.i386.rpm
   [hostname]$ rpm -ivh snort-mysql-2.2.0-0.fdr.1.i386.rpm
  

Modifiez le fichier de configuration de snort (/etc/snort/snort.conf) en appliquant les lignes suivantes

   var HOME_NET $eth0_ADDRESS
   var EXTERNAL_NET !$HOME_NET
   output database: log, mysql, user=snort password=mot_de_passe_snort dbname=snort host=localhost
  

Enregistrez et fermez ce fichier, puis taper les commandes suivantes

   [hostname]$ chkconfig snortd off
   [hostname]$ cp /usr/share/doc/snort-2.2.0/contrib/S99snort /etc/init.d/snort
  

Editez le fichier /etc/init.d/snort comme suit

   # set config file & path to snort executable
   SNORT_PATH=/usr/sbin
   CONFIG=/etc/snort/snort.conf

   #set GID/Group Name
   SNORT_GID=snort
  

Pour finir taper les commandes suivantes

   [hostname]$ rm -f /etc/init.d/snortd
   [hostname]$ ln -s ../init.d/snort /etc/rc3.d/S99snort
   [hostname]$ ln -s ../init.d/snort /etc/rc3.d/K99snort
   [hostname]$ ln -s ../init.d/snort /etc/rc5.d/S99snort
   [hostname]$ ln -s ../init.d/snort /etc/rc5.d/K99snort
  

top Paramétrage de mysql

Voici la liste des commandes à taper pour paramétrer mysql pour snort

   [hostname]$ mysql
   mysql> SET PASSWORD FOR root@localhost=PASSWORD('mot_de_passe_root');
   mysql> create database snort;
   mysql> grant INSERT,SELECT on root.* to snort@localhost;
   mysql> SET PASSWORD FOR snort@localhost=PASSWORD('mot_de_passe_snort');
   mysql> grant CREATE,INSERT,SELECT,DELETE,UPDATE on snort.* to snort@localhost;
   mysql> grant CREATE,INSERT,SELECT,DELETE,UPDATE on snort.* to snort;
   mysql> exit

   [hostname]$ mysql -u root -p < /usr/share/doc/snort-2.2.0/contrib/create_mysql snort
   (entrez le mot de passe root)
   [hostname]$ zcat /usr/share/doc/snort-2.2.0/contib/snortdb-extra.gz |mysql -p snort
   (entrez le mot de passe root)
  

top Installation d'Acid

Installation de JPGraph

   [hostname]$ cd /var/www
   [hostname]$ tar -xvzf ~/jpgraph-1.17.tar.gz
   [hostname]$ cd jpgraph-1.17
   [hostname]$ rm -f README
   [hostname]$ rm -f QPL.txt
  

Installation d'ADODB

   [hostname]$ cd /var/www
   [hostname]$ tar -xvzf ~/adodb455.tgz
  

Installation et configuration d'Acid

   [hostname]$ cd /var/www/html
   [hostname]$ tar -xvzf ~/acid-0.9.6b23.tar.gz
   [hostname]$ cd acid
  

Editez le fichier /var/www/html/acid/acid_conf.php et modifiez le comme suit

   $DBlib_path="/var/www/adodb";

   $alert_dbname="snort";
   $alert_user="snort";
   $alert_password="mot_de_passe_snort";

   $archive_dbname="snort";
   $archive_user="snort";
   $archive_password="mot_de_passe_snort";

   $ChartLib_path="/var/www/jpgraph-1.17/src";
  

Dans un navigateur internet tapez l'url: http://127.0.0.1/acid/acid_main.php.
Login : acid
Password : mot_de_passe_snort

   Analysis Console for Intrusion Database
   Cliquez sur "Setup page"

   DB Setup
   Cliquez sur le boutton "Create ACID AG"

   Are you sure you want to continue sending this information?
   Décochez "Alert me whenever I submit information that's not encrypted."
   Cliquez sur "Continue"
  

Terminez l'installation en lancant snort avec la commande

   /etc/init.d/snort start
  

Puis quitter le terminal avec la commande

   exit
  

Et refermez votre session.

 
Vous êtes connecté avec l'adresse IP 3.17.6.75