GLPI GLPI sous Windows Installation de GLPI sous Windows Introduction Qu’est ce que GLPI ? GLPI est un logiciel libre de gestion des services informatiques et de gestion des services  d’’assistance. C’est une application web qui aide les entreprises à gérer le système d’information. GLPI va permettre la création d’une base de données regroupant les ressources techniques et de gestion ainsi qu’un historique des actions de maintenance. GLPI est installable sur un environnement Windows ou un Linux Ubuntu. Qu’est-ce que le plugin FusionInventory ? FusionInventory est un logiciel de gestion libre. C’est un plugin à GLPI. Il permet une gestion et une prise en main facilité. Il va agir en tant qu’intermédiaire à GLPI dans le but de collecter les données des agents FusionInventory. Inventaire matériel et logiciel Wake-on-Lan Deploiement de logiciels Découverte du matériel du réseau Qu’est ce qu’un agent FusionInventory ? Un agent FusionInventory va être mis en place sur les machines du parc, permettant de remonter les informations vers le plugin de GLPI. Les deux plugins ensemble vont permettre l’inventaire automatique du parc. Les fonctionnalités de GLPI : GLPI va permettre la gestion de systèmes d’information complexes : Inventaire automatisé du parc Suivi de l’état du parc, son obsolescence et son renouvellement Suivi des logiciels et des licences Gestion des incidents, demandes, problèmes et changements. Statistiques et rapports Gestion administrative et financière du parc Développement Déroulement du TP sur l’environnement Microsoft Windows. Installation de GLPI avec Wamp sous Windows 7 Pro Installation de Wamp Afin d’utiliser GLPI, il est nécessaire d’avoir un logiciel d’hébergement Web. Nous allons ici utiliser Wampserver, disponible à cette adresse : http://www.wampserver.com/. Nous allons prendre la version 32 bits car nous avons une machine sous Windows 7 Pro 32bit. Wamp64 sera en version 2.5 disponible sur le site de téléchargement. Il est nécessaire d’avoir les packages C++ : la version 32 bits si on est sous un système d’exploitation Windows 32bits ; pour la  la version 64 bits de l’OS, il faut télécharger et installer les versions 32 et 64 bits des packages. Ils sont disponible ici : wampserver.aviatechno. On peut télécharger tous les packages en un seul fichier tout en bas de la page. Une fois les packages installés, on installe Wampserver. Préparation de l’installation de GLPI Avant l’installation de GLPI, il faut modifier le fichier php.ini. Clique gauche sur l’icone de Wamp, Php, php.ini. On change les valeurs pour celles-ci-dessus. Une fois ceci-fait, nous allons télécharger GLPI, disponible ici : https://glpi-project.org/fr/telechargements/. On clique sur télécharger. Sur cette page Github, on clique sur « Download » GLPI en vert. Dans notre cas, on va dérouler vers le bas afin d’avoir la version 0.90. On va ensuite installer Winrar, afin de pouvoir extraire le contenu du ficher de GLPI. https://www.win-rar.com/predownload.html?&L=10 On clique sur le bouton bleu en bas de page « Télécharger WinRAR ». On exécute l’installateur et on l’installe. Une fois installé, on fait clique-droit sur le fichier téléchargé de GLPI puis extraire ici. Sans déplacer le dossier, on va se rendre sur la page « localhost » dans un navigateur puis cliquer sur « créer un virtualhost ». On rentre « glpi » dans « Nom du Virtual Host » et le chemin dans « Chemin complet absolu du dossier VirtualHost ». On va ensuite déplacer le dossier glpi dans C:wamp\www\glpi . Installation de GLPI On ouvre Glpi sur un navigateur en rentrant « http://localhost/glpi/ » On choisit notre langue puis OK. On clique sur installer. Il va ensuite vérifier la compatibilité de notre environnement. On clique sur continuer. On rentre le serveur MySQL et nos identifiants MySQL. On crée une base de données. La base de données a bien été créée. On continue. L’installation est presque terminée. On a ici les identifiants par défault du compte administrateur, technicien, normal et postonly. On clique sur Utiliser GLPI pour finaliser l’installation. On va donc se connecter avec le compte administrateur : glpi/glpi. Nous voici à l’accueil : Dans l’onglet Parc, on a les éléments du Parc. Dans l’onglet Assistance, on a la partie Assistance du parc avec les tickets. Dans l’onglet Gestion, on a accès à la gestion du parc. Dans Administration, on a accès à l’administration du site : Utilisateurs, Groupes, règles, maintenance… Dans l’onglet Configuration, on a la configuration de GLPI. Installation du Plugin FusionInventory On télécharge le plugin FusionInventory sur le site fusioninventory.org. Dans notre cas, le fichier est disponible sur le réseau. On décompresse l’archive vers C:\wamp\www\glpi\plugins. On se rend ensuite sur le navigateur et on rentre «  glpi/ ». On se rend ensuite sur l’onglet Configuration puis Plugins. On clique sur « Installer » sur la ligne de « FusionInventory ». On clique sur activer. Il faut ensuite paramétrer le plugin. On clique sur FusionInventory à gauche. On change la fréquence pour 1 heure puis on clique sur sauvegarder. On clique sur « Plugins » en haut et FusionInventory. On clique sur le message en rouge. On renseigne ici l’adresse IP du serveur GLPI. Dans notre cas : http://192.168.0.200/glpi Dans le plugin Fusion Inventory, on se rend dans Réseau puis « Plage IP ». A gauche, on rentre « Début de la plage Ip ». Installation de l’agent FusionInventory On va commencer par installer l’agent sur une machine cliente.. On exécute le fichier. On choisit la langue, Suivant, on accepte les conditions. Pour le type d’installation, on choisit « Complète ». Suivant. Ici il faut ajouter le nom du serveur hébergeant le serveur GLPI avec le plugin FusionInventory. On rentre donc dans notre cas : http://192.168.0.200/glpi/plugins/fusioninventory. Dans « Mode local » on crée un dossier dans C : nommé « inventaire ». On clique sur Installer. A la fin de l’installation, suivant. On revient sur l’hôte de GLPI. Dans Plugins, FusionInventory, Général puis Gestion des Agents, nous avons la liste des agents. Ici, nous n’avons rien. On va donc forcer l’inventaire. Inventaire Retournons sur la machine cliente. L’agent et ses services ont été installé ici : C:\Programmes\FusionInventory-Agent\perl\bin. Nous allons copier ce chemin. On ouvre ensuite l’invité de commandes. Win+R puis cmd et entrée. On rentre la commande suivante : cd C:\Programs Files\FusionInventory-Agent\perl\bin. On écrit ensuite « perl fusioninventory-agent ». L’opération est un peu longue. Dans C:\Inventaire (le dossier pour l’inventaire) nous avons le fichier d’inventaire. Au niveau de la machine hôte de GLPI, nous avons dans gestion des agents une nouvelle ligne. Dans « Parc » et Ordinateurs, nous avons la liste des ordinateurs du parc : En cliquant dessus, nous avons plusieurs options à gauche. Dans composants, nous pouvons voir les composants de l’ordinateur : Processeur, Mémoire, stockage, lecteur… Un autre exemple : Dans l’onglet Historique, on a également accès à l’historique de l’ordinateur. Dans notre cas, il s’agit de l’installation du plugin. Nous avons également accès aux logiciels présents sur la machine et pleins d’autres informations. Conclusion GLPI permet une gestion simplifiée du parc informatique. On peut suivre l’historique des ordinateurs, des licences, imprimantes, … On peut également gérer les finances. De plus, GLPI intègre un système de tickets, permettant d’aider les utilisateurs du parc informatique. GLPI sous Ubuntu Installation de GLPI sous Ubuntu Server 18.04 Introduction Qu’est ce que GLPI ? GLPI est un logiciel libre de gestion des services informatiques et de gestion des services  d’’assistance. C’est une application web qui aide les entreprises à gérer le système d’information. GLPI va permettre la création d’une base de données regroupant les ressources techniques et de gestion ainsi qu’un historique des actions de maintenance. GLPI est installable sur un environnement Windows ou un Linux Ubuntu. Qu’est-ce que le plugin FusionInventory ? FusionInventory est un logiciel de gestion libre. C’est un plugin à GLPI. Il permet une gestion et une prise en main facilité. Il va agir en tant qu’intermédiaire à GLPI dans le but de collecter les données des agents FusionInventory. Inventaire matériel et logiciel Wake-on-Lan Deploiement de logiciels Découverte du matériel du réseau Qu’est ce qu’un agent FusionInventory ? Un agent FusionInventory va être mis en place sur les machines du parc, permettant de remonter les informations vers le plugin de GLPI. Les deux plugins ensemble vont permettre l’inventaire automatique du parc. Les fonctionnalités de GLPI : GLPI va permettre la gestion de systèmes d’information complexes : Inventaire automatisé du parc Suivi de l’état du parc, son obsolescence et son renouvellement Suivi des logiciels et des licences Gestion des incidents, demandes, problèmes et changements. Statistiques et rapports Gestion administrative et financière du parc Développement Installation d’Ubuntu Server 18.04 On choisit la langue. On choisit l’agencement du clavier. Ne disposant pas de dhcp, nous allons paramétrer la carte réseau manuellement. On fait entrée. On sélectionne Manuel. On remplit ensuite selon notre adressage IP. On sauvegarde puis Terminer. N’ayant pas de proxy, on laisse vide. On sélectionne et valide l’adresse des archives. On valide « Utiliser un disque entier ». On valide, terminer et continuer. On rentre ensuite notre nom, le nom du serveur, un nom d’utilisateur puis un mot de passe (important, à retenir !) Ici, nous allons installer un serveur OpenSSH. Cela va nous permettre d’accéder au serveur à distance, qui permettra une installation plus facile de GLPI. On sélectionne puis on presse la barre espace. On laisse par défaut. Ubuntu s’installe. Le temps varie des composants de l’unité centrale. Ubuntu est installé ! On va ensuite se rendre sur Windows et accéder au serveur via putty. On rentre l’adresse IP du serveur, SSH puis Open. On rentre ensuite ses identifiants. Sous Linux, on ne voit pas le mot de passe en clair. sudo apt-get update && apt-get upgrade On peut la copier/coller en faisant un clique droit dans la console. On rentre le mot de passe à chaque fois. Sudo nous permet d’exécuter la commande en tant qu’administrateur. Installation du serveur WEB On installe Apache2, PHP et MariaDB pour le serveur web. On tape O quand on nous le demande pour confirmer l’installation. Commandes à rentrer : sudo apt-get install apache2 php libapache2-mod-php sudo apt-get install php-imap php-ldap php-curl php-xmlrpc php-gd php-mysql php-cas sudo apt-get install mariadb-server sudo mysql_secure_installation Pour la dernière commande, on nous demande le mot de passe de MariaDB. On rentre Y à chaque fois. Nous allons installer les modules complémentaires pour GLPI. sudo apt-get install apcupsd php-apcu On redémarre ensuite les services. sudo /etc/init.d/apache2 restart sudo /etc/init.d/mysql restart On va ensuite créer une base de données pour GLPI. (test étant ici le mot de passe étant le mot de passe de la base). sudo mysql -u root -p create database glpidb; grant all privileges on glpidb.* to glpiuser@localhost identified by "test"; quit On installe phpMyAdmin, permettant l’administration de la base de données via interface graphique. sudo apt-get install phpMyAdmin On choisit apache2 en pressant la barre espace puis NON. Tout est prêt pour l’installation de GLPI. Installation de GLPI Nous allons installer la version 9.3.3 de GLPI. On se rend dans ce dossier puis on télécharge et extrait GLPI dans le dossier www du serveur web. cd /usr/src/ sudo wget https://github.com/glpi-project/glpi/releases/download/9.3.3/glpi-9.3.3.tgz sudo tar -xvzf glpi-9.3.3.tgz -C /var/www/html sudo chown -R www-data /var/www/html/glpi/ GLPI est très bien installé ! Nous allons nous rendre dans un navigateur web en rentrant l’adresse IP du serveur + GLPI. Dans notre cas : http://192.168.1.200/glpi On choisit notre langue puis OK. On lit et accepte les termes de la licence puis continuer. On clique sur installer. Il va ensuite vérifier la compatibilité de notre environnement. On clique sur continuer. On rentre le serveur MySQL et nos identifiants MySQL. On crée une base de données. Le procédé peut être long. La base de données a bien été créée. On continue. L’installation est presque terminée. On a ici les identifiants par défault du compte administrateur, technicien, normal et postonly. On clique sur Utiliser GLPI pour finaliser l’installation. On va donc se connecter avec le compte administrateur : glpi/glpi. Installation et configuration du plugin FusionInventory ATENTION : Adaptez la version du plugin avec votre version ! Vous pouvez vérifier les versions compatibles au niveau des releases sur GitHub. Installation du plugin FusionInventory Nous allons installer le plugin glpi9.3+1.3. On retourne dans le répertoire, on télécharge le plugin et on extrait dans GLPI. cd /usr/src sudo wget https://github.com/fusioninventory/fusioninventory-for-glpi/archive/glpi9.3+1.3.tar.gz sudo tar -zxvf glpi9.3+1.3.tar.gz -C /var/www/html/glpi/plugins On attribue les droits d’accès. sudo chown -R www-data /var/www/html/glpi/plugins On rend visible le plugin par GLPI. cd /var/www/html/glpi/plugins sudo mv fusioninventory-for-glpi-glpi9.3-1.3/ fusioninventory/ On se rend de nouveau sur GLPI via un navigateur WEB. On se rend dans Configuration > Plugins. On clique sur Installer. L’opération n’est pas courte. On clique sur Activer. Le plugin est installé. On va ensuite le configurer. Configuration du plugin FusionInventory On se rend dans la rubrique Administration > FusionInventory. On peut voir que cron ne fonctionne pas. Cron permet les tâches planifiées automatiques. Afin de résoudre le problème, on rentre dans le Shell de linux via PuTTY. On rentre cette commande : sudo crontab -u www-data -e On tape 1. On descend tout en bas avec les flèches directionnelles. On écrit : */1 * * * * /usr/bin/php5 /var/www/html/glpi/front/cron.php &>/dev/null On fait ctrl+O puis entrée (cela va sauvegarder). On quitte avec CTRL+X. On relance cron : /etc/init.d/cron restart On se rend dans le navigateur web, sur GLPI puis dans la rubrique Configuration > Actions Automatiques. On clique sur taskscheduler puis exécuter. Cron est de nouveau fonctionnel ! Tout est prêt pour inventorier notre parc ! Pour l'installation de l'agent, voir : https://docs.khroners.fr/books/glpi/page/installation-de-glpi-sous-windows#bkmrk-installation-de-l%E2%80%99agGLPI et Fusion Inventory Prérequis et installation On installe les prérequis. apt install php-imap php-ldap php-curl php-xmlrpc php-gd php-mysql php-cas apcupsd php-apcu php-bz2 php-intl -y a2enmod rewrite On crée la base de données et l'utilisateur. On modifie le mot de passe "test" par autre chose. sudo mysql -u root -p create database glpidb; grant all privileges on glpidb.* to glpiuser@localhost identified by "test"; FLUSH PRIVILEGES; quit On télécharge GLPI, on l'extrait et on le place dans le dossier /var/www. On modifie ensuite le fichier de configuration de php. cd /tmp/ wget https://github.com/glpi-project/glpi/releases/download/9.5.4/glpi-9.5.4.tgz tar -xvzf glpi-9.5.4.tgz -C /var/www/ chown -R www-data /var/www/glpi/ nano /etc/php/7.3/apache2/php.ini memory_limit = 64M ; // max memory limit file_uploads = on ; max_execution_time = 600 ; // not mandatory but recommended session.auto_start = off ; session.use_trans_sid = 0 ; // not mandatory but recommended Création du virtualhost cd /etc/apache2/sites-available/ nano glpi.littoral1.fr.conf ServerName glpi.littoral1.fr ServerAlias www.glpi.littoral1.fr ServerAdmin Administrateur@littoral1.fr DocumentRoot /var/www/glpi ErrorLog ${APACHE_LOG_DIR}/error.log CustomLog ${APACHE_LOG_DIR}/access.log combined Redirect permanent / https://glpi.littoral1.fr/ ServerName glpi.littoral1.fr ServerAlias www.glpi.littoral1.fr ServerAdmin Administrateur@littoral1.fr DocumentRoot /var/www/glpi Options -Indexes +FollowSymLinks AllowOverride All Require all granted # Paramètres SSL SSLEngine on SSLProtocol all -SSLv2 -SSLv3 SSLHonorCipherOrder on SSLCompression off SSLOptions +StrictRequire SSLCipherSuite ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:DHE-DSS-AES128-GCM-SHA256:kEDH+AESGCM:ECDHE-RSA$ Header always set Strict-Transport-Security "max-age=31536000; includeSubDomains" # Log LogLevel warn ErrorLog ${APACHE_LOG_DIR}/*.glpi.local-error.log CustomLog ${APACHE_LOG_DIR}/*.glpi.local-access.log combined SSLCertificateFile "/etc/apache2/ssl/cert.pem" SSLCertificateKeyFile "/etc/apache2/ssl/cert.pem" On active le site. cp -arp /etc/apache2/mods-available/headers.load /etc/apache2/mods-enabled/headers.load systemctl restart apache2 a2ensite glpi.littoral1.fr systemctl reload apache2 systemctl restart apache2 On se rend ensuite dans un navigateur web : https://glpi.littoral1.fr/ L'étape suivante vérifie si tout est bon avant installation, ici non. Pour l'avertissement, GLPi ne peut pas vérifier si cela est autorisé ou non. On le vérifie. L'accès est bien interdit. On clique sur "Continuer". On rentre l'adresse du serveur MySQL et l'utilisateur de la base de données. On attend puis on continue. On a les utilisateurs par défaut. On doit ensuite les désactiver et/ou changer les mots de passe. Changement des mots de passe Sous "Administration" et "Utilisateurs" : On clique sur un des utilisateurs. On définit un mot de passe puis on clique sur sauvegarder en bas de la page. On fait de même pour les autres.Installation du plugin FusionInventory Installation et activation du plugin FusionInventory On prend la dernière version : https://github.com/fusioninventory/fusioninventory-for-glpi/releases cd /tmp/ wget https://github.com/fusioninventory/fusioninventory-for-glpi/releases/download/glpi9.5%2B2.0/fusioninventory-9.5+2.0.tar.bz2 tar -xvf fusioninventory-9.5+2.0.tar.bz2 -C /var/www/glpi/plugins On attribue les droits d’accès. chown -R www-data /var/www/glpi/plugins On se rend de nouveau sur GLPI via un navigateur WEB. On se rend dans Configuration > Plugins. On clique sur Installer. L’opération n’est pas courte. On clique sur Activer. Le plugin est installé. On va ensuite le configurer. Configuration du plugin FusionInventory On se rend dans la rubrique Administration > FusionInventory. Pour résoudre ce problème : On peut voir que cron ne fonctionne pas. Cron permet les tâches planifiées automatiques. Afin de résoudre le problème, on rentre dans le Shell de linux via PuTTY. On rentre cette commande : sudo crontab -u www-data -e On tape 1. On descend tout en bas avec les flèches directionnelles. On écrit : */1 * * * * /usr/bin/php5 /var/www/glpi/front/cron.php &>/dev/null On fait ctrl+O puis entrée (cela va sauvegarder). On quitte avec CTRL+X. On relance cron : /etc/init.d/cron restart On se rend dans le navigateur web, sur GLPI puis dans la rubrique Configuration > Actions Automatiques. On clique sur taskscheduler puis exécuter. Cron est de nouveau fonctionnel ! Tout est prêt pour inventorier notre parc ! Déploiement de l'agent FusionInventory par GPO Tout d'abord, on télécharge l'agent FusionInventory correspondant à notre version de GLPI et du plugin. https://github.com/fusioninventory/fusioninventory-agent/releases/tag/2.6 Je prend la version x64, car tous les serveurs/ordinateurs sont en 64 bits. On le place dans C:\Share\Deploiement\GLPI. On crée ensuite la GPO. On rajoute /no-ssl-check. On clique sur OK, Appliquer puis OK. On lie cette GPO à l'OU "Computers". Sur un des serveurs : Sécuriser GLPI Ticketing