Dans le cadre de la mise en place d’une infrastructure complète en Atelier Professionnel dans le cadre de ma formation en BTS SIO SISR, un service de gestion des incidents ainsi que de gestion du parc informatique. La solution GLPI a été choisi car ce service est un logiciel de gestion des services informatiques (ITSM) complet et open source.
Installation et configuration d’un serveur Web
Prérequis
- Machine sous Rocky Linux (ici 9.5)
Mise à jour du système
sudo dnf update -y
Installation et configuration d’Apache
- Installation du service Apache
sudo dnf install httpd -y
- Activer et démarrer le service Apache
sudo systemctl enable --now httpd & sudo systemctl start httpd
Vérifiez que le service fonctionne correctement
sudo systemctl status httpd
Ouvrez le pare-feu pour autoriser le trafic HTTP et HTTPS
sudo firewall-cmd --permanent --add-service=http
sudo firewall-cmd --permanent --add-service=https
sudo firewall-cmd --reload
Installation et configuration de PHP
GLPI Version | PHP Min. Ver. | PHP Max. Ver. |
10.0.X | 7.4 | 8.3 |
Activation des dépôt EPEL et Remi (pour obtenir des versions récentes de PHP)
sudo dnf install epel-release -y
Installation des extensions PHP requises
sudo dnf install -y nano wget tar php php-dom php-{fileinfo,filter,libxml,json,simplexml,xmlreader,xmlwriter,curl,gd,intl,mysqli,session,zlib,bz2,phar,zip,exif,ldap,openssl,opcache}
Vérifiez la version de PHP installée
php -v
Redémarrez Apache pour appliquer les modifications
sudo systemctl restart httpd
Redémarrage PHP-FPM
sudo systemctl enable php-fpm --now
Installation et configuration de la base de données
Version minimum recommandé :
MySQL | MariaDB |
5.7 | 10.2 |
Installation de MariaDB
Installation de MariaDB
sudo dnf install -y mariadb-server
Démarrer et activer MariaDB
sudo systemctl enable mariadb --now
Configuration MariaDB
Configuration de MariaDB et sécurisation de l’installation
sudo mysql_secure_installation
- Définir le mot de passe root
- Accepter les options par défaut (supprimer les utilisateurs anonymes, désactiver l’accès root distant, …)
Connexion à MariaDB
sudo mysql -u root -p
Exécuter les commandes suivantes pour créer une base de données et un utilisateur
CREATE DATABASE glpi CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;
CREATE USER 'glpiuser'@'localhost' IDENTIFIED BY 'motdepassefort';
GRANT ALL PRIVILEGES ON glpi.* TO 'glpiuser'@'localhost';
FLUSH PRIVILEGES;
EXIT;
Ne pas oublier de changer le mot de passe pour un mot de passe sécurisé
Téléchargement et installation de GLPI
Téléchargement GLPI
Téléchargez la dernière version stable de GLPI depuis le site officiel
sudo wget https://github.com/glpi-project/glpi/releases/download/10.0.17/glpi-10.0.17.tgz
Changer la version en fonction de la plus récente disponible
Extraire l’archive vers le bon répertoire et suppression de l’archive téléchargé
tar -xvzf glpi-10.0.17.tgz -C /var/www/html
sudo rm glpi-*.tgz
Configuration des permissions
Attribution des permissions nécessaires
sudo chown -R apache:apache /var/www/html/glpi
sudo chmod -R 755 /var/www/html/glpi
sudo chown -R apache:apache /var/www/html/glpi/files /var/www/html/glpi/config
sudo chcon -R -t httpd_sys_rw_content_t /var/www/html/glpi/files
sudo chcon -R -t httpd_sys_rw_content_t /var/www/html/glpi/config
Accès à l’interface web de GLPI
Accédez à l’interface web de GLPI en ouvrant un navigateur et en entrant l’adresse suivante
http://<IP_de_votre_serveur>/glpi
Si toutes les étapes ont été suivies correctement, vous devriez parvenir à cette page. Nous allons maintenant débuter en sélectionnant la langue.

Étant donné qu’il s’agit d’une installation fraîche, cliquez sur « Installer ».

Étape cruciale : GLPI vérifie la configuration de notre serveur afin de s’assurer que tous les prérequis sont remplis. Tout étant en ordre, nous pouvons poursuivre.

À l’étape suivante, il nous faut fournir les informations nécessaires pour se connecter à la base de données. Nous renseignons « localhost » comme serveur SQL, car MariaDB est installé localement, sur le même serveur que GLPI. Ensuite, nous indiquons l’utilisateur « glpi » ainsi que le mot de passe correspondant.


Poursuivez jusqu’à atteindre les dernières étapes !





Nous pouvons nous connecter avec les identifiants glpi et le mot de passe glpi.

