Skip to main content

Installation GLPI 10.0x sur Debian 11

Serveur LAMP d’installer

apt update && apt full-upgrade -y

Installation PHP

apt install php-mysqli php-mbstring php-curl php-gd php-simplexml php-intl php-ldap php-apcu php-xmlrpc php-cas php-zip php-bz2 php-ldap php-imap -y

Installation de MariaDB

apt install mariadb-server -y

On démarre l'installation :

mysql_secure_installation

Il va demander le mot de passe de Root

Enter current password for root (enter for none):

Une série de questions vont s'afficher. On définit le mot de passe root :

Switch to unix_socket authentication [Y/n] Y
Change the root password? [Y/n] Y 
New password:
Re-enter new password: 
Password updated successfully!

On supprime les utilisateurs anonymes, les connexions distantes de root, etc...

Remove anonymous users? [Y/n] Y
Disallow root login remotely? [Y/n] Y 
Remove test database and access to it? [Y/n] Y 
Reload privilege tables now? [Y/n] Y

Une fois MySQL/MariaDB installé, il ne faut pas oublier de créer la base de données.

Et l’utilisateur ainsi que ces droits.

mysql -u root -p
CREATE USER 'xxxxx'@'localhost' IDENTIFIED BY 'yyyyyyy';

xxxxx ça sera un nom d'user

yyyyy ça sera le mot de passe

CREATE DATABASE glpi_bd;
GRANT ALL privileges ON `glpi_bd`.* TO 'xxxxxx'@localhost;
FLUSH PRIVILEGES;

Avant de sortir vérification de la création de la base

show databases;
Exit;

On peut s'assurer que le service se lance à chaque démarrage du serveur :

systemctl enable mariadb

Installation GLPI

Bien copier le bon lien sur le github : https://github.com/glpi-project/glpi/releases et prendre le lien 

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

Extraction attention au numéro de version

tar -xvzf glpi-10.0.x.tgz

Maintenant que les sources sont décompressées, on les déplace dans le répertoire

/var/www/html/ et on applique le groupe “www-data” au répertoire.

cp -Rf glpi/ /var/www/html/glpi
chown -R www-data:www-data /var/www/html/glpi

Avant de se lancer dans l’installation même de GLPI, une dernière manipulation facultative mais utile : sécuriser l’accès au répertoire qui va contenir GLPI sur la machine. On va en fait refuser l’indexation des fichiers de configuration de GLPI dans un navigateur web.

Pour cela, il faut créer une copie de 000-default.conf dans

cd /etc/apache2/sites-available/
cp 000-default.conf glpi.conf

Ensuite désactiver le fichier par défaut

a2dissite 000-default.conf
nano /etc/apache2/sites-available/glpi.conf

A la ligne DocumentRoot ajouter à la fin glpi

Et sous cette ligne, ajoutez les lignes suivantes en respectant l’indentation :

DocumentRoot /var/www/html/glpi
<Directory /var/www/html/glpi>
Options Indexes FollowSymLinks
AllowOverride All
Require all granted
</Directory>

Vous aurez un fichier qui ressemblera à ceci :

<VirtualHost *:80>
       # The ServerName directive sets the request scheme, hostname and port that
       # the server uses to identify itself. This is used when creating
       # redirection URLs. In the context of virtual hosts, the ServerName
       # specifies what hostname must appear in the request's Host: header to
       # match this virtual host. For the default virtual host (this file) this
       # value is not decisive as it is used as a last resort host regardless.
       # However, you must set it for any further virtual host explicitly.
       #ServerName www.example.com

       ServerAdmin webmaster@localhost
       DocumentRoot /var/www/html/glpi
       <Directory /var/www/html/glpi>
       Options Indexes FollowSymLinks
       AllowOverride All
       Require all granted
       </Directory>

       # Available loglevels: trace8, ..., trace1, debug, info, notice, warn,
       # error, crit, alert, emerg.
       # It is also possible to configure the loglevel for particular
       # modules, e.g.
       #LogLevel info ssl:warn

       ErrorLog ${APACHE_LOG_DIR}/glpi_error.log
       CustomLog ${APACHE_LOG_DIR}/glpi_access.log combined

       # For most configuration files from conf-available/, which are
       # enabled or disabled at a global level, it is possible to
       # include a line for only one particular virtual host. For example the
       # following line enables the CGI configuration for this host only
       # after it has been globally disabled with "a2disconf".
       #Include conf-available/serve-cgi-bin.conf
</VirtualHost>

# vim: syntax=apache ts=4 sw=4 sts=4 sr noet

On n’oubli pas d’activer le fichier de configuration que l’on vient de créer avec la commande

suivante :

a2ensite glpi.conf

Redémarrage apache2

systemctl reload apache2

Aller dans

/etc/php/*.*/apache2

*.*   version du php

nano php.ini

Et à la ligne session.cookie_httponly rajouter on

Voir adresse IP pour continuer sur le nav Web

ip a

Ensuite nav Web avec l’adresse IP et /glpi pour continuer l’installation.

Pour supprimer le fichier index.html :

rm /var/www/html/index.html

Pour supprimer le fichier install.php :

rm /var/www/html/glpi/install/install.php