Plan du site  
pixel
pixel

Articles - Étudiants SUPINFO

Installation complète d'OCS Inventory sur Raspberry Pi 3

Par Guillaume BLEU Publié le 25/08/2017 à 15:33:46 Noter cet article:
(0 votes)
Avis favorable du comité de lecture

Sommaire :

  • Introduction

  • Déroulement de l'installation

  • Installation de Raspbian sur Raspberry

  • Installation d'OCS 2.3.1

  • Création de l'agent pour Windows

  • Installation de l'agent sous Windows 10

  • Installation de l'agent sous Mac OS X Sierra

  • Installation de l'agent sous Debian 8

  • Résultats

  • Conclusion

Introduction

Open Computer and Software Inventory (OCS Inventory) est une application qui permet de réaliser l’inventaire d’un parc informatique. Il sera alors possible d’avoir la configuration matériel d’un PC mais également savoir la configuration réseau et les logiciels installés sur ce dernier. Par la suite, il est possible de générer un *.csv pour ainsi exporter les données d’un PC ou du parc. Ce logiciel est écrit en Perl, il est très léger et utilise très peu de bande passante (5kb/s). Pour des raisons économique et pratique, nous installerons OCS Inventory sur un Raspberry Pi 3.

C’est un nano-ordinateur à processeur ARM. Cortex-A53 (Quad-Core 1.2Ghz) 1Go de RAM, du Wi-Fi, du Bluetooth 4.1, 1 port RJ45, 4 ports USB, un port HDMI, une prise jack et un port micro SD (qui sert de stockage pour l’OS et le boot). Le Raspberry est très complet, avec ses pins il peut également être utilisé en robotique mais nous n’irons pas plus loin sur ce sujet. Aujourd’hui un Raspberry coûte une cinquantaine d’euros (pack Raspberry + alimentation 2.5A + boitier de protection + micro SD de 16Go). Concernant la carte mémoire il est conseillé de prendre une carte rapide (Catégorie 10) et de capacité 32Go.

Déroulement de l'installation

Nous partirons du principe que rien n’est installé, je vais donc détailler l’installation de A à Z. Dans un premier temps nous installerons l’OS sur le Raspberry, nous configurerons le réseau (IP fixe) et installerons les mises à jour. Par la suite nous installerons la dernière version d’OCS (2.3.1 à ce jour). Nous créerons l’agent Windows que nous installerons par la suite suivi des agents pour Mac et Linux. Nous effectuerons des tests pour assurer le bon fonctionnement d’OCS Inventory.

Installation de Raspbian

Nous allons installer Raspbian Jessie mais, qu’est-ce que c’est ? Il s’agit tout simplement de la fusion Raspberry + Debian. C’est un système d’exploitation gratuit et basé sur Debian. Rappelons-nous, le Raspberry est basé sur une architecture ARM donc les OS x64 ou x86 ne fonctionnent forcément pas.

Vous êtes prêt ? Commençons l’installation !

Tout d’avoir il faut télécharger la distribution :

http://145.130.102.57/domoticx/diskimages/raspberry_pi_raspbian/Raspbian%20Jessie%202017-07-05%205GB%20%28rpi2%2B3%29%20%28kernel%204.4%2B%29.img.7z

Une fois téléchargé, décompressez l’archive.

Il faut également se munir de Win32 Disk Imager : https://sourceforge.net/projects/win32diskimager/files/latest/download

L’opération suivante est simple, il faut ouvrir Win32 Disk Imager, renseigner le chemin de l’img précédemment téléchargée, sélectionner la lettre de la micro SD et cliquer sur « Ecrire ».

Patientez deux minutes et la carte sera prête !

On va maintenant préparer le premier démarrage. Avant de lancer le Raspberry, il faut s’assurer d’avoir branché les périphériques nécessaires (écran, souris, clavier, micro SD). Une fois que tout est branché, on peut brancher l’alimentation. Au premier démarrage, il faut laisser le Raspberry partitionner le boot. Il suffit juste d’attendre.

Je tiens juste à préciser que pour faciliter les captures d’écran, j’effectue l’installation à distance (SSH) via Putty, en soit, cela ne change rien à l’installation.

Concernant les identifiants utilisateur :

Nom utilisateur : pi
Mot de passe : raspberry

Si le mot de passe ne fonctionne pas, vérfiez bien que la disposition est bien en AZERTY et non en QWERTY.

