PROJET AUTOBLOG


Nicolargo

source: Nicolargo

⇐ retour index

Mise à jour

Mise à jour de la base de données, veuillez patienter...

Utiliser Munin avec des hôtes SNMP

jeudi 31 janvier 2013 à 15:07

Avec le temps, je suis devenu un grand adepte de Munin, le logiciel de supervision permettant de centraliser la gestion des graphes de données RRDTools.

Sa simplicité de prise en main et d'administration y est pour beaucoup. En effet, en une ligne de commande il est possible d'analyser une nouvelle machine à superviser. Munin va s'occuper de générer automatiquement tous les graphes possibles et imaginables. Cette simplicité est notamment dû à l'architecture client/serveur de Munin qui masque en grande parti la complexité des mécanismes de récupération de données à grapher.

Pour superviser un hôte comme des équipements réseaux (routeur Cisco, Switch...) ou des appliances (NAS...) sur lesquels il est impossible d'installer le client Munin, il faut passer par une configuration spécifique au niveau du serveur, utilisant le protocole SNMP, que nous allons détailler dans ce billet.

Comment ça marche ?

Contrairement au fonctionnement nominal de Munin, le serveur ne va pas passer par le client Munin pour récupérer les données mais par un plugin installé directement sur le serveur.

Dans le schéma suivant, honteusement copier/coller du site officiel, le serveur Munin (Dumbledore) va utiliser le le munin-node local pour aller chercher, via SNMP, les informations sur la machine hôte (Netopia).

Munin-SNMP

 

Comment ajouter un hôte SNMP à superviser ?

Avant tout il faut avoir installé le serveur Munin sur une machine GNU/Linux (vous pouvez suivre cet article pour vous aider).

Ensuite, depuis votre serveur, il suffit de saisir la commande suivante pour ajouter l'hôte "netopia". Il faut bien sûr remplace netopia par le nom (FQND) ou l'adresse IP de votre hôte.

dumbledore:~# munin-node-configure --shell --snmp netopia
ln -s /usr/share/munin/plugins/snmp__if_ /etc/munin/plugins/snmp_netopia_if_1
ln -s /usr/share/munin/plugins/snmp__if_err_ /etc/munin/plugins/snmp_netopia_if_err_1
...

Comme vous pouvez le voir, la commande munin-node-configuration avec le tag --snmp  va scanner la MIB SNMP de votre machine hôte et proposer une configuration automatique de tout les plugins (graphes) reconnus dans le répertoire /usr/share/munin/plugins. Vous pouvez ensuite les activer dans votre configuration de Munin en faisant un copier/coller de toutes les lignes ln -s ... ou bien plus simplement en remplaçant la commande précédente par:

dumbledore:~# munin-node-configure --shell --snmp netopia | sh

Par défaut, munin-node-configuration utilise public comme communauté SNMP, il est possible de la configurer en ajoutant:

--snmpcommunity public

La version de SNMP à utiliser peut également être configurée:

--snmpversion 3

