Configurer la fonctionnalité d’inventaire

Introduction

Le module d’inventaire a pour objectif de collecter les informations matérielles et logicielles sur les équipements de système d’exploitation Microsoft Windows.

Cette procédure explique comment mettre en place l’inventaire sur un parc de machines.

Ce module est accessible depuis l’interface utilisateur en cliquant sur le module Inventaire.

 

Principes généraux

 

Warning 2 L’inventaire nécessite la mise en œuvre d’au minimum un point de collecte dans le réseau des machines à inventorier.

Ce point de collecte est soit localisé sur la ServiceNav Box, soit sur un équipement Windows supervisé avec ServiceNav Agent.

Depuis les machines inventoriées jusqu’au point de collecte

Un partage est publié sur Windows Active Directory.

Chacune des machines inventoriées exécute un programme disponible sur ce partage à intervalles réguliers (sous la forme d’une tâche planifiée) ou lors d’événements particuliers (démarrage de la machine, connexion d’un utilisateur).

Aucun exécutable n’est donc installé sur la machine inventoriée.

Le programme d’inventaire dure en moyenne entre 20 et 30s et consomme ~20% du processeur. Cette exécution est transparente par rapport à l’utilisateur classique. Une fois terminé, les résultats d’inventaire sont remontés directement au point de collecte via le partage. Le partage permet également de stocker des fichiers de journaux et une liste des identifiants.

Un identifiant unique par machine est utilisé pour permettre de suivre l’évolution de celle-ci. Cet identifiant est généré lors du premier inventaire et est stocké sur la machine ainsi que dans la liste des identifiants du partage.

En cas de réinstallation logicielle sur la machine, il est nécessaire de récupérer ces identifiants et de les réinstaller dans le même répertoire qu’à l’origine sous peine de dupliquer les informations d’inventaire.

 

Depuis le point de collecte jusqu’à la plateforme Web de supervision ServiceNav

Le point de collecte est localisé sur la ServiceNav Box

Un programme s’exécute sur le boitier de supervision toutes les cinq minutes et remonte les résultats d’inventaire vers la plateforme Web de supervision. Les résultats sont insérés en base de données.

Le point de collecte est localisé sur un équipement supervisé avec ServiceNav Agent

 ServiceNav Agent envoie les données d’inventaire à travers Internet vers une ServiceNav Box mutualisée. Dans la plupart des cas, la ServiceNav Box responsable de collecter les données de supervision endosse également ce rôle. Un programme s’exécute sur le boitier toutes les minutes et remonte les résultats d’inventaire vers la plateforme Web de supervision. Les résultats sont insérés en base de données.

 

Mise en œuvre de l’inventaire – point de collecte

ServiceNav Box

Cette opération de préparation consiste à déclarer le partage dans l’annuaire Windows Active Directory.

Cette configuration ne peut être faite que lorsque la ServiceNav Box est installée chez le client.

La ServiceNav Box hébergeant le partage (exemple: snb-supervision) doit être déclarée dans le DNS avant de procéder à l’exécution du script d’installation.

Pour déclarer le partage nécessaire au module d’inventaire, il faut également disposer d’un compte de domaine Windows Active Directory.

Un script d’installation existe, sur chaque ServiceNav Box dans le dossier :

/usr/local/nagios/bin/installationInventaire/

Le script de lancement de l’installation est : installation_inventaire.sh

Options :

-h :          Affiche l’aide

-V :          Affiche la version

-W :         Workgroup ou nom de domaine. Exemple : COSERVIT

-P :          Nom Netbios de la ServiceNav Box hébergeant le partage Samba. Exemple : snb-supervision

-D :          Nom du domaine. Exemple : COSERVIT.LOCAL

-A :          Nom du serveur Active Directory sans l’extension du domaine. Exemple : COSVGRE01

-U :          Administrateur du domaine

-X :          Mot de passe de l’administrateur du domaine

 

Se connecter sur la ServiceNav Box puis lancer la commande suivante :

cd /usr/local/nagios/bin/installationInventaire/

Exécuter par exemple (ATTENTION NE PAS COPIER/COLLER la commande, elle est mal interprétée, il faut la TAPER depuis la console) :

./installation_Inventaire.sh –W COSERVIT –P snb-supervision –D COSERVIT.LOCAL –A COSVGRE01 –U administrateur –X *********

