tuto installation glpi 11 sur debian
  • 4 décembre 2025
  • ComputaSYS
  • 0


I. Présentation

Dans ce tutoriel, nous allons effectuer une installation pas-à-pas de GLPI 11 sur une machine Debian 13. Cette installation s’appuiera sur une stack LAMP : Linux, Apache2, PHP 8.4 (PHP-FPM) et MariaDB Server.

GLPI est un logiciel libre de gestion de parc informatique permettant d’avoir une solution de ticketing gratuite pour le support informatique, de gérer l’inventaire des équipements, notamment les ordinateurs et les téléphones, de gérer ses contrats, ses licences, ses consommables, ses baies serveurs, etc…. Créé en 2003, GLPI est une solution populaire utilisée par des milliers d’entreprises et maintenue par un éditeur français nommé Teclib.

Depuis plusieurs années, Teclib propose une souscription sous l’appellation GLPI Network, accessible pour les installations sur site ou en tant que solution sur SaaS (Cloud). Elle offre plusieurs avantages comme l’accès à des plugins supplémentaires et un support de niveau 3. L’occasion de préciser aussi que cela contribue à financer les évolutions de ce projet open source. En effet, GLPI est gratuit depuis ses débuts et il l’est encore aujourd’hui : vous pouvez l’héberger sur votre serveur, que ce soit pour vos besoins internes ou pour vos clients, notamment pour la gestion des tickets de support.

Ce tutoriel est basé sur GLPI 11, la dernière version majeure disponible depuis le 1er octobre 2025. Elle succède à GLPI 10, qui avait été publié en avril 2022.

Si vous souhaitez mettre à jour GLPI plutôt que de réaliser une nouvelle installation, suivez plutôt ce tutoriel :

II. Prérequis de GLPI

Avant d’évoquer l’installation, parlons des prérequis. GLPI a besoin d’un serveur Web, de PHP et d’une base de données pour fonctionner. Bien que l’installation de GLPI soit possible sur Windows Server via IIS, l’installation sur Linux est recommandée. D’une façon générale, GLPI supporte plusieurs serveurs Web : Apache2, Nginx, lighttpd et IIS.

Pour le reste, voici ce que vous devez savoir avant de procéder à l’installation de GLPI 11 :

Version de PHP : au minimum PHP 8.2 pour GLPI 11.

Base de données

MySQL 8.0 minimum

MariaDB 10.6 minimum

Il y aura également plusieurs extensions PHP à installer pour que GLPI puisse fonctionner. Pour cette démonstration, nous allons utiliser une machine sous Debian 13 et nous allons installer dessus Apache2, PHP 8.4 ainsi que MariaDB (dernière version disponible dans les dépôts Debian).

Si vous avez besoin de précisions supplémentaires, vous pouvez consulter la documentation officielle :

Note : GLPI est aussi disponible sous la forme d’images Docker, ouvrant la porte à l’exécution sous la forme de conteneurs. Ces images représentent une nouveauté 2025 et elles sont disponibles pour les versions GLPI 10 et GLPI 11. À ce sujet, vous pouvez consulter le Docker Hub.

III. Préparer le serveur pour installer GLPI

Commençons par l’installation par une mise à jour des paquets sur la machine Debian 13. Pensez également à lui attribuer une adresse IP, un nom d’hôte (avec un enregistrement DNS pour votre application) et à effectuer la configuration du système.

La suite des opérations s’effectue directement depuis le Terminal :

sudo apt-get update && sudo apt-get upgrade

A. Installer le socle LAMP

La première grande étape consiste à installer les paquets du socle LAMP : Linux Apache2 MariaDB PHP. Sous Debian 13 Trixie, qui est la dernière version majeure stable de Debian, PHP 8.4 est distribué par défaut dans les dépôts officiels. Il est à noter que l’intégration de PHP sera effectuée via PHP-FPM plutôt que l’extension PHP pour Apache, pour des raisons de performance.

Commençons par installer les trois paquets principaux :

sudo apt-get install apache2 php8.4-fpm mariadb-server

Puis, nous allons installer toutes les extensions nécessaires au bon fonctionnement de GLPI et qui ne sont pas intégrées au paquet php8.4-common.

sudo apt install php8.4-{curl,gd,intl,mysql,zip,bcmath,mbstring,xml,bz2}

En comparaison de GLPI 10, la version 11 impose des extensions PHP supplémentaires : bcmath, mbstring et openssl.

Voici, à titre d’information, le rôle de chaque extension installée :

curl : utilisée pour accéder à des ressources distantes (marketplace, flux RSS, etc.).

gd : permet la manipulation et la génération d’images.

intl : fournit les fonctions d’internationalisation (formats, locale, conversions…).

mysql : gère la connexion et les opérations avec une base de données MySQL/MariaDB.

zlib : nécessaire pour la compression/décompression, notamment pour les paquets gzip du marketplace et la génération de PDF.

bcmath : utilisé pour générer des QR codes (calculs de précision arbitraire).

mbstring : indispensable pour la gestion des chaînes de caractères multioctets (UTF-8, conversions, compatibilité internationale).

xml (inclut dom, simplexml, xmlreader, xmlwriter) : fournit les outils nécessaires au traitement XML utilisés par diverses fonctions de l’application.

openssl : permet la communication chiffrée (connexion HTTPS, authentification OAuth 2.0, etc.).

bz2 : pour le bon fonctionnement de la marketplace.

