Applications
📚 GLPI Installation Debian 12 — Guide Complet
Guide complet d'installation de GLPI 10 (Gestion Libre de Parc Informatique) sur Debian 12 Bookworm. GLPI gère les tickets helpdesk, l'inventaire matériel/logiciel et le parc informatique.
Prérequis
| Composant | Version recommandée |
|---|---|
| Système d'exploitation | Debian 12 Bookworm (installation minimale) |
| RAM | Minimum 2 Go — recommandé 4 Go |
| PHP | 8.2 (8.1 également supporté) |
| Base de données | MariaDB 10.6+ ou MySQL 8.0+ |
| Serveur web | Apache 2.4 avec mod_rewrite |
| GLPI | 10.x — vérifier github.com/glpi-project/glpi |
Étape 1 — Mise à jour et paquets de base
01-preparation.sh
# Mise à jour complète du système apt update && apt upgrade -y apt install -y curl wget git unzip apt-transport-https ca-certificates
Étape 2 — Apache + PHP 8.2 + Extensions GLPI
02-apache-php.sh
apt install -y apache2 # Toutes les extensions PHP requises par GLPI 10 apt install -y php8.2 php8.2-mysql php8.2-mbstring php8.2-curl \ php8.2-gd php8.2-xml php8.2-zip php8.2-intl php8.2-bz2 \ php8.2-ldap php8.2-imap php8.2-apcu php8.2-xmlrpc \ libapache2-mod-php8.2 # Activer les modules Apache nécessaires a2enmod rewrite headers ssl systemctl enable --now apache2 # Vérification php -v && apache2ctl -v
Étape 3 — Paramètres PHP optimisés pour GLPI
03-php-config.sh
PHP_INI=/etc/php/8.2/apache2/php.ini sed -i 's/memory_limit = .*/memory_limit = 256M/' $PHP_INI sed -i 's/upload_max_filesize = .*/upload_max_filesize = 20M/' $PHP_INI sed -i 's/post_max_size = .*/post_max_size = 20M/' $PHP_INI sed -i 's/max_execution_time = .*/max_execution_time = 600/' $PHP_INI sed -i 's/session.cookie_httponly.*/session.cookie_httponly = On/' $PHP_INI sed -i 's|;date.timezone.*|date.timezone = Europe/Paris|' $PHP_INI systemctl restart apache2
Étape 4 — MariaDB : Créer la base GLPI
04-mariadb.sh
apt install -y mariadb-server mariadb-client mysql_secure_installation # Connexion en root pour créer la base mysql -u root -p # Dans le prompt MariaDB : CREATE DATABASE glpi CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; CREATE USER 'glpi_user'@'localhost' IDENTIFIED BY 'GlpiP@ssw0rd!'; GRANT ALL PRIVILEGES ON glpi.* TO 'glpi_user'@'localhost'; FLUSH PRIVILEGES; EXIT; # Optimisation MariaDB pour GLPI cat >> /etc/mysql/mariadb.conf.d/50-server.cnf << EOF [mysqld] innodb_buffer_pool_size = 256M innodb_file_per_table = ON EOF # Charger les fuseaux horaires (requis par GLPI) mysql_tzinfo_to_sql /usr/share/zoneinfo | mysql -u root -p mysql systemctl restart mariadb
Étape 5 — Téléchargement et installation GLPI
05-glpi-install.sh
# Télécharger GLPI (vérifier la dernière version sur GitHub)
GLPI_VERSION=10.0.17
wget https://github.com/glpi-project/glpi/releases/download/${GLPI_VERSION}/glpi-${GLPI_VERSION}.tgz -O /tmp/glpi.tgz
tar -xzf /tmp/glpi.tgz -C /var/www/html/
# Bonne pratique GLPI 10 : déplacer données sensibles hors webroot
mkdir -p /var/lib/glpi/{files,log,config}
mkdir -p /var/log/glpi
mv /var/www/html/glpi/files /var/lib/glpi/
mv /var/www/html/glpi/config /var/lib/glpi/
# Fichier de redirection vers les nouveaux chemins
cat > /var/www/html/glpi/config/local_define.php << 'EOF'
<?php
define('GLPI_VAR_DIR', '/var/lib/glpi/files');
define('GLPI_LOG_DIR', '/var/log/glpi');
define('GLPI_CONFIG_DIR', '/var/lib/glpi/config');
EOF
# Permissions correctes
chown -R www-data:www-data /var/www/html/glpi /var/lib/glpi /var/log/glpi
chmod -R 755 /var/www/html/glpi
chmod -R 775 /var/lib/glpi /var/log/glpiÉtape 6 — VirtualHost Apache
/etc/apache2/sites-available/glpi.conf
<VirtualHost *:80>
ServerName glpi.entreprise.local
DocumentRoot /var/www/html/glpi/public
<Directory /var/www/html/glpi/public>
Options -Indexes +FollowSymLinks
AllowOverride All
Require all granted
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ index.php [QSA,L]
</Directory>
ErrorLog ${APACHE_LOG_DIR}/glpi_error.log
CustomLog ${APACHE_LOG_DIR}/glpi_access.log combined
</VirtualHost>activation Apache
a2ensite glpi.conf a2dissite 000-default.conf apache2ctl configtest # Vérifier la syntaxe systemctl reload apache2
Étape 7 — Installation en ligne de commande
07-glpi-setup.sh
cd /var/www/html/glpi php bin/console db:install \ --db-host=localhost \ --db-name=glpi \ --db-user=glpi_user \ --db-password='GlpiP@ssw0rd!' \ --no-interaction # OBLIGATOIRE : supprimer le dossier install après l'installation ! rm -rf /var/www/html/glpi/install/ # Cron GLPI — tâches automatiques toutes les 2 minutes echo "*/2 * * * * www-data php /var/www/html/glpi/front/cron.php" > /etc/cron.d/glpi
Sécurité critique : Supprimer obligatoirement le dossier
/var/www/html/glpi/install/ après l'installation. Le laisser accessible permet à n'importe qui de réinitialiser GLPI.Étape 8 — Première connexion & configuration
1
Accéder à GLPI
Ouvrir
http://glpi.entreprise.local. Compte administrateur par défaut : glpi / glpi.2
Changer les mots de passe par défaut
Administration → Utilisateurs. Modifier impérativement glpi, tech, normal, post-only. Ces comptes sont publiquement connus.
3
Configurer l'entité et la langue
Administration → Entités → Entité racine — définir pays, langue française, fuseau horaire Europe/Paris.
4
Configurer les notifications email
Configuration → Notifications → Suivis par courriels — renseigner le serveur SMTP pour les alertes de tickets.
5
Installer GLPI Agent (inventaire automatique)
Déployer
glpi-agent sur les postes Windows et Linux. Il remonte automatiquement le matériel, les logiciels et les mises à jour manquantes.Sécurisation post-installation
08-securisation.sh
# SSL Let's Encrypt (si accessible depuis internet)
apt install -y certbot python3-certbot-apache
certbot --apache -d glpi.exemple.com
# Ou certificat auto-signé pour usage interne
openssl req -x509 -nodes -days 3650 -newkey rsa:2048 \
-keyout /etc/ssl/private/glpi.key \
-out /etc/ssl/certs/glpi.crt \
-subj "/CN=glpi.entreprise.local/O=MonEntreprise/C=FR"
# Firewall : n'autoriser que HTTP et HTTPS
ufw allow 80/tcp && ufw allow 443/tcp && ufw enable
# Sauvegarde automatique de la base GLPI
cat > /usr/local/bin/backup-glpi.sh << 'EOF'
#!/bin/bash
DATE=$(date +%Y%m%d_%H%M)
mysqldump -u glpi_user -p'GlpiP@ssw0rd!' glpi | gzip > /backup/glpi_${DATE}.sql.gz
find /backup -name "glpi_*.sql.gz" -mtime +30 -delete
EOF
chmod +x /usr/local/bin/backup-glpi.sh
echo "0 2 * * * root /usr/local/bin/backup-glpi.sh" > /etc/cron.d/glpi-backupPour l'inventaire automatique des postes, installer GLPI Agent (successeur de FusionInventory) sur les clients Windows et Linux. Il remonte matériel, logiciels, mises à jour manquantes et déploiements directement dans GLPI.
Ressources officielles GLPI
GLPI Project
Site officiel et téléchargement GLPI
GLPI GitHub Releases
Dernières versions stables GLPI
GLPI Documentation
Documentation officielle d'installation et configuration
GLPI Agent
Agent d'inventaire automatique (Windows/Linux)
GLPI Marketplace
Plugins officiels (Formcreator, OCS, etc.)
Forum GLPI
Communauté francophone d'entraide
Ajouter Les Fibrés à mes sources préférées
Retrouvez plus souvent nos guides dans vos résultats Google