Si le mot de passe contient un caractère interprété sous le shell Linux (comme par exemple le caractère &), encapsuler le mot de passe entre des caractères de type quote.

Exemple (ATTENTION NE PAS COPIER/COLLER la commande, elle est mal interprétée, il faut la TAPER depuis la console) :

./installation_Inventaire.sh –W COSERVIT –P snb-supervision –D COSERVIT.LOCAL –A COSVGRE01 –U administrateur –X 'Oiu&ErfGv'

Pour vérifier si un ticket Kerberos est récupéré: entrer klist après l’installation.

Warning 2 A partir de la version 3.13.1, et pour une ServiceNav Box exécutant Ubuntu 16.04, il convient de modifier le fichier /etc/init.d/iptables.sh pour autoriser le flux NETBIOS.

Décommenter ces deux lignes :

## Acceptation des connexions SAMBA
#iptables -A INPUT -p tcp –dport $PORT_SAMBA_NETBIOS -j ACCEPT
#iptables -A INPUT -p tcp –dport $PORT_SAMBA_MICROSOFT_DS -j ACCEPT

Puis exécuter :

/etc/init.d/iptables.sh

 

Pour tester l’installation, exécuter sur la ServiceNav Box la commande getent passwd. Si des utilisateurs de l’AD sont présents, la liaison avec l’annuaire Windows Active Directory est réussie.

 Tip Pour vérifier que le partage est bien en place, se connecter sur une machine du réseau inventorié, et dans l’explorateur Windows, entrer \\<nom _machine>\inventaire : vous devez visualiser le programme d’inventaire inventaire_windows.exe

Inventaire - Partage Windows

 

ServiceNav Agent

Vérifier que la ServiceNav Box chargée de recevoir les informations d’inventaire en provenance des ServiceNav Agent du parc est bien initialisée.

 Warning La ServiceNav Box doit exposer un service Web accessible depuis les ServiceNav Agent. Ce service Web est défini par un port, et une URL.

La suite de cette section indique comment créer ce service Web.

Côté box

A. Configuration du web service

  1. Configuration en HTTP

A partir de la version 3.13.1, et pour une ServiceNav Box exécutant Ubuntu 16.04, le site serviceNav est déjà configuré et activé, la section ci-dessous est donc obsolète.

Il faut par contre activer et démarrer apache2 qui est arrêté par défaut.

systemctl enable apache2
service apache2 restart

ServiceNavBox Ubuntu 16.04, version 3.13.1 et supérieures : par défaut, les ports 80 et 443
ne sont pas ouverts sur les box.

Pour vérifier la configuration firewall, lancez la commande suivante :

iptables -L -v

Pour modifier le port autorisé pour HTTP ou HTTPS, éditer le fichier /etc/init.d/iptables.sh :

nano /etc/init.d/iptables.sh

Modifier la ou les variables suivantes avec la ou les valeurs souhaitées :

PORT_HTTP="80"
 PORT_HTTPS="443"

Appliquer les modifications :

/etc/init.d/iptables.sh

Jusqu’à la version 3.13.0 incluse, créer un nouveau fichier VirtualHost :

nano /etc/apache2/sites-available/viadeisServices

Voici le contenu du fichier à copier :

 Warning 2 Les valeurs en rouge représentent le port qui sera utilisé par le web service. Si vous souhaitez utiliser un port particulier vous devez modifier ces valeurs par votre numéro de port.
NameVirtualHost *:80
	<VirtualHost *:80>
	DocumentRoot /usr/local/pasi/www/
		<Directory />
			Options -Indexes FollowSymLinks
			AllowOverride All
			Order deny,allow
			Allow from all
		</Directory>
	</VirtualHost>

Activer le virtualhost qui permettra l’accès au Web Service :

a2dissite default
a2ensite viadeisServices

Redémarrer le service Apache pour appliquer la nouvelle configuration :

/etc/init.d/apache2 restart

       2. Configuration en HTTPS

Activer le module ssl d’Apache avec la commande :

a2enmod ssl

Créer ensuite le dossier accueillant les certificats s’il n’est pas déjà existant :

mkdir /etc/apache2/cert

Pour créer les certificats, il faut se connecter au serveur SNP qui dispose d’une autorité de certification auto signée.

