Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
[How-to] Snort, MySQL et ACID
View unanswered posts
View posts from last 24 hours

 
Reply to topic    Gentoo Forums Forum Index French
View previous topic :: View next topic  
Author Message
-KuRGaN-
Veteran
Veteran


Joined: 05 Dec 2004
Posts: 1142
Location: Besançon (25) [FRANCE]

PostPosted: Mon Jun 20, 2005 8:32 am    Post subject: [How-to] Snort, MySQL et ACID Reply with quote

Snort est un NIDS (Network Intrusion Detection System) sous license GNU, il permet de surveiller le réseau en analysant le traffic en temps réel sur un réseau IP. Toutes les alertes de Snort seront redirigés dans une base de données MySQL puis ensuite, nous analyserons ces alertes grâce à ACID (Analysis Console for Intrusion Database).

Installation

Code:

echo "net-analyzer/acid ~x86" >> /etc/portage.package.keywords
echo "dev-php/jpgraph ~x86" >> /etc/portage/package.keywords
emerge mysql apache php mod_php snort acid


Si vous faîtes une installation de MySQL toute fraîche:

Code:
/etc/init.d/mysql_install_db


Ensuite il faut mettre un mot de passe root mour MySQL:

Code:
mysql -u root -p


Puis il faut créer une base db_snort avec un utilisateur snort qui a les droits CREATE,INSERT, SELECT, DELETE, UPDATE uniquement sur cette base avec comme mot de passe pass_snort
Je ne suis pas très bon niveau base de données alors pour faire ça, j'utilise Webmin. (Ha le clic des fois c'est bien !!! :wink: )

Configuration de MySQL

Bon maintenant, il faut modifier la structure de la base de donnée snort afin qu'elle puisse directement recevoir les alertes de Snort.

Code:
cd /etc/snort
mysql -u root snort < .contrib/create_mysql


Et Voilà, c'est finit pour Mysql :P

Configuration de Apache

Ici, nous allons juste passer l'option PHP à Apache. Editons le fichier /etc/conf.d/apache2 et ajoutons php à cette ligne:

Code:
APACHE2_OPTS="-D PHP4 -D SSL"


Configuration de Snort

C'est dans le fichier de conf de Snort, /etc/snort/snort.conf que nous allons rediriger les alertes vesr MySQL. Rechercher cette ligne et renseigner les champs suivant votre configuration:

Code:
output database: alert, mysql, user=snort password=pass_snort dbname=db_snort host=localhost


Donc là normalement, snort redirigera toutes les alertes sur la base de données snort présent sur la même machine en utilisant l'utilisateur mysql snort avec son mot de passe (pass_snort).
Il est bon aussi d'indiquer sur quelle interface Snort va écouter les alertes, c'est tout simple et le fichier bien renseigné donc je vous laisse faire tout seul :evil:


Configuration de ACID