Si vous voulez changer le mot de passe de l'utilisateur pi :

passwd pi

Pour se logger en root (dans un terminal) :

sudo su root

Si tout s’est bien passé, vous devez arriver à cet écran.

Dans un premier temps nous allons mettre à l’heure le Raspberry (important car l’heure et la date de l’inventaire d’un PC est importante à savoir dans certain cas)

Dans un terminal :

sudo dpkg-reconfigure tzdata

En fonction de votre continent et de votre capital, choisissez la correspondance, voici pour mon cas étant à Paris.

Nous allons maintenant mettre à jour les paquets :

apt-get update
apt-get upgrade

À présent, nous allons configurer l’adresse IP pour qu’elle soit fixe.

Adaptez les adresses en fonction de vos besoins et votre réseau.

Actualisez les paramètres.

/etc/init.d/networking restart

Installation d'OCS Inventory 2.3.1

Maintenant, nous allons installer les outils qu’OCS Inventory aura besoin :

apt-get install build-essential

apt-get install -y php5-common libapache2-mod-php5 php-pear
        php5-cli php5-ldap libxml-simple-perl libio-compress-perl libdbi-perl
        libdbd-mysql-perl libapache-dbi-perl libnet-ip-perl libsoap-lite-perl
        libarchive-zip-perl libphp-pclzip php5-gd php5-curl php-soap
        libsoap-lite-perl

A présent, nous allons dire à CPAN (Comprehensive Perl Archive Network, c’est un site Web consacré au langage de programmation Perl. CPAN désigne également un module Perl servant à accéder à ce site. Son nom vient du Comprehensive TeX Archive Network, ou CTAN, son homologue consacré à TeX. Source : Wikipedia) de se configurer automatiquement.

cpan –i XML ::ENTITIES

Qui dit application web dit interfaces et bases de données. Nous allons à présent installer phpMyAdmin et MySQL.

apt-get install mysql-server php5-mysql phpmyadmin -y

A l’écran de configuration, entrez un mot de passe

Ensuite, sélectionnez apache2 (cocher avec espace), puis Entrée

Sélectionnez « oui »

Mettez un mot de passe pour l’administrateur de phpMyAdmin

Cette fois-ci, un mot de passe de connexion MySQL pour phpMyAdmin

Une fois l’installation finie, nous allons changer le fichier de configuration et redémarrer le service Apache

ln -s /etc/phpmyadmin/apache.conf /etc/apache2/sites-enabled/phpmyadmin.conf
service apache2 restart

Maintenant nous allons paramétrer la base de données

Dans un navigateur, allez sur http://[IP_Raspberry]/phpmyadmin/, identifiez-vous en tant que root avec le mot de passe précédemment choisi

Pour qu’OCS Inventory puisse écrire sur la base de données, nous allons lui créer un identifiant en lui accordant les privilèges.

Pour cela, RDV dans Utilisateur puis Ajouter un utilisateur.

Entrez le nom d’utilisateur ocs, choisissez un mot de passe et cochez les deux cases pour donner les privilèges puis cliquez tout en bas à droite sur « Exécuter »

Nous allons maintenant installer OCS Inventory.

