Skip to main content

Installation de GLPI

Récupération des binaires 

 Récupérer GLPI sur le github officiel : https://github.com/glpi-project/glpi/releases 

curl -OL https://github.com/glpi-project/glpi/releases/download/9.4.6/glpi-9.4.6.tgz 
tar -xvf glpi-9.4.6.tgz -C /var/www/ 
chown -R www-data:www-data /var/www/glpi/ 

Apache

Création d’un certificat auto signé 

mkdir -p /etc/ssl/localcerts 
openssl req -new -x509 -days 365 -nodes -out /etc/ssl/localcerts/apache.pem -keyout /etc/ssl/localcerts/apache.key 
chmod 600 /etc/ssl/localcerts/apache* 

Le GLPI n'est accessible que sur le réseau interne, le certificat auto signé est intégré dans l'AD.
Si le GLPI est accessible, utiliser Let's Encrypt

Création du vhost SSL 

Editer le fichier /etc/apache2/sites-available/new.glpi.local.conf

<VirtualHost *:80> 
    #Redirection du flux TCP 80 vers TCP 443 

    ServerName glpi.local 
    ServerAlias *.glpi.local 

    RewriteEngine On 
    RewriteRule ^(.*)$ https://%{HTTP_HOST}$1 [R=301,L] 

</VirtualHost> 
	<VirtualHost *:443> 
	    ServerName glpi.local 
        ServerAlias *.glpi.local 
		ServerAdmin webmaster@localhost 
        
        DocumentRoot /var/www/glpi 
         <Directory /var/www/glpi> 
              Options -Indexes +FollowSymLinks 
              AllowOverride All 
              Require all granted 
         </Directory> 

    # Paramètres SSL 
    SSLEngine on 
    SSLCertificateFile /etc/ssl/localcerts/apache.pem 
    SSLCertificateKeyFile /etc/ssl/localcerts/apache.key 

    SSLProtocol all -SSLv2 -SSLv3 
    SSLHonorCipherOrder on 
    SSLCompression off 
    SSLOptions +StrictRequire 
    SSLCipherSuite ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:DHE-DSS-AES128-GCM-SHA256:kEDH+AESGCM:ECDHE-RSA$    Header always set Strict-Transport-Security "max-age=31536000; includeSubDomains" 
 
	# Log
    LogLevel warn 
    ErrorLog ${APACHE_LOG_DIR}/*.glpi.local-error.log 
    CustomLog ${APACHE_LOG_DIR}/*.glpi.local-access.log combined 
</VirtualHost> 

Mod à activer

a2enmod rewrite 
a2enmod ssl  

Activer le vhost

a2ensite new.glpi.local.conf 
a2dissite 000-default.conf 

Contrôle de la configuration 

apache2ctl configtest 

Si ce message d’erreur apparaît : 

Invalid command 'Header', perhaps misspelled or defined by a module not included in the server configuration 
Action 'configtest' failed. 

Exécuter la commande suivante

cp -arp /etc/apache2/mods-available/headers.load  /etc/apache2/mods-enabled/headers.load

Relancer Apache

systemctl restart apache2 

Installation & mise à jour

Migration de la DB en innodb

cd /var/www/glpi/ 
php bin/console glpi:migration:myisam_to_innodb