Pour fonctionner, ACID a besoin de deux librairies importante, Adobd et JPGraph. La première permet la gestion de base de données alors que la deuxième permet de représenter des graphes à partir de statistiques.
Adobd est une dépendance directe d'ACID, donc le première on l'oublie :lol:
Pour JPGraph, il faut la télécharger (http://www.aditus.nu/jpgraph/index.php)
Ensuite on la décompresse dans le répertoire root d'Apache, qui est /var/www/localhost/htdocs par défaut.

Code:
tar -zxvf jpgraph.xxxx.tar.gz -C /var/www/localhost/htdocs


Ensuite renommons le réertoire de JPGraph sans le luméro de version:

Code:
cd /var/www/localhost/htdocs/
mv jpgrah.xxxxxxx jpgraph


Maintenant on édite le fichier de conf d'ACID (/var/www/localhost/htdocs/acid/acid_conf.php) afin de renseigner tout d'abord les informations concernant la base de donnée snort.

Code:
$DBType = "mysql";

$alert_dbname = "db_snort";

$alert_host       = "localhost";
$alert_port       = "";
$alert_user       = "snort";
$alert_password = "pass_snort";

$archive_dbname = "db_snort";
$archive_host       = "localhost";
$archive_port       = "";
$archive_user       = "snort";
$archive_password = "pass_snort";


Puis nous allons indiquer le répertoire de la librairie JPGraph:

Code:
$ChartLib_path = "/var/www/localhost/htdocs/jpgraph/src";



Finalisation

Une fois tout ceci terminé, il faut démarrer ou redémarrer tous les services:
Code:
/etc/init.d/apache2 start
/etc/init.d/mysql restart
/etc/init.d/snort start


Et afin que tout se petit monde se lance au démarrage de la machine:
Code:
rc-update add mysql default
rc-update add snort default
rc-update add apache2 default


Puis à l'aide d'un naviguateur web, se connecter à http://localhost/acid/ et suivez les instructions pour finalisez l'installation.

Pour vérifier, attaquer votre Snort à grands coups de Nmap pour voir si des alertes sont générées.

Tips: Sécuriser l'accès à ACID

Afin que tout le monde ne puisse pas avoir accès à notre page d'alerte, nous allons en resteindre l'accès grâce à Apache.
Editons le fichier /etc/apache/conf/apache2.conf et ajoutons ceci:

Code:
< Location /acid>
AuthType Basic
AuthName "ACID"
AuthUserFile /etc/snort/acid_access
           <Limit GET POST OPTIONS PROPFIND>
           require user acid
           Order deny,allow
           Deny from All
           Allow from nom_machine.mon_domaine
           </Limit>
</Location>



Conclusion

Voilà et bon sniffage de réseau :lol:

Il semblerait que ACID soit remplacé par BASE mais ce dernier n'est pas intégré dans portage, a suivre ........ :wink:

Ce document est sous licence GNU/FDL
_________________
Knight Gent00 Industries RiDeR !!!!


Last edited by -KuRGaN- on Thu Aug 18, 2005 5:59 pm; edited 9 times in total
Back to top
View user's profile Send private message
kernelsensei
Bodhisattva
Bodhisattva


Joined: 22 Feb 2004
Posts: 5619
Location: Woustviller/Moselle/FRANCE (49.07°N;7.02°E)

PostPosted: Mon Jun 20, 2005 8:53 am    Post subject: Reply with quote

ben bravo, et merci tout plein :)
_________________
$ ruby -e'puts " .:@BFegiklnorst".unpack("x4ax7aaX6ax5aX15ax4aax6aaX7ax2aX5aX8 \
axaX3ax8aX4ax6aX3aX6ax3ax3aX9ax4ax2aX9axaX6ax3aX2ax4ax3aX4aXaX12ax10aaX7a").join'
Back to top
View user's profile Send private message
ultrabug
Developer
Developer


Joined: 24 Jan 2005
Posts: 698
Location: Paris

PostPosted: Mon Jun 20, 2005 8:54 am    Post subject: Reply with quote

merchi :)
Back to top
View user's profile Send private message
Enlight
Advocate
Advocate


Joined: 28 Oct 2004
Posts: 3514
Location: Alsace (France)

PostPosted: Mon Jun 20, 2005 8:56 am    Post subject: Reply with quote

Classe! 8) Merci!
_________________
le "lol" est aux boulets ce que le ";" est au programmeurs
Back to top
View user's profile Send private message
scout
Veteran
Veteran


Joined: 08 Mar 2003
Posts: 1991
Location: France, Paris en Semaine / Metz le W-E

PostPosted: Mon Jun 20, 2005 9:28 am    Post subject: Reply with quote

merci beaucoup :mrgreen:
_________________
http://petition.eurolinux.org/ - Petition against ePatents
L'essence de la finesse
Back to top
View user's profile Send private message
boozo
Advocate
Advocate


Joined: 01 Jul 2004
Posts: 3136

PostPosted: Tue Jun 21, 2005 1:20 pm    Post subject: Reply with quote

'alute

c'est bien çà tiens justement je voulais mettre acid pour voir c'est l'occasion :P Merci !

(HS : ? webmin c'est vraiment mieux pour la gestion ? moi je suis encore à : sql> :lol:)

Si je puis me permettre deux remarques --> peut-être rajouter les rc-update pour ces services non ?
et quelque chose sur les update des snort.rules --> je ne me rappelle plus si ils ont intégré le oinkcode mais c'est toujours faisable à la main :wink: celà me semble utile non ?

Sinon, dans cette optique, il serait peut-être bien de rajouter un bout sur le filtrage actifs... j'avais dans l'idée de faire un tip dans cette idée mais puisque tu t'es déja collé à la première étape :mrgreen:
Je pensais au portscan detect et au script d'ajout de règles iptables en fonction des snort logs. Je te met un liens vers ce post que j'avais lancé mais qui est tombé à plat toutefois depuis j'ai guardian qui tourne depuis qqes temps et c'est pas mal (je me suis pas encore collé au portscan detect car j'ai y faut que je bidouille un peu pour l'installer sur ma gw mais faut que j'm'y mettes un de ces jours :roll:)
Pour psad c'est dans portage donc pas de pb ; avec guardian j'avais dans l'idée de créer un ebuild çà serait peut-être pas mal comme outils enfin tu as les liens mais après y'en a surement d'autres et puis tu peux étendre/améliorer le hw2 dans cette direction avec du portknocking (y'a aussi le script de LostControl fail2ban :wink: ), etc...

