dimanche 13 février 2011

Sécurité, OpenPGP et CA ferez.fr

13 02 2011
La sécurité devient de plus en plus important avec les dernieres trouvailles du gouvernement, LOPPSI, HADOPI et j'en passe. Donc il faut bien s'adapter. C'est pour cela que j'ai preparé ma clé GPG et ma CA OpenSSL, pour mes emails et mes divers sites web. Les voici, les voilà : CA Ferez.fr Clé GPG Ma clé GPG a déjà été enregistré sur les serveur PGP du MIT et d'Ubuntu : pgp.mit.edu et keyserver.ubuntu.com Cette parenthèse est maintenant terminé, vous pouvez reprendre le travail.

jeudi 26 novembre 2009

SpyBox, pont espion réseau

26 11 2009

La sécurisation d'un réseau informatique est un élément qui devient de plus en plus important à l'heure actuelle, surtout pour les entreprises.
Mon projet tuteuré de deuxième année de DUT Réseaux et Télécommunications à l'IUT d'Annecy, c'est axé sur cette problèmatique.
Comment faire un système d'espionnage et de filtrage réseau de manière totalement transparente ?

Notre tuteur de projet, nous a fait partir sur l'idée que la solution allait être intégré sur une carte informatique portable, nommé Alix.
Cette carte Alix n'est rien de plus qu'un mini-ordinateur avec un processeur AMD Geode, un slot CompactFlash, 3 interfaces ethernet 10/100 Mbps, une interface série, et 2 ports usb. Rien de plus, rien de moins.Et ca ressemble à ceci :

carte_alix

Le premier problème a été de trouvé une solution ultra-légére type Unix pouvant fonctionner sur ce type de carte.
La réponse était VoyageLinux, une distribution basée sur Debian spécialement étudiée pour pouvoir parfaitement fonctionner sur des cartes PCengies Alix / Wrap ou Soekris.

 Afin de facilité l'installation de cette distribution ainsi que toutes les installations nécessaires au projet, il a été décidé d'utiliser des machines virtuelles. Et une fois la solution suffisamment fonctionnel, de copier le contenu du disque virtuel vers la carte CompactFlash. En utilisant la commande dd sous Linux, ou en utilisant le logiciel WinImage sous Windows. Ca permet d'eviter d'utiliser des cycles d'écritures inutiles sur la CompactFlash.

Une fois tout ce petit système démarré, il manquait plus que le logiciel de capture et la configuration réseau qui va bien. La solution : Snort

snort_logo

Par contre, il existe un léger problème dans le logiciel Snort, tous les transferts entre Snort et la base de donée MySQL se font en clair. Pas top top, quand on veut faire un pont espion réseau invisible et dont on veut protéger les données échangées par celui-ci. Et là encore une seule solution, rentrer dans le code. Glurp.
Une fois cette petite modification faite, on crée nos certificats et les pages web pour le traitement des données SQL.