Bienvenue sur votre nouveau serveur GLPI !

Même si l’installation est finie, quelques actions recommandées sont à effectuer :
- Changer le mot de passe de tous les comptes par défaut
- Supprimer le fichier « install.php » puisqu’il n’est plus nécessaire et représente un risque
sudo rm /var/www/glpi/install/install.php
Configuration d’un collecteur de mail dans GLPI
Dans le cadre de l’automatisation dans la création et la gestion d’incidents, cette rubrique vous explique comment configurer un collecteur d’e-mails dans GLPI.
Liste des serveurs IMAP/SMTP
Dans le cadre de cette configuration, il est nécessaire d’avoir quelques informations complémentaires telles que la liste des serveurs IMAP et SMTP couramment utilisés et qui peuvent être configurés dans GLPI pour la réception et l’envoi de courriels.
Liste des serveurs IMAP/SMTP
Fournisseur | Serveur IMAP | Port IMAP | Serveur SMTP | Port SMTP | Remarques |
---|---|---|---|---|---|
Gmail | imap.gmail.com | 993 | smtp.gmail.com | 587 (TLS) | Activer l’IMAP et générer un mot de passe d’application (si 2FA activée). |
Outlook / Hotmail | outlook.office365.com | 993 | smtp.office365.com | 587 (TLS) | Fonctionne pour les comptes Outlook, Live et Hotmail. |
Yahoo | imap.mail.yahoo.com | 993 | smtp.mail.yahoo.com | 465 (SSL) | Nécessite un mot de passe d’application pour IMAP/SMTP. |
Free | imap.free.fr | 993 | smtp.free.fr | 465 (SSL) | Gratuit pour les abonnés Free. |
Orange | imap.orange.fr | 993 | smtp.orange.fr | 465 (SSL) | Disponible pour les abonnés Orange. |
Bouygues | imap.bbox.fr | 993 | smtp.bbox.fr | 465 (SSL) | Pour les abonnés Bouygues Telecom. |
SFR | imap.sfr.fr | 993 | smtp.sfr.fr | 465 (SSL) | Pour les abonnés SFR. |
OVH | ssl0.ovh.net | 993 | ssl0.ovh.net | 587 (TLS) | Pour les domaines personnalisés hébergés chez OVH. |
ProtonMail | 127.0.0.1 (Bridge requis) | Variable | 127.0.0.1 (Bridge requis) | Variable | ProtonMail nécessite l’installation de ProtonMail Bridge pour IMAP/SMTP. |
Bluehost | mail.votre-domaine.com | 993 | mail.votre-domaine.com | 465 (SSL) | Remplacez ‘votre-domaine.com’ par le domaine hébergé chez Bluehost. |
Configuration du collecteur
Dans le cadre de cette exemple, le collecteur sera pour un lycée du nom de Lycée Ch’ti du Nord.
Dnas un premier temps, il est nécessaire d’autoriser des tickets anonymes et leurs suivis dans : Accueil > Configuration > Générale > Assistance

Pour la configuration qui suivra, nous prendrons une adresse Gmail pour la configuration. Et pour compléter la configuration de celle-ci, il sera nécessaire de créer un mot de passe d’application avec le suivant.


Puis, il faut se connecter à son espace GLPI avec un compte administrateur ( Il est recommandé de désactiver le compte administrateur glpi par défaut). Et il faut se rendre dans Configuration > Collecteurs.

Il faut cliquer sur Ajouter et remplir les informations nécessaires comme ci-dessous :
- Nom : Collecteur Lycee Ch’ti
- Actif : Oui
- Serveur : imap.gmail.com
- Option de connexion : IMAP, SSL
- Port : 993
- Identifiant : adressemail@domaine.com ( A remplacer par votre adresse mail)
- Mot de passe : Mot_de_passe_de_l’application_sans_les_espaces

Et on peut tester la connexion en allant sur Actions > Récupérer les courriels maintenant.

Ainsi, on peut observer les tickets arrivés dans Assistance > Tickets.