ssh 172.238.0.1

On se place ensuite dans le répertoire qui contiendra nos certificats :

mkdir /root/genAutosignCertificat
cd /root/genAutosignCertificat

On génère les certificats pour le Web Services en remplace la valeur <nom-de-la-box> par celle adaptée.

openssl genrsa 1024 > <nom-de-la-box>_ws.key
openssl req -new -key <nom-de-la-box>_ws.key > <nom-de-la-box>_ws.csr

Des informations vous seront demandées. Veillez à les adapter à votre installation :

Country Name (2 letter code) [AU]:FR
State or Province Name (full name) [Some-State]:ISERE
Locality Name (eg, city) []:GRENOBLE
Organization Name (eg, company) [Internet Widgits Pty Ltd]:COSERVIT
Organizational Unit Name (eg, section) []:
Common Name (eg, YOUR name) []:supervision.coservit.fr
Email Address []:

Il n’est pas nécessaire d’en saisir plus. Valider les valeurs par défaut en tapant entrer jusqu’à retrouver le prompt de commande.

Signature du certificat serveur par le CA

openssl x509 -req -in <nom-de-la-box>_ws.csr -out <nom-de-la-box>_ws.crt -CA /root/openvpn/easy-rsa/2.0/keys/ca.crt -CAkey /root/openvpn/easy-rsa/2.0/keys/ca.key -CAcreateserial -CAserial ca.srl

On revient sur le boitier SNM pour terminer la configuration :

exit

Une fois sur le boitier, on récupère les certificats que l’on vient de générer.

scp 172.238.0.1:/root/genAutosignCertificat/<nom-de-la-box>_ws.key /etc/apache2/cert/
scp 172.238.0.1:/root/genAutosignCertificat/<nom-de-la-box>_ws.crt /etc/apache2/cert/
scp 172.238.0.1:/root/openvpn/easy-rsa/2.0/keys /ca.crt /etc/apache2/cert/

 

Sur une ServiceNav Box exécutant Ubuntu 16.04, à partir de la version 3.13.1 :

nano /etc/apache2/sites-available/serviceNavSecured.conf

Listen 443
 <VirtualHost *:443>
	DocumentRoot /usr/local/pasi/www/
	ServerName localhost

	# Active HTTPS
	SSLEngine on
	SSLCertificateFile /etc/apache2/cert/<nom-de-la-box>_ws.key
	SSLCertificateKeyFile /etc/apache2/cert/<nom-de-la-box>_ws.key
	SSLCertificateChainFile /etc/apache2/cert/ca.crt
 
	<Directory />
		Options -Indexes -FollowSymLinks
		AllowOverride All
		Require all granted
	</Directory>
</VirtualHost>

Redémarrer le service Apache pour appliquer la nouvelle configuration

a2ensite serviceNavSecured
systemctl enable apache2
service apache2 restart

ServiceNavBox Ubuntu 16.04, version 3.13.1 et supérieures : par défaut, les ports 80 et 443
ne sont pas ouverts sur les box.

Pour vérifier la configuration firewall, lancez la commande suivante :

iptables -L -v

Pour modifier le port autorisé pour HTTP ou HTTPS, éditer le fichier /etc/init.d/iptables.sh :

nano /etc/init.d/iptables.sh

Modifier la ou les variables suivantes avec la ou les valeurs souhaitées :

PORT_HTTP="80"
 PORT_HTTPS="443"

Appliquer les modifications :

/etc/init.d/iptables.sh

 

Sur une ServiceNavBox exécutant Ubuntu 12.04 (jusqu’à la version 3.13.0), voici le contenu du fichier à copier :

 Warning 2 Les valeurs en rouge représentent le port qui sera utilisé par le web service. Si vous souhaitez utiliser un port particulier vous devez modifier ces valeurs par votre numéro de port.
nano /etc/apache2/sites-available/viadeisServicesSecured
NameVirtualHost *:443
	<VirtualHost *:443>
		DocumentRoot /usr/local/pasi/www/
		SSLEngine On
		SSLCACertificateFile /etc/apache2/cert/ca.crt
		SSLCertificateFile /etc/apache2/cert/<nom-de-la-box>_ws.crt
		SSLCertificateKeyFile /etc/apache2/cert/<nom-de-la-box>_ws.key
		<Directory />
			Options -Indexes FollowSymLinks
			AllowOverride All
			Order deny,allow
			Allow from all
		</Directory>
	</VirtualHost>