Il faut ensuite ajouter les lignes suivantes à votre fichier de configuration du serveur Munin (en laissant bien l'adresse IP 127.0.0.1 !!!):

[netopia]
    address 127.0.0.1
    use_node_name no

 Appliquer la nouvelle configuration à votre serveur Munin

Une fois vos différents hôtes ajoutés selon la procédure précédente,  vous devez faire prendre en compte la nouvelle configuration avec la commande:

service munin-node restart

Les nouveaux graphes devraient apparaître après quelques minutes:

muninsnmp

Dans certains cas, si les graphes n'arrivent pas, il peut être utile de relancer complètement le serveur Munin en saisissant:

su - munin --shell=/bin/sh
/usr/share/munin/munin-update

Conclusion

Avez vous des avis sur Munin, l'utiliser vous avec un pooling SNMP ?

Des scripts et astuces à partager ?

Source: Site officiel de Munin

Cet article Utiliser Munin avec des hôtes SNMP est apparu en premier sur Le blog de NicoLargo.

Glances 1.6: Les nouveautés

lundi 28 janvier 2013 à 08:00

Ce week-end, j'ai mis en ligne la dernière version de Glances. Cette version 1.6 apporte son lot de correction de bugs et de nouveautés que nous allons détailler dans ce billet.

On commence par un aperçu de l'interface de Glances 1.6 dans un terminal:

Glances 1.6

Mise en place d'un fichier de configuration

Jusqu'à la version précédente, il était impossible pour l'utilisateur de fixer lui même les limites déclenchant les alertes. La version 1.6 introduit donc un fichier de configuration permettant de répondre à ce besoin. Sur un système GNU/Linux, le fichier de configuration par défaut se trouve dans dans le répertoire /etc/glances et se  nomme glances.conf.

C'est un fichier au format texte de la forme: https://gist.github.com/4647457

Comme vous pouvez le voir il défini pour chaque section de statistique (CPU, LOAD, MEM...) les limites de type Careful (à surveiller), Warning (à traiter), Critical (à traiter en urgence). Les limites utilisées sont maintenant accessibles dans la fenêtre d'aide sous la forme d'un tableau:

capture_015

Je pense dans les prochaines versions utiliser ce même fichier pour configurer d'autres aspects de Glances, comme les couleurs ou l'emplacement des statistiques.

Amélioration du mode client/serveur

La version 1.5 de Glances introduisait un mode client/serveur basée sur XMLRPC pour surveiller à parti d'un client local une machine distante (GNU/Linux, BSD, MAC OS X et même Windows).

En rapport avec l'ajout d'un fichier de configuration, j'ai modifié le mode client/serveur  pour que le serveur envoie son jeu de limite au client. Ainsi, il est possible à partir d'une même machine cliente de superviser plusieurs serveurs ayant des limites différentes.

Autre nouveauté attendue par pas mal d'utilisateurs: l'ajout "d'un peu" de sécurité pour l'accès à un serveur Glances. J'ai ainsi ajouté le tag -P password (notez le P majuscule) permettant de définir un mot de passe à partager entre le client et le serveur. Ce n'est bien sûr pas une sécurité totale car le client de communication TCP/JSON n'est pas chiffré. Pour encore plus de sécurité le mieux est de passer par un tunnel SSH (il existe pas mal de tutos sur le sujet sur la toile).

Débits d'Entrées/Sorties (IO Rate) par processus

Lorsque que la taille de votre fenêtre le permet, Glances permet d'afficher les débits (en octets/seconde) des processus. Ainsi, si une alerte est détectée sur la valeur CPU iowait alors les processus seront automatiquement classé par débit d'entrée/sortie.

capture_012

Attention, ces valeurs sont uniquement accessible sous GNU/Linux et par un utilisateur disposant des droits administrateurs.

Modification de l'affichage par CPU

Lors de l'activation de l'affichage par CPU (touche '1') et si l'information est disponible sur votre système d'exploitation, alors Glances affiche les statistiques de CPU iowait en lieu et place de CPU nice:

capture_016

Cette information peut être utile si des processus perdent du temps lors des accès disques. C'est un indicateur trsè important pour la supervision des serveurs (lire le très bon billet de ScoutApp sur le sujet).

Amélioration de l'affichage du type de tri des processus

Je trouvais que l'affichage du type de tri sur les processus (automatique vs manuel) n'était pas clair. J'ai donc modifié celui-ci pour afficher clairement si:

on est en tri automatique ou manuel:

capture_018

capture_017

puis de voir quel est le critère de tri dans le colonne (souligné en mode automatique, en gras pour le mode manuel):

capture_020
capture_019

Mise à jour de l'API

Dernier point pour cette version, j'ai ajouté une nouvelle interface à l'API pour récupérer les limites du serveur via getAllLimits (méthode RCP).

Installation et mise à jour de Glances

Convaincu par cette nouvelle version ?

Il est donc temps de mettre à jour votre installation. Deux solutions:

J'attend vous retours :)

Quelques liens pour finir:

Cet article Glances 1.6: Les nouveautés est apparu en premier sur Le blog de NicoLargo.

Besoin de bêta testeurs pour Glances 1.6

jeudi 17 janvier 2013 à 07:36

Glances 1.6 est en plein développement. Une version bêta vient d'être mise à disposition sur le GitHub officiel. J'ai donc besoin de VOUS pour tester, trifouiller, charger cette version avant sa publication. Je prend en charge de mon coté les tests sous Ubuntu et Debian mais je n'ai pas le temps de mener tous les tests sur les autres distributions et OS.

ineedyou

Comment tester ?

Le plus simple pour tester cette version sans casser son installation existante est de suivre la procédure donnée dans cette page du Wiki pour GNU/Linux (sous Windows, il faut au préalable installer quelques logiciels).

Si vous rencontrez un bug, merci de suivre cette procédure pour me le remonter.

Quoi tester ?

Un peu tout... C'est à dire dans un premier temps un lancement de Glances en mode standalone:

~/tmp/glances/glances/glances.py

En mode standalone avec le module sensor actif (si vous avez lm-sensors sur votre OS):

~/tmp/glances/glances/glances.py -e

En chargeant le nouveau fichier de configuration qui permet de changer les limites des alertes (c'est une des grosses nouveauté de cette version):

~/tmp/glances/glances/glances.py -C ~/tmp/glances/glances/conf/glances.conf

Note: vous pouvez bien-sur modifier le fichier de configuration (glances.conf) pour l'adapter à vos besoins.

Puis en mode client/serveur en lançant d'abord le serveur:

~/tmp/glances/glances/glances.py -s

Puis le client (sur la même machine):

~/tmp/glances/glances/glances.py -c localhost

Besoin de qui ?

Une liste non exhaustive de bêta-testeurs dont j'ai besoin et qui utilisent les systèmes suivants:

Merci d'avance à vous !

Cet article Besoin de bêta testeurs pour Glances 1.6 est apparu en premier sur Le blog de NicoLargo.

Installation et prise en main d’OpenVAS, le fork de Nessus

mercredi 16 janvier 2013 à 08:50

Depuis sa version 3, Nessus, le logiciel phare dans le petit monde des scanners de vulnérabilités des systèmes d'information est passé sous licence propriétaire. Comme c'est souvent ce genre de cas un fork de sa version 2 (qui était sous licence GPL) a rapidement vu le jour: OpenVAS. Nous allons dans ce billet en détailler l'installation et la première utilisation.

Scanner de vulnérabilités ? Kezako ?

Tout comme Nessus, OpenVAS est donc un scanner de vulnérabilités. On pourrait aussi l'appeler un logiciel d'aide aux audits de sécurités. Il se présente sous la forme d'un client / serveur.

OpenVAS4-Software

Le client permettant de définir le périmètre (plage d'adresse, type de machine) et les paramètres de l'audit (audit externe ou interne). Il se décline en CLI (ligne de commande), GUI (interface graphique) et API (Python notamment). Il est disponible sous GNU/Linux et Windows.

Le serveur effectuant le scan des différentes vulnérabilités (appelés NVT pour "Network Vulnerability Test") disponibles dans sa base (plus de 25.000 NVTs à l'heure de rédaction de ce billet). Le serveur existe uniquement sous GNU/Linux.

Installation du serveur OpenVAS

Pour mes tests, je dispose d'une machine sous Ubuntu 12.04 LTS. La procédure suivante est donc donnée à titre indicatif pour ce système d'exploitation.

On commence par installer le package OpenVAS Serveur disponible dans les dépôts d'Ubuntu:

sudo apt-get install openvas-server

On doit ensuite créer un couple login/password pour limiter l'accès au serveur:

sudo openvas-adduser
sudo service openvas-server restart

Il est possible que le premier lancement du serveur prenne un peu de temps car il charge l'ensemble des NVTs.

Installation du client OpenVAS

Il est possible d'installer le client sur n'importe quelle machine du réseau ou bien directement sur le serveur (c'est ce que j'ai fait pour mes tests).

On installe les packages:

sudo apt-get install openvas-client htmldoc

Note: le module htmldoc sert uniquement pour l'export au format HTML des rapports.

Première utilisation d'OpenVAS

Le client graphique OpenVAS se nomme openvas-client, il faut donc le lancer via un terminal ou votre launcher Unity/Gnome. Au premier lancement, il faut commencer par se connecter au serveur via le menu Fichier > Connecter. On doit saisir le login/password.

Pour créer son premier audit de sécurité, le plus simple est de passer par le wizard disponible via le menu Fichier > Scan assistant.

Il est alors possible de choisir le contexte de l'audit (description) et la cible (une machine, un réseau...).

Le lancement de l'audit se fera automatiquement. Le temps d’exécution dépend du nombre de machines, de la rapidité de votre réseau et du nombre de services à tester sur vos cibles.

capture_085

 

A la fin, un rapport est généré et accessible en archive:

capture_086
Il est bien sur possible d'exporter le rapport (format XML, HTML, PDF...) via le menu Rapport > Exporter.

Si l'interface de GUI est pratique pour des audits "one shot", il peut être également utile de regarder du cité de l'API Python qui permet une utilisatino avancé du serveur OpenVas et pourquoi pas une automatisation des lancements.

Configuration avancée d'OpenVAS

C'est dans le fichier de configuration /etc/openvas/openvasd.conf que l'on trouve la définition du chemin vers les NVT (sortes de plugins pour OpenVAS):

# Directory where plug-ins are to be found
plugins_folder = /var/lib/openvas/plugins

Ce répertoire contient des fichiers au format .nasl avec:

Si vous souhaitez développer vos propres scripts, il va falloir se plonger dans la documentation officielle. Le plus simple est de partir du template.nasl de référence et de tester pas à pas mais avant cela, je vous conseille de regarder la base des 25.000 NVT disponibles, régulièrement mise à jour, vous trouverez sûrement votre bonheur.

Cet article Installation et prise en main d’OpenVAS, le fork de Nessus est apparu en premier sur Le blog de NicoLargo.

Statistiques 2012 du Blog de Nicolargo

mardi 1 janvier 2013 à 15:33

En ce début d'année, je vous souhaite chers lecteurs, une merveilleuse année 2013 à vous et à vos proches.

Comme chaque année, je profite, le temps d'un billet, d'un moment calme pour  partager avec vous le bilan de l'année 2012 de ce blog, chiffres et requêtes SQL à l'appui.

Quelques chiffres...

Au niveau général, vous avez été plus de 1.000.000 à venir sur ce site cette année, ce qui représente 1.900.000 pages vues. Au mois de décembre, la barre des 10.000 commentaires depuis la création du blog en novembre 2006 a été franchie.

Après un pic au moi d'avril, le trafic s'est relativement tassé avec notamment un baisse de visiteurs venant de gOOgle. Je peux assez facilement expliquer cette baisse par la faible fréquence de mise à jour du blog (voir plus bas) et le temps de chargement relativement long de mon thème WordPress qui commence un peu à dater.

Sur ce dernier point, un des objectif de cette prochaine année est de re-développer un nouveau thème HTML5/CSS3.

Nombre de billets publiés en 2012

SELECT COUNT(*) FROM wp_posts WHERE post_status="publish" AND post_date BETWEEN '2012-01-01' AND '2012-12-31';

Résultat: 58 billets (contre 122 en 2011 et 161 en 2010)

Comme prévu, le nombre d'articles a baissé à environ 1 par semaine. Entre mon activité professionnelle et l'investissement que j'ai mis dans le développement de Glances c'était le maximum que je pouvais faire. Je pense garder le même rythme l'année prochaine.

Nombre de commentaires postés en 2012

SELECT SUM(comment_count) FROM wp_posts WHERE post_status="publish" AND post_date BETWEEN '2011-01-01' AND '2011-12-31' GROUP BY post_status;

Résultat1197 commentaires (contre 1796 en 2011 et 1341 en 2010)

Une seule chose à dire: Merci à vous. 10.000 commentaires au total sur le blog. Une grande fierté pour moi.

Liste des 10 billets les plus commentés en 2012

SELECT post_title,comment_count FROM wp_posts WHERE post_status="publish" AND post_date BETWEEN '2011-01-01' AND '2011-12-31' ORDER BY comment_count DESC LIMIT 0,10;

Résultat:

73 - Cherche beta-testeurs pour Glances 1.4

63 - Glances 1.5 est arrivé

49 - Modeles de presentations HTML5 pour remplacer PowerPoint

42 - Auto-heberger son service Web de partage de fichiers

42 - Le difficile choix des outils de supervision des reseaux

41 - Partager simplement des fichiers sur le Web avec DropCenter

41 - Installation pas a pas d'un serveur de supervision Shinken

40 - Selection de logiciels libres de comptabilite personnelle

35 - Proteger son serveur en utilisant Fail2Ban

34 - Preparer l'arrivee de Precise Pangolin avec un script de postinstall

Top 10 des lecteurs ayant le plus posté de commentaires en 2012

SELECT comment_author,COUNT(comment_count) AS F01 FROM wp_comments,wp_posts WHERE comment_approved=1 AND comment_post_ID=ID AND comment_date BETWEEN '2011-01-01' AND '2011-12-31' GROUP BY comment_author ORDER BY F01 DESC LIMIT 0,10;

Résultat (moi mis à part...):

45 - bartounet

12 - Gabriel

11 - NourSs

11 - Ben

11 - Idleman

10 - Nono

10 - issa

9 - Romain

9 - Vincent

A très bientôt pour un nouveau "vrai" billet !

Cet article Statistiques 2012 du Blog de Nicolargo est apparu en premier sur Le blog de NicoLargo.