Votre collecteur de tickets par e-mails et configuré !
Exemple de gestion d’un ticket d’incident : Incident lié à un logiciel
Contexte
L’utilisateur envoie un e-mail concernant un problème d’accès à l’application BCDI. Voici les détails de la gestion de cet incident. Voici les détails de la gestion de cet incident ci dessous :
Email de l’utilisateur
Expéditeur : enseignant.mathieu@lyceechti.edu
Sujet : [Urgent] Problème BCDI – Accès Base de Données
Message :
Bonjour,
Depuis ce matin, l’accès à l’application BCDI est impossible.
– Message d’erreur : « Connexion refusée à la base de données ».
– Poste concerné : Bibliothèque.
Merci pour votre intervention rapide.
Cordialement,
Mathieu Dupont
Enseignant au Lycée Ch’ti du Nord.
Transformation en ticket
Le collecteur traite automatiquement cet e-mail et crée un ticket dans GLPI :
– Titre : [Urgent] Problème BCDI – Accès Base de Données.
– Description : Le contenu du message.
– Demandeur : Mathieu Dupont.
– Catégorie : Logiciels > BCDI.
– Priorité : Urgente (par une règle de détection des mots-clés comme « Urgent »).
Notifications
GLPI envoie une réponse automatique :
Bonjour Mathieu Dupont,
Votre demande concernant « Problème BCDI – Accès Base de Données » a été enregistrée sous le numéro de ticket #67890.
Un technicien prendra en charge votre demande dans les plus brefs délais.
Cordialement,
Service Informatique
Lycée Ch’ti du Nord.
Résolution
– Diagnostic : Vérifiez l’état du serveur MySQL hébergeant la base de données BCDI.
– Résolution : Redémarrez le service MySQL et testez l’accès depuis le poste bibliothèque.
– Mise à jour : Problème identifié et résolu : Le service MySQL était arrêté. Redémarrage effectué avec succès.
Notification de résolution
Bonjour Mathieu Dupont,
Votre demande #67890 a été résolue.
Résolution : Le service MySQL de la base de données BCDI a été redémarré avec succès.
Si vous rencontrez d’autres problèmes, merci de nous contacter.
Cordialement,
Service Informatique
Lycée Ch’ti du Nord.
Gestion de l’incident
Pour l’exemple ci-dessus, on va créer le mail pour qu’il arrive à la boite mail du collecteur :

Récupération du mail par le collecteur (Décris ci dessus dans la rubrique Collecteur) :


- Auparavant une règle de priorité par rapport aux mots clefs du titre et de la description a été configuré comme ci-dessous
- Se rendre dans Administration > Règles > Règles métiers pour les tickets > Ajouter
- Ajouter les informations suivantes puis sur Ajouter

Critères

Actions

De plus, une règle pour catégoriser dans “Logiciels > BCDI” (Logiciel est la catégorie parent de BCDI)




Le ticket a été attribué au technicien de notre GLPI

Il va se connecter à son compte pour traiter le cas et envoyer une réponse à la personne concernée, voici le traitement effectué :






Après avoir mis la solution de résolution (cf. Message en bleu plus haut écrit par le technicien), il est nécessaire de le clôturer

En installant un serveur SMTP, il est possible de faire des réponses automatiques directement à l’adresse mail de l’utilisateur ayant fait le ticket
Gestion des droits dans GLPI (En cours de modification)
Dans le cadre de la gestion des demandes et des incidents ainsi que la gestion du parc informatique, le service GLPI permet une flexibilité dans un logiciel open-source. Cependant, en application au juste droit, il est nécessaire d’administrer celui en gérant les droits attribués aux utilisateurs.
Création d’un utilisateur
Dans l’onglet Administration > Utilisateur, on peut consulter la liste de tous les utilisateurs existants. Et sur cette même page, il y a la possibilité de créer un nouvel utilisateur.

Ainsi, lors de la création d’un utilisateur, il sera nécessaire de remplir les informations suivantes puis cliquer sur Ajouter :

De plus, il y a la possibilité de gérer la validité du compte :

Ainsi qu’aux habilitations du compte et à quelle entité appartient le compte :

Gestion des habilitations d’un utilisateur
Toujours dans l’onglet, Administration > Utilisateurs et en sélectionnant l’utilisateur en question, il est possible de modifier ou d’ajouter des habilitations ainsi que de modifier l’entité que peut administrer ou consulter cet utilisateur.


Gestion de groupes
Il est également possible de créer un groupe en accédant à Administration > Groupe, puis en cliquant sur le bouton Ajouter.

Puis, en remplissant les informations nécessaires et en cliquant sur Ajouter, le groupe est crée.

Dans l’onglet Sous-groupe, il est permis de créer des groupes enfants.

De plus, dans l’onglet Utilisateurs, il est envisageable de voir tous les utilisateurs appartenant au groupe et d’effectuer la gestion de ceux-ci directement depuis ici, en ajouter, en supprimer.

Règles et droits
Il est permis de créer une règle pour attribuer des droits. Pour effectuer cette action, il est nécessaire de se rendre dans l’onglet Administration > Règles, il faut sélectionner Règle d’affectation d’habilitation à un utilisateur.

Puis aller sur le bouton Ajouter.

Il faudra remplir les informations de base, telles que nom, description, puis cliquer sur Ajouter.

Ensuite, il faut se rendre dans l’onglet Critère puis Groupe et le groupe qui a été créé soit Test ici.

