L’installation de GLPI sur Debian 12, pilotée par Nginx, constitue une alliance de choix pour optimiser la gestion de parc informatique sans sacrifier les performances. Ce tutoriel s’adresse à ceux qui préfèrent la puissance et la légèreté d’un serveur web en mode ligne de commande, sans passer par une interface graphique classique. Fonctionnant en arrière-plan, GLPI devient un outil redoutable pour organiser, inventorier et suivre les ressources IT d’une entreprise. Sans se perdre dans des configurations complexes, découvrez comment déployer cette solution open source avec rigueur et clarté. Le duo Debian 12 et Nginx favorise une efficacité accrue, tandis que le script d’installation intelligent automatise l’essentiel tout en laissant place à la personnalisation.
L’article en bref
Optimizez la gestion IT en installant GLPI sur Debian 12 avec Nginx. Ce guide complet et sans interface graphique vous accompagne pas à pas vers une solution performante et adaptée aux professionnels exigeants.
- Préparation de l’environnement server : Adaptation du serveur Nginx et création des vhosts dédiés GLPI
- Scripts et automatisation : Installation et configuration de GLPI avec PHP 8.2, MariaDB et gestion entièrement en ligne de commande
- Optimisation des performances : Utilisation de PHP-APCU et ajustement des paramètres PHP pour accélérer GLPI sous Nginx
- Gestion sécurisée : Configuration des permissions, base de données et bonnes pratiques post-installation
Préparez-vous à dompter GLPI pour transformer votre gestion IT en un atout stratégique puissant.
Configurer un serveur Nginx efficace pour héberger GLPI sur Debian 12
Choisir Nginx comme serveur web pour GLPI sous Debian 12, c’est miser sur la rapidité et la légèreté. Contrairement à Apache, Nginx demande une architecture rigoureuse, particulièrement autour des vhosts. Ces hôtes virtuels facilitent la gestion de plusieurs sites ou applications sur une même machine, isolent les configurations et maximisent les ressources.
Commencez par structurer vos dossiers :
- /home/www-data/glpi/public_html pour les fichiers web de GLPI
- /home/www-data/glpi/log pour les logs d’accès et erreurs
La propriété de ces dossiers doit être confiée à www-data, garantissant que Nginx dispose des droits nécessaires. La configuration du vhost Nginx est ensuite essentielle, avec un fichier dédié nommé glpi.conf dans /etc/nginx/sites-available/.
| Elément clé | Chemin ou configuration | Description |
|---|---|---|
| Dossier public GLPI | /home/www-data/glpi/public_html | Emplacement des fichiers web GLPI, accessible par Nginx |
| Logs Nginx | /home/www-data/glpi/log/access.log | Stockage des logs d’accès et erreurs pour analyse |
| Configuration vhost | /etc/nginx/sites-available/glpi.conf | Fichier de configuration dédié à GLPI |
Une fois la configuration validée avec sudo nginx -t, pensez à recharger Nginx pour appliquer les changements. Cette organisation claire est la première pierre pour une installation robuste et facile à gérer.
Personnaliser et sécuriser la configuration Nginx pour GLPI
Le fichier de configuration vhost doit intégrer des directives précises pour interpréter correctement les fichiers PHP et gérer les erreurs serveur. Voici les points stratégiques :
- Définition du root pointant vers /home/www-data/glpi/public_html
- Index par défaut priorisant index.php, pour une prise en charge correcte des scripts
- Gestion des erreurs 500 à 504 avec redirection vers une page statique d’erreur
- Bloc location ~ .php$ configuré pour le socket PHP-FPM adéquat (adapter la version de PHP utilisée)
Ces éléments garantiront que les requêtes sont bien traitées, et que les erreurs sont consignées avec soin, éléments indispensables pour le suivi et la maintenance.
Automatiser l’installation de GLPI avec un script Bash sur Debian 12
La complexité d’une installation manuelle peut vite décourager. C’est ici qu’un script Bash bien conçu simplifie la vie. Basé sur Debian 12, ce script automatise :
- La mise à jour complète du système
- L’ajout du dépôt PHP Sury pour accéder à PHP 8.2
- L’installation de MariaDB et de toutes les extensions PHP nécessaires à GLPI
- La création de la base de données et de l’utilisateur glpi avec droits dédiés
- Le téléchargement des fichiers GLPI depuis GitHub, garantissant d’utiliser la dernière version stable
- Le déplacement des données hors du webroot, notamment vers /var/lib/glpi
- La configuration et le redémarrage des différents services
Pour exploiter le script, après son téléchargement, il suffit de rendre le fichier exécutable avec chmod +x install-glpi.sh, et de le lancer en root avec sudo ./install-glpi.sh. Concrètement, c’est un gain de temps considérable et une garantie contre les oublis fréquents.
Variables personnalisables dans le script pour s’adapter à votre environnement
Le script reste flexible malgré son automatisation, avec un haut de fichier listant des variables modifiables :
- DB_NAME : nom de la base de données GLPI
- DB_USER et DB_PASS : utilisateur et mot de passe dédiés à la base
- GLPI_DIR : chemin d’installation des fichiers GLPI dans le webroot
- GLPI_DATA_DIR : emplacement des données sensibles hors accès web
- PHP_VERSION : version de PHP à utiliser (ici 8.2)
- APACHE_USER : utilisateur serveur web, ici www-data (utile pour permissions)
Une configuration adaptée dès le départ, c’est un environnement stable et conforme à vos besoins spécifiques.
Optimisez la performance de GLPI avec PHP-APCU et paramètres personnalisés PHP
Un serveur ne fait pas tout si son environnement PHP n’est pas optimisé. Le module PHP-APCU joue un rôle majeur dans la rapidité : il stocke en RAM certains résultats des requêtes, évitant ainsi les accès répétitifs à la base. GLPI exploite cette cache pour accélérer le chargement.
L’installation est simple avec la commande :
sudo apt install php-apcu
Ensuite, le redémarrage du service PHP est nécessaire pour prendre en compte la modification. Du côté de Nginx, ajuster la configuration du vhost pour augmenter la mémoire allouée à PHP ainsi que la taille maximale des fichiers uploadés s’avère indispensable :
| Paramètre PHP | Valeur recommandée | Impact sur GLPI |
|---|---|---|
| memory_limit | 256M | Permet à GLPI de manipuler davantage de ressources simultanément |
| post_max_size | 128M | Autorise des chargements de données plus volumineux, utile pour les imports |
| upload_max_filesize | 32M | Augmente la taille maximale des fichiers joints dans GLPI |
Un service rechargé (sudo systemctl reload nginx et sudo systemctl restart php8.2-fpm) permettra la prise en compte de ces réglages qui boosteront la réactivité de votre portail GLPI.
Vérifier et ajuster le nombre de processus Nginx pour une gestion optimale
La directive worker_processes dans /etc/nginx/nginx.conf doit correspondre au nombre de cœurs disponibles. Une mauvaise configuration entraîne une sous-utilisation des ressources ou un engorgement du serveur, ralentissant la gestion de parc informatique.
Sur une machine virtuelle, ce paramètre peut évoluer selon la puissance allouée : adaptez-le et redémarrez Nginx pour que la performance serve au mieux GLPI.
Les étapes clés pour finaliser et sécuriser votre installation GLPI sur Debian 12
Une fois l’installation terminée, il est capital d’appliquer quelques bonnes pratiques :
- Supprimer le dossier install pour éviter tout risque de réinstallation accidentelle
- Accorder uniquement les permissions nécessaires sur les dossiers de GLPI, surtout sur le répertoire des données
- Configurer les accès sécurisés au vhost, notamment en HTTPS (via Certbot par exemple)
- Mettre en place un système de sauvegarde régulier de la base et des fichiers, pour garantir la pérennité du service
Ces étapes, bien que souvent négligées, définissent la robustesse et la fiabilité de votre outil de gestion de parc informatique.
Configurer la base de données MariaDB pour GLPI depuis la ligne de commande
Pour ceux qui évitent les interfaces graphiques, la création de la base et de l’utilisateur MariaDB se fait en ligne de commande :
- Se connecter au serveur MariaDB :
sudo mysql -u root -p
- Créer la base de données :
CREATE DATABASE glpi CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;
- Créer un utilisateur avec un mot de passe :
CREATE USER 'glpiuser'@'localhost' IDENTIFIED BY 'glpipassword';
- Attribuer tous les privilèges à cet utilisateur sur la base :
GRANT ALL PRIVILEGES ON glpi.* TO 'glpiuser'@'localhost';
- Appliquer les modifications :
FLUSH PRIVILEGES;
Un travail propre côté base de données garantit la stabilité et la sécurité globale de GLPI.
Pourquoi choisir Nginx plutôt qu’Apache pour GLPI ?
Nginx est plus performant en termes de consommation de ressources et de rapidité sous Debian 12, surtout dans un contexte sans interface graphique où la légèreté est clé.
Le script d’installation automatise-t-il toutes les configurations ?
Le script automatise les principales étapes, mais il est recommandé de personnaliser certains paramètres comme les droits d’accès ou la configuration SSL selon votre contexte.
Est-il possible d’utiliser une version de PHP différente ?
Oui, le script et la configuration Nginx permettent d’adapter la version PHP, comme PHP 8.1 ou 8.3, selon vos préférences et compatibilités.
Comment sécuriser l’accès à GLPI après installation ?
Supprimez le dossier install, configurez HTTPS via Certbot, limitez les permissions aux seuls utilisateurs nécessaires et mettez en place une politique de sauvegarde régulière.




