Ceci est une ancienne révision du document !
~~CLOSETOC~~
OCS Inventory - Installation d'un outil d'inventaire
OCS Inventory est un outil permettant d'inventorier via ses agents, le matériel et les logiciels présents dans votre parc informatique. Couplé avec un gestionnaire de parc (GLPI par exemple), il donne aux administrateurs une vu complète de la composition du parc.
- Référence : OCS Inventory NG
<note>Cette procédure a été testée et réalisée sur une Debian 10.</note>
<note warning>Cette procédure nécessite des droits root. Comme d'habitude, prenez garde à ce que vous faîtes.</note>
Pré-requis
- Comme toujours, on commence par mettre à jour ses dépôts :
apt update
- On installe les paquets nécessaires (si vous l'installer sur le même serveur que GLPI, la plupart de ces paquets sont déjà installés) :
apt -y install git make cmake gcc make build-essential libapache2-mod-perl2 libapache-dbi-perl libapache-db-perl libapache2-mod-php php php-zip php-pclzip php-gd php-mysql php-soap php-curl php-json php-xml php-mbstring perl libxml-simple-perl libcompress-zlib-perl libdbi-perl libdbd-mysql-perl libnet-ip-perl libsoap-lite-perl libio-compress-perl libapache-dbi-perl libapache2-mod-perl2 libapache2-mod-perl2-dev libdbd-mysql-perl libnet-ip-perl libxml-simple-perl libarchive-zip-perl composer
- On active les modules
PERLnécessaires :
cpan install XML::Entities Apache2::SOAP Net::IP Apache::DBI Mojolicious Switch Plack::Handler Archive::Zip
Préparation de la base de données
- On se connecte à la base de données :
mysql
- On crée la base
ocs:
CREATE DATABASE ocs;
- On donne les droits d'administration sur cette base à l'utilisateur
ocsavec un mot de passe à définir (pour l'exemple, l'utiliseraiabcd1234) :
GRANT ALL PRIVILEGES ON ocs.* TO ocs@localhost IDENTIFIED BY "abcd1234";
- On applique les nouveaux droits :
FLUSH PRIVILEGES;
- On sort de la base :
QUIT;
Installation du serveur
- On se place dans un dossier de travail et on clone le dépôt
GitHub:
cd /tmp/ git clone https://github.com/OCSInventory-NG/OCSInventory-Server.git
- On se place dans le dépôt et on ajoute le dépôt spécifique à
ocsreports:
cd OCSInventory-Server/ git clone https://github.com/OCSInventory-NG/OCSInventory-ocsreports.git ocsreports
- On prépare les dépendances :
cd ocsreports/ composer install
- On édite le fichier
setup.sh:
cd .. nano setup.sh
- On recherche et on modifie les champs suivants :
- DB_SERVER_HOST : doit avoir la valeur
localhost. - DB_SERVER_PORT : doit avoir la valeur
3306. - DB_SERVER_USER : doit avoir la valeur
ocs. - DB_SERVER_PWD : doit avoir pour valeur, le mot de passe que vous avez définie au niveau de la base de données.
- Un fois modifié, on lance l'installation :
./setup.sh
- L'installation se lance, il suffit juste de répondre aux différentes questions. En appuyant directement sur
Entrée, on choisit l'option par défaut (celle présentée entre[]). - Une fois le processus d'installation terminé, on peut activer les configurations
apache2correspondantes au site web et au dépôt des inventaires :
a2enconf ocsinventory-reports a2enconf z-ocsinventory-server
- Accessoirement, si vous voulez utiliser l'API REST, vous pouvez activer son fichier de configuration :
a2enconf zz-ocsinventory-server
- On donne les bon droits au dossiers web :
chown -R www-data:www-data /var/lib/ocsinventory-reports
- On a plus qu'à redémarrer
apache2:
service apache2 restart
Configuration post-install
- Si tout c'est bien passé, en vous connectant à l'adresse http://server/ocsreports, vous devriez tomber sur la page de configuration post-install :
- On remplit donc les champs suivants :
- MySQL login :
ocssi vous avez suivi cette procédure. - MySQL password : le mot de passe défini précédemment.
- Name of Database :
ocslà-aussi. - MySQL HostName :
localhostnormalement. - MySQL Port : on laisse par défaut.
- Enable SSL : ça dépend si vous mettez un certificat SSL sur ce site ou pas. C'est indispensable si le site est visible publiquement, notamment si on souhaite inventorier des postes sur des sites distants. Si ça reste en réseau local, ça dépendra de la politique de votre entreprise.
- SSL MODE : ça dépend de votre certificat. Si il peut être vérifié publiquement, utilisez
MYSQLI_CLIENT_SSL. Dans le cas d'un certificat auto-signé, il vaut mieux utiliserMYSQLI_CLIENT_SSL_DONT_VERIFY_SERVER_CERT. - SSL key path : le chemin vers la clé privée du certificat SSL.
- SSL certificat path : le chemin vers le certificat SSL.
- CA certificat path : le chemin vers le certificat de l'authorité de certification intermédiaire.
- Une fois tout renseigné, on peut cliquer sur
Send. Si tout va bien, on obtient un joli message :
- On clique sur le lien
Click here to enter OCS-NG GUI. - Il se peut que la base ait besoin d'un mise à jour. Dans ce cas, un message d'information apparaît. On clique sur
Perform the updatepour lancer cette mise à jour :
- La mise à jour finie et réussie, le lien
Click here to enter OCS-NG GUIréapparait. On clique dessus donc :
- On arrive enfin sur la page de connexion de
OCS Inventory. Le compte par défaut estadminet le mot de passe par défaut estadmin(à changer !!!) :
- Si tout fonctionne correctement, il ne reste plus qu'à supprimer le fichier
/usr/share/ocsinventory-reports/ocsreports/install.phpafin d'éviter des modifications malveillantes surtout si le site est publique.
<note tip>Félicitations ! Vous voilà en possession d'un serveur OCS Inventory opérationnel. Il ne reste plus qu'à installer les agents sur vos différents postes et serveurs et intégrer OCS à GLPI, dans le cas où vous auriez aussi un serveur GLPI.</note>
Intégration à GLPI
- Connectez vous sur la console de votre serveur GLPI et téléchargez le plugins OCS Inventory pour GLPI :
wget https://github.com/pluginsGLPI/ocsinventoryng/releases/download/1.7.0/glpi-ocsinventoryng-1.7.0.tar.gz
- Décompressez l'archive :
tar -zxvf glpi-ocsinventoryng-1.7.0.tar.gz
- Copiez le dossier décompressé dans le dossier des plugins de GLPI :
cp -rf ocsinventoryng/ /var/www/glpi/plugins/
- On se connecte alors sur
GLPIet on va dans le menuConfiguration/Plugins:
- On clique sur l’icône pour accéder à la liste des plugins :
- Dans la liste des plugins, on clique sur l'icône pour installer le plugin :
- Une fois le plugin installé, un message nous l'indique en nous donnant la possibilité de l'activer, ce qu'on fera. On peut aussi l'activer via l'interrupteur qui est apparu dans la zone
Actiondu plugin :
- Après avoir activé le plugin, on clique sur son nom pour le configurer :
- On commencera par configurer les accès au serveur OCS en cliquant sur
Serveurs OCSNG:
- On clique sur pour ajouter une nouvelle configuration puis on renseigne les différents champs avant de cliquer sur
Ajouter:
<note tip>Félicitations ! GLPI et OCS sont désormais liés.</note>
Pour aller plus loin, vous pouvez :
- Aller dans les paramétrages de
OCS Inventory NGvia le menuOutils/OCS Inventory NG:
- Tester la connexion au serveur ou paramétrer les options d'import via le menu
Configuration du serveur OCSNGdans l'ongletConfiguration du serveur:
- Importer, synchroniser, lier ou supprimer des postes depuis les actions de l'onglet
Import de l'inventaire:
Instalation des agents
Windows
- Téléchargez et exécutez l'installateur sur le site GitHub.
- Au lancement, cliquez sur
Suivant >:
- On accepte la licence utilisateur :
- On laisse les options par défaut et on clique sur
Suivant >:
- Dans la page suivante, on indique :
- l'adresse du serveur OCS Inventory.
- Optionnel : Les identifiants de connexion dans le cas où vous avez paramétrer un compte spécifique pour la collecte de données.
- cochez cette case pour utiliser un certificat et une communication en SSL.
- indiquez ici le certificat à utiliser lors de la communication SSL.
- Une fois les différents champs remplis, cliquez sur
Suivant >
- Si le poste utilise un proxy pour se connecter à internet remplissez les différents champs sinon passez à la suite en cliquant sur
Suivant >:
- Sur cette page, on peut choisir les différentes options pour l'agent :
- Enable verbose log : active la verbosité dans les logs, utile en cas de débogage.
- Do not scan for installed software : les logiciels ne seront pas inclus dans le rapport qui de fait sera plus léger. A voir selon la politique de votre entreprise.
- Never ask for TAG : la machine ne sera associé à aucune étiquette.
- Specify TAG value : indique l'étiquette à utiliser pour cette machine.
- Do not register service : l'agent ne sera pas exécuter automatiquement au démarrage du poste.
- Do not register Systray applet : l'agent n'apparaîtra dans la barre de notifications.
- Immediately launch inventory : exécute l'agent immédiatement après l'installation.
- Une fois les options choisies, on clique sur
Suivant >:
- On laisse le dossier d'installation par défaut et on clique sur
Suivant >:
- L'installation se lance :
- Puis se termine. On peut alors cocher la cas Start OCS inventory NG Systray Applet pour lancer l'agent dans la zone de notification puis cliquer sur
Fermerpour quitter l'installateur :
Linux
- On met à jour les dépôts :
apt update
- On installe l'agent :
apt -y install ocsinventory-agent
- Lors de l'installation, le système demande le mode de communication :
- Locale : L'inventaire est fait mais le rapport reste sur la machine.
- HTTP : L'inventaire est envoyé au serveur OCS Inventory.
- On choisira donc
HTTP:
- Il faut ensuite indiquer l'adresse du serveur :
- L'installation se termine sans d'autres demandes. L'agent se lancera automatiquement mais on peut le forcer (ou le tester) avec la commande :
ocsinventory-agent
Options
Le fichier de configuration de l'agent est /etc/ocsinventory/ocsinventory-agent.cfg. On peut l'éditer pour ajouter quelques options intéressantes (selon l'utilité que vous en avez) :
- tag : permet de spécifier une étiquette, une classification aidant l'organisattion des postes dans OCS Inventory. Exemple : tag=PC_WINDOWS
- ssl : indique à l'agent la nécessité ou pas d'utiliser ssl (0 pour non et 1 pour oui), utile lors des problèmes de certificat auto-signé. Exemple : ssl=0
- debug : active les informations de débogage (0 pour inactif et 1 pour actif). Exemple : debug=1
— Nicolas THOREZ 2020/07/16 14:40


























Discussion