On branche ça à une sortie internet (dans notre cas, c'était sur le switch de la salle de projet avec une vingtaine de poste linux/windows). On lance, moment de vérité.
Et plouf, des graphiques qui se remplisse à une vitesse folle, on test 2-3 attaques pour le firewall qui nous coupe la patte aussitôt. Ca marche du tonnerre de dieux.

Dans un prochain article, je décrirais une installation de SpyBox (quand j'aurais reçu ma carte Alix ^^)

dimanche 15 novembre 2009

Tutoriel Installation Nagios, NagVis et Centreon – Part. 2

15 11 2009

Deuxième partie de ce tutoriel sur l'installation de Nagios, Centreon et NagVis qui va ce concentrer sur la mise en place de NagVis et de Centreon.
Centreon est une interface web à la configuration et au remonter d'informations de Nagios. NagVis est quand à lui, un module de map plus conviviale que celle installé dans Nagios, permettant par exemple d'utiliser une image type visio comme fond de map.

Avant de pouvoir mettre en place, ces deux interfaces web, il faut faire remonté toutes les informations de nagios dans une base de donnée type MySQL, grâce à un plugins NDO. Donc dans l'ordre, nous allons voir :

I.Installation de la base de données de NDO

NDO, plugin de Nagios a besoin d’une base de données pour écrire les informations sur l’état de machines surveillées par Nagios. Celle pourra par la suite, être utilisée par un autre logiciel tiers tel que Centreon.

mysqladmin –u root create nagios
mysql –u root mysql
mysql> GRANT ALL ON nagios.* TO ndouser@localhost IDENTIFIED BY ‘ndopassword’;
mysql> FLUSH PRIVILEGES;
mysql> exit

II.Installation du plugin NDO

cd /usr/src
wget http://dfn.dl.sourceforge.net/sourceforge/nagios/ndoutils-1.4b7.tar.gz
tar zxvf ndoutils-1.4b7.tar.gz
cd ndoutils-1.4b7
./configure --with-mysql-lib=/usr/lib/mysql
make 
cp src/ndomod-3x.o /usr/local/nagios/bin/ndomod.o
cp src/ndo2db-3x src/log2ndo src/file2sock /usr/local/nagios/bin/
cp config/ndomod.cfg /usr/local/nagios/etc/
 
vim /usr/local/nagios/etc/nagios.cfg
           …
           event_broker_options=-1
           broker_module=/usr/local/nagios/bin/ndomod.o 
           config_file=/usr/local/nagios/etc/ndomod.cfg
           …
 
cp config/ndo2db.cfg /usr/local/nagios/etc/
chown nagios:nagios /usr/local/nagios/bin/*
chown nagios:nagios /usr/local/nagios/etc/ndo*
cd db
./installdb –u ndouser –p ndopassword –h localhost –d nagios
 

Une erreur peut intervenir :

DBO::mysqm::db do failed: Table nagios.nagios_dbversion

Mais cela ne gêne en rien le reste des opérations.
Il ne reste plus qu’à lancer NDO et à relancer Nagios :

/usr/local/nagios/bin/ndo2db-3x –c /usr/local/nagios/etc/ndo2db.cfg
/etc/init.d/nagios restart

III.Installation de Centreon

cd /usr/src
wget http://download.oreon-project.org/index.php?id=123
tar zxvf centreon-2.1.3.tar.gz
cd centreon-2.1.3
./install.sh -i

Répondez aux différentes questions, continuez l’installation sur http://localhost/centreon/ et l’installation sera terminer.
S'il subsiste des problèmes lors de l'installation, essayer de vous reporter au wiki de Centreon : wiki

IV.Installation de NagVis

Si jusqu’ici, vous avez réussi à tous installer la partie qui va suivre et de loin la plus simple.

Extraire, copier, coller : que demande le peuple !!!

cd /usr/src
wget http://www.nagvis.org/share/nagvis-1.3-nightly.tar.gz
tar zxvf nagvis-1.3-nightly.tar.gz
mv nagvis-1.3-nightly /usr/local/nagios/share/nagvis

Ensuite :

cd /usr/local/nagios/share/nagvis
cp etc/nagvis.ini.php-sample etc/nagvis.ini.php
vim etc/nagvis.ini.php
…
dbuser=”ndouser”
dbpassword=”ndopassword”
…
cd /usr/src
wget http://switch.dl.sourceforge.net/sourceforge/nagvis/NagVis-Iconset-Lemon-02.tar.gz
tar zxvf NagVis-Iconset-Lemon-02.tar.gz
cd lemon/nagvis/nagvis/images/iconsets
cp * /usr/local/nagios/share/nagvis/nagvis/images/iconsets/
 
cd /usr/src
wget http://switch.dl.sourceforge.net/sourceforge/nagvis/NagVis-Shapes-Server-Dropline.tar.gz
tar zxvf NagVis-Shapes-Server-Dropline.tar.gz
cd shapes_dropline
cp * /usr/local/nagios/share/nagvis/nagvis/images/shapes/ 
 
cd /usr/src
wget http://switch.dl.sourceforge.net/sourceforge/nagvis/NagVis-Template-Darglass-0.4.tar.gz
tar zxvf -Template-Darglass-0.4.tar.gz
cd darglass
cp –r nagvis /usr/local/nagios/share/nagvis/
 
chown -R www-data:www-data /usr/local/nagios/share/nagvis/
chmod 664 /usr/local/nagios/share/nagvis/etc/nagvis.ini.php
chmod 775 /usr/local/nagios/share/nagvis/nagvis/images/maps
chmod 664 /usr/local/nagios/share/nagvis/nagvis/images/maps/*
chmod 775 /usr/local/nagios/share/nagvis/etc/maps
chmod 664 /usr/local/nagios/share/nagvis/etc/maps/*
chmod 775 /usr/local/nagios/share/nagvis/var
chmod 664 /usr/local/nagios/share/nagvis/var/*

V.Ce qu’il faut retenir

Voici la liste des adresses URL importante pour l’utilisation des différents systèmes installés :

Veillez à bien remplacer @adr-du-serveur par l’adresse correspondante, comme par exemple :

127.0.0.1  si vous êtes sur le serveur lui-même

192.168.1.110  si c’est l’adresse du serveur sur le réseau 

mercredi 11 novembre 2009

Tutoriel Installation Nagios, NagVis et Centreon - Part. 1

11 11 2009

Dans le monde où les réseaux deviennent d’énorme système indépendant mais ouverts à d’énorme problème de sécurité.Il est nécessaire de garder un œil sur notre réseau, Nagios est l’outil par excellence dans ce domaine.
Il permet de faire du monitoring de réseau que se soit du petit switch au serveur de virtualisation en passant par le pc de la secrétaire.Mais Nagios est un outil puissant mais pas si facile à configurer, il en va par la modification de fichier via des constantes ou autres pour ajouter un service, host ou autre.
Centreon est une aide précieuse pour cela. Il va lui-même générer les fichiers en passant via une interface graphique beaucoup conviviale.
Et enfin, NagVis, est un outil qui va générer divers graphique en fonction de la topologie réseau par exemple, via diverses images et formes venant par exemple de Microsoft Visio. Vue en rack, topologie étoile, monde web, etc…

Dans cette partie, nous allons voir tout d'abord l'installation de Nagios.

I. Installation Nagios

apt-get install linux-headers-`uname -r` build-essential g++ gcc apache2 php5 mysql-server snmp snmpd 
apt-get install php5-mysql php5-snmp libmysqlclient15-dev php5-ldap php-pear php5-gd
apt-get install (libgd2-noxpm-dev) libpng12-dev libjpeg62 libjpeg62-dev rrdtool libapache2-mod-php5
su
cd /tmp  
wget http://mesh.dl.sourceforge.net/sourceforge/nagios/nagios-3.0.6.tar.gz  
tar xzf nagios-3.0.6.tar.gz
 
/usr/sbin/useradd nagios
passwd nagios  
/usr/sbin/groupadd nagios 
/usr/sbin/usermod -G nagios nagios  
/usr/sbin/groupadd nagcmd  
/usr/sbin/usermod -G nagcmd nagios  
/usr/sbin/usermod -G nagcmd www-data  
 
cd nagios-3.0.6  
./configure --with-nagios-user=nagios --with-nagios-group=nagios --with-command-group=nagcmd  
make all
make install  
make install-init  
make install-config  
make install-commandmode  
 
ln -s /etc/init.d/nagios /etc/rcS.d/S99nagios

II. Installation de l’interface Web

make install-webconf
sudo htpasswd -c /usr/local/nagios/etc/htpasswd.users nagiosadmin
/etc/init.d/apache2 reload

III. Installation des Plugins de Nagios

cd ..
wget http://ovh.dl.sourceforge.net/sourceforge/nagiosplug/nagios-plugins-1.4.13.tar.gz
tar xzf nagios-plugins-1.4.13.tar.gz
cd nagios-plugins-1.4.13
./configure --with-nagios-user=nagios --with-nagios-group=nagios
make
make install

IV. Configuration Initiale de Nagios

Nagios est maintenant installé sur votre machine. Avant de pouvoir le lancer, il faut éditer les fichiers de configuration qui se trouve dans le répertoire /usr/local/nagios/etc. Pour faire un premier test, le seul fichier à configurer avant d’exécuter Nagios est le fichier /usr/local/nagios/etc/objects/contacts.cfg et de changer l’adresse email de contact (nagiosadmin) ou seront envoyés les mails en cas d’alerte.

Pour la configuration finale en fonction de vos besoins, vous pouvez consulter cette page qui décrit les fichiers de configurations. Pour vérifier que la configration de Nagios est bonne (qu’il n’y a pas d’erreur dans les fichiers de configuration), vous pouvez utiliser l’option “-v” de la commande nagios:

su
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg

V. Démarrage de Nagios

/etc/init.d/nagios start

S’il manque le fichier statusmap.cgi :

Pour la version Sarge de Débian

apt-get install php5-gd libgd2 libfreetype6-dev libjpeg62-dev libpng2-dev xlibs-dev zlib1g-dev libgd2-xpm libgd2-xpm-dev libgd2 libgd2-dev
apt-get install libgd2-noxpm libgd2-noxpm-dev libgd2-xpm libgd2-xpm-dev

Pour la version Etch de Débian

apt-get install libgd-dev

VI. Configuration PHP5

Activer le module gd.so et mysql.so de PHP en éditant le fichier /etc/php5/apache2/php.ini

« Enlever le caractère ‘#’ devant la ligne extension=gd.so et extension=mysql.so »

Dans le dossier décompressé de Nagios :

cd /tmp/nagios-3.0.6
make devclean
./configure --with-gd-lib=/usr/lib --with-gd-inc=/usr/include
make cgis
cd cgi
cp *.cgi /usr/local/nagios/sbin

VII. Test des performances de Nagios

/usr/local/nagios/bin/nagiostats -c /usr/local/nagios/etc/nagios.cfg

Les résultats de la ligne « Active Service Latency » ne doivent pas être trop importants (plusieurs dizaines/centaines de secondes) :
Active Service Latency: 0.043 / 0.862 / 0.462 sec

Ces chiffres augmentent de manière importante quand il y a des hôtes ou services en état DOWN ou UNKNOWN.