Activer le virtualhost qui permettra l’accès au Web Service

a2dissite default
a2ensite viadeisServicesSecured

Redémarrer le service Apache pour appliquer la nouvelle configuration

/etc/init.d/apache2 restart

       3. Configuration avec un port spécifique

Si vous avez modifié les ports par défaut dans la configuration du virtual host, il faut terminer la configuration ci-dessous sinon passez directement à l’étape suivante.

Modifier également le fichier /etc/apache2/ports.conf

nano /etc/apache2/ports.conf

Si la configuration est en HTTP, modifier la valeur en rouge par votre numéro de port :

Listen 80
<IfModule mod_ssl.c>
Listen 443
</IfModule>

Si la configuration est en HTTPS, modifier la valeur en rouge par votre numéro de port :

Listen 80
<IfModule mod_ssl.c>
Listen 443
</IfModule>

 

B. Test du web service

Pour tester si le web service est fonctionnel vous pouvez depuis le navigateur du serveur hébergeant l’agent de collecte, entrer une des URL suivantes en fonction de votre configuration :

En mode HTTP :

http://<@IP publique ou nom DNS>/api/ws_VS_Agent.php

En mode HTTPS :

https://<@IP publique ou nom DNS>/api/ws_VS_Agent.php

En mode HTTP avec un port spécifique:

http://<@IP publique ou nom DNS>:<num de port>/api/ws_VS_Agent.php

En mode https avec un port spécifique:

https://<@IP publique ou nom DNS>:<num de port>/api/ws_VS_Agent.php

 

La page web suivante doit s’afficher :

Inventaire - Test web

Si ce n’est pas le cas vérifier bien votre configuration.

Si vous êtes bloqués alors vous pouvez contacter le support produit.

Côté interface web

1. Configuration du boitier de supervision

Pour procéder à la configuration de la ServiceNav Box, procéder comme suit.

  • Se connecter sur le site Web de supervision ServiceNav
  • Cliquer sur Configuration Supervision > Général > Boitier
  • Se positionner dans l’arborescence de la société au niveau de la société à laquelle la ServiceNav Box est rattachée

ServiceNav - Boitier SNM

  • Cliquer sur le nom de la ServiceNav Box
  • Remplir les champs dans la section Configuration de l’inventaire mode agent :

Exemple mode HTTP :

– URL : http://<ip publique ou nom dns du serveur VSM>/api/ws_VS_Agent.php

– Port : 80

Exemple mode HTTPS :

– URL : https://<ip publique ou nom dns du serveur VSM>/api/ws_VS_Agent.php

– Port : 443

Inventaire - Configuration mode agent

  • Cliquer sur Valider

 

2. Configuration du collecteur

L’activation d’un équipement supervisé par ServiceNav Agent comme un point de collecte des informations d’inventaire est réalisée en se connectant sur le site Web de supervision ServiceNav.

  • Se connecter sur le site Web de supervision ServiceNav
  • Cliquer sur Inventaire > Configuration > Collecteur
  • Dans l’arborescence des sociétés se placer dans la société sur laquelle vous souhaitez mettre en place l’inventaire
  • Cliquer sur Modifier

 

Inventaire - Configuration collecteur1

  • Cliquer sur Oui
  • Choisir dans la liste des équipements supervisés le point de collecte

 

Inventaire - Configuration collecteur 2

  • Choisir dans la liste un compte de domaine pouvant déclarer le partage réseau nécessaire à l’inventaire

 

Inventaire - Configuration collecteur 3

  • Cliquer sur Valider

Prendre connaissance des instructions suivantes :

Inventaire - Activation mode agent

 Tip Pour vérifier que le partage est bien en place, se connecter sur une machine du réseau a inventorier, et dans l’explorateur Windows, entrer \\<nom _machine>\inventaire : vous devez visualiser le programme d’inventaire inventaire_windows.exe

Inventaire - Partage Windows

 

Comment les nouvelles technologies dans le domaine du bigdata et de l'intelligence artificielle bouleversent les usages de la supervision IT et IoT, et ouvrent de nouvelles opportunités aux clients et utilisateurs ServiceNav ?