Sécurité de GLPI : Hardening et Bonnes Pratiques

Checklist complet de sécurité pour GLPI en production : dossier public, en-têtes HTTP, TLS, permissions, mises à jour, supervision et hardening.

GLPI en production sans hardening est une cible facile. Ce checklist couvre les points de sécurité critiques que tout administrateur doit vérifier.

Checklist de sécurité

1. DocumentRoot dans le dossier public

Le serveur web (Apache/Nginx) doit pointer vers /var/www/glpi/public, et non vers /var/www/glpi. Sans cela, les fichiers internes sont accessibles via l'URL.

2. Supprimer les fichiers d'installation

rm -f /var/www/glpi/install/install.php

3. Changer les mots de passe par défaut

Changez immédiatement les mots de passe de : glpi, tech, normal, post-only. Envisagez de désactiver les comptes non utilisés.

4. HTTPS obligatoire

Configurez SSL/TLS et redirigez HTTP vers HTTPS. Utilisez Let's Encrypt pour des certificats gratuits.

5. En-têtes de sécurité

Header set X-Content-Type-Options "nosniff"
Header set X-Frame-Options "SAMEORIGIN"
Header set X-XSS-Protection "1; mode=block"
Header set Strict-Transport-Security "max-age=31536000; includeSubDomains"
Header set Content-Security-Policy "default-src 'self'"

6. Permissions des répertoires

  • /var/www/glpi : lecture pour www-data
  • /var/lib/glpi : lecture+écriture pour www-data
  • /etc/glpi : lecture pour www-data, sans accès web
  • /var/log/glpi : écriture pour www-data, sans accès web

7. Rester à jour

Appliquez les correctifs de sécurité dès leur disponibilité. Utilisez le module CVE Scan pour surveiller les vulnérabilités.

8. Sauvegarde et plan de DR

Consultez notre guide de sauvegarde et de reprise après sinistre.

9. Supervision

Supervisez GLPI avec Zabbix ou Grafana : disponibilité, performances, erreurs d'authentification (tentatives de force brute).

10. Authentification forte

Mettez en place le SSO avec Azure AD + MFA. Désactivez le login local pour les utilisateurs qui utilisent le SSO.

Questions fréquentes

Les plus courantes sont : les fichiers d'installation non supprimés, le dossier public non configuré comme DocumentRoot, les identifiants par défaut non modifiés et une version obsolète avec des CVEs connus.

Depuis GLPI 10, le DocumentRoot du serveur web doit pointer vers /var/www/glpi/public (pas /var/www/glpi). Cela empêche l'accès direct aux fichiers internes de GLPI.

Le module CVE Scan de NexTool vérifie automatiquement les CVEs de la version installée et audite 17 points de sécurité de l'environnement.

Pas nativement dans le core. Des plugins comme MFA (TICGAL) ajoutent l'authentification multifacteur via TOTP. Alternativement, utilisez le SSO avec Azure AD/Okta qui intègre déjà le MFA.

Besoin d'aide ?