Puis en allant dans Action, on peut ajouter l’action Profil et il faudra assigner le rôle que l’on souhaite, ici Technician. Ne pas oublier de finaliser l’action en cliquant sur Ajouter.

La règle est désormais fonctionnelle et activée !

De plus, dans l’onglet Administration > Profils, il est possible de sélectionner un profil, ici l’exemple de Technician. Ensuite, en accédant dans l’onglet Parc, on peut voir tous les droits attribués aux techniciens concernant la gestion du parc informatique.

Par ailleurs, dans l’onglet Assistance, il est possible de voir les actions autorisés pour les techniciens concernant leurs tickets.

Ainsi, dans cette barre latérale, il est possible de paramétrer de nombreux paramètres associés à ce profil.

Authentification LDAP
Configuration LDAP et connexion à l’AD
Petit contexte pour visualiser l’infrastructure virtuelle :

Pour ce tuto, les utilisateurs suivant ont été créé :

Installation des mises à jours et installation des extensions nécessaires
sudo dnf install php-ldap -y





On effectue un test avec un compte LDAP


Et cela fonctionne ! Ce compte aura accès à GLPI avec par défaut un profil Self-Service dans lequel il ne pourra créer et suivre l’état de ses propres tickets et accéder à la base de connaissance de GLPI en mode FAQ si celle-ci est utilisée.
En se connectant sur GLPI avec un compte Base interne GLPI, puis que l’on se rends dans Administration → Utilisateurs, on peux retrouver dans la liste des utilisateur, l’utilisateur connecté précédemment.


Importation d’utilisateurs en masse
Si vous le souhaitez, vous avez la possibilité d’importer en masse tous les utilisateurs présents dans la « BaseDN » que vous avez configurée. Cela permettra de les synchroniser avec votre GLPI avant même leur première connexion.
Pour ceci, il faudra se rendre dans Liaison annuaire LDAP

Puis dans Importation de nouveaux utilisateurs

Définir des filtres si vous le souhaiter et se rendre sur Rechercher

En bas de la page, vous verrez apparaître tous les utilisateurs présents dans la BaseDN que vous avez déclarée, qu’il s’agisse des utilisateurs d’une unité organisationnelle (OU) spécifique ou de tous les utilisateurs du domaine, en fonction de votre configuration.

Pour les importer dans GLPI, il faudra sélectionner les cases à gauche puis cliquer sur Actions → Importer → Envoyer


Une infobulle informera du déroulement de l’import.
Il est possible de vérifier les utilisateurs :

Importation des groupes AD
Se rendre dans le menu Administration → Groupes → Liaison annuaire LDAP

Puis se rendre sur Importation de nouveaux groupes

Ainsi, le service proposera en bas de page tous les groupes disponibles dans le BaseDN renseigné plus tôt. Il ne manquera plus qu’à sélectionner comme plus tôt puis Action → Importer → Envoyer


Les groupes importés sont disponibles dans GLPI

Plugins
Injecter des données en masse grâce à Data Injection
Data Injection permet d’importer facilement des données dans GLPI en les centralisant dans un fichier CSV, évitant ainsi de les saisir une par une. Dans cette démo, nous allons importer quelques utilisateurs et ordinateurs pour nous entraîner. Attention, le plugin n’injecte pas tous les champs, seulement ceux disponibles lors de la création d’un modèle.
L’installation est possible soit en passant par le repo GitHub du plugin :
cd /tmp
sudo wget <https://github.com/pluginsGLPI/datainjection/releases/download/2.14.1/glpi-datainjection-2.14.1.tar.bz2>
tar -xvjf glpi-datainjection-2.14.1.tar.bz2 -C /var/www/html/glpi/plugins/
Puis activer le plugin comme expliqué ci-dessous.
Ou l’installation est aussi possible en passant par le marketplace de GLPI:
- Se rendre dans Configuration → Plugins

- Puis dans Marketplace

- S’enregistrer sur le GLPI Network pour ainsi récupérer une clef d’enregistrement afin d’accéder au Marketplace


En se connectant, se rendre sur Enregistrement puis récupérer sa clef d’enregitrement

- Entrer sa clef d’enregistrement juste ici

- Retourner comme précédemment sur la partie MarketPlace puis chercher et installer Data Injection
Et ne pas oublier d’activer Data Injection

On retrouvera le plugin dans Outils → Data Injection
Cependant, avant d’injecter des données, il faut donner des modèles au plugin. Pour effectuer ceci, il faudra cliquer sur l’icone ci-dessous :

Puis dans Ajouter
Configuration des informations nécessaires pour le modèle en cours de création:

Un exemple de fichier CSV :
Puis faire correspondre les éléments du CSV avec les éléments de GLPI
Puis injecter les données comme ceci
Et en vérifiant, cela donne ceci :