Ces commandes vont permettre de récupérer les versions de ces extensions pour PHP 8.4.

Si vous envisagez d’associer GLPI avec un annuaire LDAP comme l’Active Directory, vous devez installer l’extension LDAP de PHP. Sinon, ce n’est pas nécessaire et vous pouvez le faire par la suite, si besoin.

sudo apt install php8.4-ldap

Note : l’extension exif est également recommandée pour améliorer la sécurité du processus de validation des images. Elle est directement intégrée au paquet php8.4-common. Aucune action supplémentaire n’est requise.

Nous venons d’installer Apache2, MariaDB, PHP et un ensemble d’extensions.

B. Préparer une base de données pour GLPI

Nous allons préparer MariaDB pour qu’il puisse héberger la base de données de GLPI. La première action à effectuer, c’est d’exécuter la commande ci-dessous pour effectuer le minimum syndical en matière de sécurisation de MariaDB.

sudo mariadb-secure-installation

# Si vous utilisez MySQL :
sudo mysql_secure_installation

Vous serez invité à changer le mot de passe root, mais aussi à supprimer les utilisateurs anonymes, désactiver l’accès root à distance, etc… Tout est bien expliqué. Voici un exemple sur mon serveur pour vous guider :

Ensuite, nous allons créer une base de données dédiée pour GLPI et celle-ci sera accessible par un utilisateur dédié. Hors de question d’utiliser le compte root de MariaDB : appliquons le principe de moindre privilège. Donc : une base de données = un utilisateur.

Connectez-vous à votre instance MariaDB :

sudo mysql -u root -p

Saisissez le mot de passe root de MariaDB, que vous venez de définir à l’étape précédente.

Puis, nous allons exécuter les requêtes SQL ci-dessous pour créer la base de données db25_glpi ainsi que l’utilisateur glpi_adm avec le mot de passe MotDePasseRobuste (que vous personnalisez, bien sûr). Cet utilisateur aura tous les droits sur cette base de données (et uniquement sur celle-ci).

CREATE DATABASE db25_glpi;
GRANT ALL PRIVILEGES ON db25_glpi.* TO glpi_adm@localhost IDENTIFIED BY “MotDePasseRobuste”;
FLUSH PRIVILEGES;
EXIT

Ce qui donne :

Voilà, la base de données est prête.

C. Télécharger GLPI

La prochaine étape consiste à télécharger l’archive “.tgz” qui contient les sources d’installation de GLPI. À partir du GitHub de GLPI, récupérez le lien vers la dernière version. Ici, c’est la version GLPI 11.0.4 qui est installée.

Note : je vous encourage vivement à prendre systématiquement la dernière version, et donc à consulter le GitHub de GLPI pour récupérer le lien de la dernière version, et ainsi, adapter la commande wget spécifiée ci-dessous (URL).

L’archive sera téléchargée dans le répertoire /tmp :

cd /tmp
wget https://github.com/glpi-project/glpi/releases/download/11.0.4/glpi-11.0.4.tgz

Puis, nous allons exécuter la commande ci-dessous pour décompresser l’archive .tgz dans le répertoire /var/www/, ce qui donnera le chemin d’accès /var/www/glpi pour GLPI.

sudo tar -xzvf glpi-11.0.4.tgz -C /var/www/

D. Préparer l’installation

Désormais, nous allons préparer l’installation de GLPI 11 via la création de plusieurs répertoires et la personnalisation des permissions.

Tout d’abord, nous allons définir l’utilisateur www-data correspondant à Apache2 (sur Debian/Ubuntu), en tant que propriétaire sur les fichiers GLPI.

sudo chown www-data /var/www/glpi/ -R

Ensuite, nous allons devoir créer plusieurs dossiers et sortir des données de la racine Web (/var/www/glpi) de manière à les stocker dans les nouveaux dossiers que nous allons créer. Ceci va permettre de faire une installation sécurisée de GLPI, qui suit les recommandations de l’éditeur.

Commencez par créer le répertoire /etc/glpi qui va recevoir les fichiers de configuration de GLPI. Nous donnons des autorisations à www-data sur ce répertoire car il a besoin de pouvoir y accéder.

sudo mkdir /etc/glpi
sudo chown www-data /etc/glpi/

Puis, nous allons déplacer le répertoire sensible config de GLPI vers ce nouveau dossier :

sudo mv /var/www/glpi/config /etc/glpi

Le répertoire /var/lib/glpi

Répétons la même opération avec la création du répertoire /var/lib/glpi :

sudo mkdir /var/lib/glpi
sudo chown www-data /var/lib/glpi/

Dans lequel nous déplaçons également le dossier files qui contient la majorité des fichiers de GLPI : CSS, plugins, etc.

sudo mv /var/www/glpi/files /var/lib/glpi

Le répertoire /var/log/glpi

Terminons par la création du répertoire /var/log/glpi destiné à stocker les journaux de GLPI. Toujours sur le même principe :

sudo mkdir /var/log/glpi
sudo chown www-data /var/log/glpi

Nous n’avons rien à déplacer dans ce répertoire.

Créer les fichiers de configuration

Nous devons configurer GLPI pour qu’il sache où aller chercher les données. Autrement dit, nous allons déclarer les nouveaux répertoires fraichement créés. Nous allons créer ce premier fichier :

sudo nano /var/www/glpi/inc/downstream.php

Afin d’ajouter le contenu ci-dessous qui indique le chemin vers le répertoire de configuration :



Source link

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *