Les notes "génériques" pour mettre les choses ensembles sont ci-dessous. Voici la version courte. 1.) *** Soyez sûr que libpcap a été installée !!! *** 2.) ./configure 3.) make 4.) make install 5.) Créez un fichier d'exemple de règles (si vous voulez utiliser des règles, vérifiez le fichier snort.conf inclus) 6.) snort -? 7.) Si vous avez utilisé des versions précédentes de Snort, vous pouvez avoir besoin de réécrire vos règles pour les rendre compatibles au format des règles. Voir http://www.snort.org/writing_snort_rules.htm pour plus d'informations. 8.) Amusez vous ! Des questions ? Envoyez les à roesch@clark.net ou abonnez vous à la mailing liste snort-users sur http://snort.sourceforge.net ! Snort Configure-time switches ============================= `--enable-smbalerts' Active le code d'alerte SMB, qui est quelque peu insécure puisqu'il exécute un appel à popen() depuis le programme (qui s'exécute avec les privilèges root). Vous aurez été avertis, utilisez ceci avec précautions ! `--enable-flexresp' Active le code 'Flexible Response' (ndt : réponses actives), qui vous permet de fermer des connexions hostiles au niveau IP quand une règle correspond. Quand vous activez cette fonctionnalité, vous avez aussi besoin de la bibliothèque 'libnet' qui peut être trouvée sur http://www.packetfactory.net/libnet . Voir README.FLEXRESP pour les détails. Cette fonction est toujours en développement, alors utilisez avec précautions. `--with-libpq-includes=DIR' Fixe le répertoire d'entêtes pour le support de la base de données Postgres SQL à DIR `--with-libpq-libraries=DIR' Fixe les répertoires de bibliothèques pour le support de la base de données Postgres SQL à DIR. Fixer ces deux valeurs active le module de sortie Postgres. `--with-libpcap-includes=DIR' Si le script de configuration ne peut pas trouver les fichiers d'entêtes de libpcap par lui même, le chemin peut être fixé manuellement avec cette option. `--with-libpcap-libraries=DIR' Si le script de configuration ne peut pas trouver les bibliothèques de libpcap par lui même, le chemin peut être fixé manuellement avec cette option. Basic Installation ================== Non traduit car ceci correspond aux instructions classiques. Compilers and Options ===================== Non traduit car ceci correspond aux instructions classiques. Compiling For Multiple Architectures ==================================== Non traduit car ceci correspond aux instructions classiques. Installation Names ================== Non traduit car ceci correspond aux instructions classiques. Optional Features ================= Certains packages font attention aux options `--enable-FEATURE' de `configure', où FEATURE indique une partie optionnelle du package. Ils peuvent aussi faire attention aux options `--with-PACKAGE', où PACKAGE est quelque chose comme `gnu-as' ou `x' (pour le système X Window). Le `README' devrait mentionner les options `--enable-' et `--with-' que le package reconnaît. Pour les packages qui utilisent le système X, `configure' peut usuellement trouver les fichiers d'entêtes et les bibliothèques de X automatiquement, mais si ce n'est pas le cas, vous pouvez utiliser les options `--x-includes=DIR' et `--x-libraries=DIR de `configure' pour spécifier leurs localisations. Les options de configuration suivantes sont accessibles pour Snort : `--enable-smbalerts' Active le code d'alerte SMB, qui est quelque peu insécure puisqu'il exécute un appel à popen() depuis le programme (qui s'exécute avec les privilèges root). Vous aurez été avertis, utilisez ceci avec précautions ! `--enable-flexresp' Active le code 'Flexible Response' (ndt : réponses actives), qui vous permet de fermer des connexions hostiles au niveau IP quand une règle correspond. Quand vous activez cette fonctionnalité, vous avez aussi besoin de la bibliothèque 'libnet' qui peut être trouvée sur http://www.packetfactory.net/libnet . Voir README.FLEXRESP pour les détails. Cette fonction est toujours en développement, alors utilisez avec précautions. Specifying the System Type ========================== Non traduit car ceci correspond aux instructions classiques. Sharing Defaults ================ Non traduit car ceci correspond aux instructions classiques. Operation Controls ================== Non traduit car ceci correspond aux instructions classiques. Platform Specific Notes ======================= * Linux: Avec les noyaux 2.2.x et supérieurs vous pouvez obtenir les avertissements `snort [pid] uses obsolete (PF_INET, SOCK_PACKET)'. Ceci est parce que vous utilisez une ancienne mise en oeuvre de la bibliothèque libpcap et vous avez besoin d'une mise à jour. La version récente de libpcap peut être trouvée sur la page www.tcpdump.org . Sur Linux avec les noyaux 2.2.x et supérieurs vous pouvez également obtenir la fonctionnalité de surveiller plusieurs interfaces au niveau réseau (session + TCP + IP) si vous liez votre Snort au port de Sebastian Krahmer de la bibliothèque libpcap et utilisez le mot `any` pour le nom de l'interface. La bibliothèque elle même est accessible sur http://www.cs.uni-potsdam.de/homepages/students/linuxer/ * IRIX [ noté par Scott A. McIntyre ] Il y a des problèmes avec GCC sur la plate-forme IRIX qui cause certains mauvais fonctionnements de Snort. >Du site web de SGI : Gcc ne passe/retourne pas correctement les structures qui sont plus petites que 16 octets et qui ne sont pas de 8 octets. Le problème est très en cause et difficile à fixer. Il affecte nombre d'autres cibles également, mais irix6 est la plus affectée, parce qu'elle est une cible 64 bits, et les structures de 4 octets sont courantes. Le problème exact est que les structures sont rembourrées à la mauvaise fin, e.g. une structure de 4 octets est chargée dans les 4 octets inférieurs du registre quand elle devrait être chargée dans les 4 octets supérieurs du registre. Gcc est consistant avec lui-même, mais non consistant avec le compilateur C de SGI [et les bibliothèques dynamiques fournies par SGI], donc les seuls échecs qui peuvent survenir sont quand il y a des fonctions de bibliothèques qui prennent/retournent de telles structures. Il y a très peu de telles fonctions de bibliothèques. Je peux seulement me rappeler d'en avoir vu que quelques unes : inet_ntoa, inet_aton, inet_lnaof, inet_netof, and semctl. Un contournement possible : si vous avez un programme qui appelle inet_ntoa et autres ou semctl, et que votre noyau supporte les exécutables 64 bits (i.e. uname -a affiche IRIX64 plutôt que juste IRIX), alors vous pouvez compiler avec gcc -mabi=64 pour contourner ce problème. Plus d'informations sont accessibles sur : http://freeware.sgi.com/2000Feb/Installable/gcc-2.8.1-sgipl2.html * SunOS Des problèmes similaires avec GCC ont été notés sur les plates-formes SunOS4.x qui causent Snort à faire SIGBUS (ndt : planter fatalement) à certains endroits. Merci d'utiliser le compilateur C natif à la place.