Dans un terminal, assurez-vous que git est installé (nous allons récupérer OCS sur Github d'ailleurs)

apt-get install git

Nous allons télécharger le fichier OCS dans le dossier tmp

cd /tmp	

wget https://github.com/OCSInventory-NG/OCSInventory-ocsreports/releases/download/2.3.1/
OCSNG_UNIX_SERVER-2.3.1.tar.gz

Si le téléchargement s’est bien passé, vous devez avoir ce résultat.

Maintenant, décompressez l’archive et rendez-vous dans le dossier.

tar zxf OCSNG_UNIX_SERVER-2.3.1.tar.gz

cd OCSNG_UNIX_SERVER-2.3.1

Et lancez son installation.

.setup.sh

A chaque question, appuyez sur « Entrée ».

A présent nous allons créer deux liens symboliques qui permettront de déplacer les configurations sans devoir les activer.

/etc/apache2/conf-available/ocsinventory-reports.conf /etc/apache2/conf-enabled/
ocsinventory-reports.conf

Puis,

ln -s /etc/apache2/conf-available/z-ocsinventory-server.conf /etc/apache2/conf-enabled/
z-ocsinventory-server.conf

Pour des problèmes de droits d’accès, changez le propriétaire du fichier.

chown www-data:www-data -R /var/lib/ocsinventory-reports

Et nous allons ensuite donner les accès à la base de données (avec les identifiants préalablement créés) dans ce fichier (remplacez les identifiants et mots de passe par ceux que vous avez choisis)

nano /etc/apache2/conf-enabled/z-ocsinventory-server.conf

Enregistrez et redémarrez le service Apache

service apache2 restart

Maintenant RDV sur http://[IP_Raspberry]/ocsreports/

Entrez le login MySQL, son mot de passe et le nom de la base de données suivi du hostname (ici localhost)

Cliquez sur « Send » et si tout s’est bien passé vous devrez arriver à cet écran

Nous allons maintenant supprimer le fichier d’installation.

rm /usr/share/ocsinventory-reports/ocsreports/install.php

Félicitations, OCS Inventory est maintenant installé ! Mais pour donner un sens à tout ça et remplir l'inventaire, nous allons installer les agents sur Windows, Mac et Linux.

Création de l'agent pour Windows

Avant d’installer l’agent sous Windows, nous devons le créer. Pour cela, il nous faut l’agent OCS Inventory, Windows Packager et PsExec.

Agent OCS Inventory : https://github.com/OCSInventory-NG/WindowsAgent/releases/download/2.3/OCSNG-Windows-Agent-2.3.0.0.zip

Windows Packager : https://github.com/OCSInventory-NG/Packager-for-Windows/releases/download/2.3/OCSNG-Windows-Packager-2.3.zip

PsExec : https://download.sysinternals.com/files/PSTools.zip

Une fois tout télécharger, nous allons créer le packager

Créez un dossier, décompressez le Packager dans le dossier et dans le fichier compressé « PSTools.zip », extraire le fichier PsExec.exe

Par la suite, décompressez l’agent dans le dossier précédemment créé.

Maintenant que tout est prêt, lancez OcsPackager.exe

Renseignez l’exécutable de l’agent.

Pour ici, nous ne mettons pas de certificat.

Dans command line options, complétez et mettez cette ligne :

/S /NOW /SERVER=http://[AdresseIPduRaspberry]/ocsinventory /NOSPLASH

Sauvegardez le futur agent où vous voulez.

Installation de l'agent sous Windows 10

Quand le packager a fini, nous avons plus qu’à lancer l’agent, clic-droit sur OcsPackage, exécuter en tant qu’administrateur et l’agent se lance, rien n’apparait à l’écran.

Installation de l'agent sous Mac OS X Sierra

Téléchargez l’agent ici : https://github.com/OCSInventory-NG/UnixAgent/releases/download/2.1.1/Ocsinventory_Agent_MacOSX-2.1.1.pkg.zip et lancez-le.

Si vous êtes bloqué par la sécurité « Développeur non identifié » faites ceci.

Allez dans Pomme -> Préférences Systèmes -> Sécurité et confidentialité et cliquez sur « Ouvrir quand même » puis Ouvrir et Continuer

A ce moment-là faites Continuer -> Continuer -> Accepter

Renseignez alors l’adresse IP du Raspberry et décochez Télé-déploiement et Vérification SSL

Cliquez sur continuer, cochez Lancez l’agent OCS au démarrage du démon puis Lancer le démon après l’installation.

Et cliquez sur Installer.

Bravo, l’agent est installé sur le Mac.

Installation de l'agent sous Debian 8 (Jessie)

Avant de commencer, petite recherche de mises à jour

apt-get update
apt-get upgrade

Je rappelle que toutes les manipulations sont à faire en tant que root

Maintenant, nous allons installer les packages dont l’agent a besoin.

apt-get install dmidecode libxml-simple-perl libio-compress-perl 
libnet-ip-perl libwww-perl libdigest-md5-perl libnet-ssleay-perl 

Nous pouvons également installer ces modules optionnels :

apt-get install libcrypt-ssleay-perl libnet-snmp-perl 
libproc-pid-file-perl libproc-daemon-perl net-tools libsys-syslog-perl 
pciutils smartmontools read-edid nmap

Nous allons maintenant installer l'agent OCS Inventory, pour cela :

cd /tmp
wget https://github.com/OCSInventory-NG/UnixAgent/releases/download/2.3/Ocsinventory-Unix-Agent-2.3.tar.gz

Décompressez l’archive.

tar -xvzf Ocsinventory-Unix-Agent-2.3.tar.gz

Vérifiez la configuration de Perl avec un script Makefile.PL

cd Ocsinventory-Unix-Agent-2.3
perl Makefile.PL

Si la configuration est ok, vous devez avoir ça.

Si vous avez un message d’erreur, allez voir les logs dans le fichier ocs_agent_setup.log et essayez d’installer les packages manquants.

Continuons, nous allons faire la compilation à présent.

make
make install

Début de la configuration : (suivez les instructions)

y
0 (zéro)
y
n
http://[adresseIpRaspberry]/ocsinventory

Ensuite :

n
n
y
[Touche entrée]
y
n
y
y
y
/log/ocs.log
n
n
n
n
y

Si tout s’est bien passé, vous devez avoir ça.

L'agent est installé.

Résultats

J’ai, par la suite, déployé les agents sur un parc informatique. Il se peut donc que j’ai plus de machines que vous mais nous allons contrôler si le PC (sous Windows 10), le Mac (sous Sierra) et le Linux (sous Debian 8) apparaissent bien dans l’inventaire.

RDV sur OCS Inventory http://[IpDuRaspberry]/ocsreports

Logger vous avec :

Utilisateur : admin

Mot de passe : admin (changez le mot de passe plus tard pour des questions de sécurité)

Vous arrivez donc sur cette page, avec le nombre de machines répertoriées.

Nous allons vérifier si mon PC personnel est bien présent (sous Windows 10).

Pour cela cliquez sur toutes les machines.

Nous avons bien nos 3 machines de présentes.

Pour avoir plus d’infos, cliquez sur le nom de la machine Windows (ici PC-GUILLAUME).

Nous pouvons également connaître la configuration matérielle (comme par exemple processeur, RAM, disque dur etc…), logicielle, périphérique etc.

Allons maintenant voir l'inventaire du Mac.

Et pour finir, le PC sous Linux.

Conclusion

Si vous cherchez une solution d’inventaire peu coûteuse, facile d’installation mais également facile à utiliser, celle-ci est la meilleure. Le Raspberry est largement performant et polyvalent pour effectuer cette tâche puis il est beaucoup moins coûteux qu’un PC qui ferait office de serveur. En plus, le Raspberry à une consommation très minime, sachant que le serveur tourne toute l’année, ce critère n’est pas négligeable.

A propos de SUPINFO | Contacts & adresses | Enseigner à SUPINFO | Presse | Conditions d'utilisation & Copyright | Respect de la vie privée | Investir
Logo de la société Cisco, partenaire pédagogique de SUPINFO, la Grande École de l'informatique, du numérique et du management Logo de la société IBM, partenaire pédagogique de SUPINFO, la Grande École de l'informatique, du numérique et du management Logo de la société Sun-Oracle, partenaire pédagogique de SUPINFO, la Grande École de l'informatique, du numérique et du management Logo de la société Apple, partenaire pédagogique de SUPINFO, la Grande École de l'informatique, du numérique et du management Logo de la société Sybase, partenaire pédagogique de SUPINFO, la Grande École de l'informatique, du numérique et du management Logo de la société Novell, partenaire pédagogique de SUPINFO, la Grande École de l'informatique, du numérique et du management Logo de la société Intel, partenaire pédagogique de SUPINFO, la Grande École de l'informatique, du numérique et du management Logo de la société Accenture, partenaire pédagogique de SUPINFO, la Grande École de l'informatique, du numérique et du management Logo de la société SAP, partenaire pédagogique de SUPINFO, la Grande École de l'informatique, du numérique et du management Logo de la société Prometric, partenaire pédagogique de SUPINFO, la Grande École de l'informatique, du numérique et du management Logo de la société Toeic, partenaire pédagogique de SUPINFO, la Grande École de l'informatique, du numérique et du management Logo du IT Academy Program par Microsoft, partenaire pédagogique de SUPINFO, la Grande École de l'informatique, du numérique et du management

SUPINFO International University
Ecole d'Informatique - IT School
École Supérieure d'Informatique de Paris, leader en France
La Grande Ecole de l'informatique, du numérique et du management
Fondée en 1965, reconnue par l'État. Titre Bac+5 certifié au niveau I.
SUPINFO International University is globally operated by EDUCINVEST Belgium - Avenue Louise, 534 - 1050 Brussels