Enfin c'est juste une remarque (et mon avis) après à toi de voir selon les retours que tu as et si tu as besoin...

:)
_________________
" Un psychotique, c'est quelqu'un qui croit dur comme fer que 2 et 2 font 5, et qui en est pleinement satisfait.
Un névrosé, c'est quelqu'un qui sait pertinemment que 2 et 2 font 4, et ça le rend malade ! "
Back to top
View user's profile Send private message
-KuRGaN-
Veteran
Veteran


Joined: 05 Dec 2004
Posts: 1142
Location: Besançon (25) [FRANCE]

PostPosted: Tue Jun 21, 2005 1:36 pm    Post subject: Reply with quote

ok ok, je vais essayer de rajouter tout ce que tu m'as dit, je le ferai ce week-end car la j'ai pas de gentoo sur moi et en plus je viens d'acheter GTA St Andreas :lol: :lol:

Sinon, si tu a un betit bout de how-to que tu veux que je rajoute, envoie le par mail et je le rajouterai volontier afin que l'on est un how-to assez complet.

Et merci pour les liens :wink:
_________________
Knight Gent00 Industries RiDeR !!!!
Back to top
View user's profile Send private message
Pachacamac
Veteran
Veteran


Joined: 22 Nov 2003
Posts: 1264
Location: Paris - France

PostPosted: Fri Jul 29, 2005 10:03 pm    Post subject: Reply with quote

Pas mal ! Je n'ai pas d'ordi dispo pour tester ton install mais ça à l'air d'enfer !
Back to top
View user's profile Send private message
Darkael
Veteran
Veteran


Joined: 10 Aug 2004
Posts: 1321
Location: France

PostPosted: Fri Jul 29, 2005 11:33 pm    Post subject: Reply with quote

Joli howto, néanmoins il me semblait qu'il était préférable d'utiliser BASE plutot qu'ACID, qui n'est plus développé depuis 2 ans? Ca ne doit pas changer grand chose au niveau de l'installation vu que les deux sont très similaires, mais BASE est plus récent et a plus de fonctionnalités si je me souviens bien.

[EDIT] Bon par contre BASE n'est pas dans portage apparement, mais j'avais vu trainer des ebuilds quelque part
Back to top
View user's profile Send private message
Pachacamac
Veteran
Veteran


Joined: 22 Nov 2003
Posts: 1264
Location: Paris - France

PostPosted: Fri Jul 29, 2005 11:59 pm    Post subject: Reply with quote

T'as le lien vers BASE stp ?
Back to top
View user's profile Send private message
Darkael
Veteran
Veteran


Joined: 10 Aug 2004
Posts: 1321
Location: France

PostPosted: Sat Jul 30, 2005 1:33 am    Post subject: Reply with quote

Pachacamac wrote:
T'as le lien vers BASE stp ?


http://secureideas.sourceforge.net/

J'ai un ebuild mais je sais plus où je l'ai trouvé.
Back to top
View user's profile Send private message
-KuRGaN-
Veteran
Veteran


Joined: 05 Dec 2004
Posts: 1142
Location: Besançon (25) [FRANCE]

PostPosted: Sat Jul 30, 2005 11:16 am    Post subject: Reply with quote

Ben ce serait quand même bien qu'il soit intégré dans portage, histoire d'avoir une install plus propre :)
_________________
Knight Gent00 Industries RiDeR !!!!
Back to top
View user's profile Send private message
Pachacamac
Veteran
Veteran


Joined: 22 Nov 2003
Posts: 1264
Location: Paris - France

PostPosted: Sat Jul 30, 2005 11:19 am    Post subject: Reply with quote

Ici : http://home.comcast.net/~travis.post/base-1.1.3.ebuild

EDIT : Un autre tuto est dispo ici : http://gentoo-wiki.com/HOWTO_Setup_BASE_with_Apache,_Snort,_and_PostgreSQL
Back to top
View user's profile Send private message
-KuRGaN-
Veteran
Veteran


Joined: 05 Dec 2004
Posts: 1142
Location: Besançon (25) [FRANCE]

PostPosted: Sun Mar 12, 2006 12:13 pm    Post subject: Reply with quote

Bon allez je remonte mon vieux how-to pour dire que j'en ai fait un autre, avec Base cette fois et en plus il est dans portage.
Par contre je n'ai pas encore mis à jour celui-ci que je ferai quand j'aurai le temps.
Mais sinon, pour ceux que celà interresse, une version de mon how-to est dispo sur mon wiki ici
_________________
Knight Gent00 Industries RiDeR !!!!
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index French All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum