
In questo tutorial spiegherò come installare GLPI 11 su Linux (Ubuntu 24.04) con Apache2, PHP 8.3 in FPM e MariaDB.
GLPI 11 è una soluzione open source di IT Service Management (ITSM) che gestisce apparecchiature, utenti, ticket di incidente e richieste di servizio. Questa versione offre un’interfaccia modernizzata, una migliore usabilità e prestazioni migliorate. Integra in modo nativo strumenti di gestione progetti, knowledge base e inventario. GLPI 11 rafforza inoltre la sicurezza e facilita l’integrazione con altri sistemi tramite API REST.
Al momento della stesura del tutorial, GLPI 11 è ancora in versione Beta.
Sommario
Prerequisiti per l’implementazione di GLPI
Per eseguire GLPI sono necessari un server web e PHP. In questo tutorial, installeremo Apache2 e PHP direttamente sul server utilizzando i repository PPA, che ci consentiranno di disporre delle versioni più recenti di Apache2 e PHP.
Per quanto riguarda la parte del server del database, implementeremo un server MariaDB 11 utilizzando Docker.
A completamento di questo tutorial, spiegherò anche come configurare GLPI per utilizzare Redis come sistema di cache.
È necessario fornire anche un nome DNS come glpi.domain.tld.
Installa Docker e Docker Compose
Per iniziare, dovrai installare Docker e Docker Compose che useremo per il server del database e il server Redis. Ti invito a seguire prima questo tutorial: Ubuntu 24.04: Installazione di Docker e Docker Compose
Installa Apache2
Per iniziare, installeremo il server web Apache2 dal repository PPA for Apache 2.
Per iniziare, immettete il seguente comando:
sudo add-apt-repository ppa:ondrej/apache2
Aggiorna la cache dei pacchetti:
sudo apt update
Nello screenshot possiamo vedere che è stato interrogato il repository ondrej/apache2.
Avviare l’installazione di Apache2
sudo apt install apache2 -y
Attendi l’installazione…


Una volta installato Apache2, immettere il seguente comando per verificare che il servizio sia avviato:
sudo systemctl status apache2
Per funzionare, GLPI ha bisogno del modulo Rewrite. Ora lo attiveremo, inserendo il seguente comando:
sudo a2enmod rewriteRiavviare Apache2 per prendere in considerazione il modulo Rewrite.
sudo systemctl restart apache2Per testare il server web Apache2, apri un browser Internet e inserisci l’indirizzo IP del server (http://a.b.c.d) come URL. Dovresti visualizzare la seguente pagina:

Il server Apache2 è attivo e funzionante.
Installazione di PHP-FPM per GLPI
PHP è il linguaggio utilizzato sul lato server, per la generazione dinamica delle pagine ma anche per la gestione di tutta la parte di inventario e di varie attività automatiche tramite CRON.
Per motivi di “prestazioni” e di separazione dei servizi a livello del server web Apache2, installeremo PHP-FPM.
PHP-FPM (FastCGI Process Manager) è un potente metodo per eseguire codice PHP su un server web. Consente una migliore gestione dei processi PHP, una maggiore velocità di esecuzione e una riduzione del carico del server. PHP-FPM offre inoltre una maggiore stabilità, soprattutto in condizioni di traffico intenso, e consente una configurazione dettagliata (per sito o applicazione). È attualmente il metodo consigliato con Nginx ed è ampiamente utilizzato anche con Apache.
Come con Apache2, utilizzeremo il repository ppa:ondrej/php che ci consente di avere la versione più aggiornata di PHP 8.3 su Ubuntu.
Per iniziare, aggiungi il repository con il seguente comando:
sudo add-apt-repository ppa:ondrej/php
Una volta aggiunto il repository, immettere il seguente comando:
sudo apt updateOra installiamo PHP 8.3, digitando il seguente comando:
sudo apt install php8.3-fpm -y


Installa i componenti aggiuntivi PHP per GLPI 11:
sudo apt install php8.3-curl php8.3-gd php8.3-intl php8.3-mysql php8.3-bz2 php8.3-zip php8.3-apcu php8.3-cli php8.3-imap php8.3-mbstring php8.3-dom php8.3-simplexml php8.3-xmlreader php8.3-xmlwriter php8.3-bcmath php8.3-redis -ySe si prevede di connettere LDAP a un Active Directory, è necessario installare anche il modulo PHP ldap:
sudo apt install php8.3-ldap -yUna volta installato PHP, inizieremo attivando i moduli necessari per utilizzare PHP-FPM in Apache2, per fare ciò digitiamo il seguente comando:
sudo a2enmod proxy_fcgi setenvifRiavviare il servizio Apache2:
sudo systemctl restart apache2Ora, ci sono diversi modi per far comunicare Apache2 con PHP-FPM, essendo il server dedicato a GLPI con una sola versione di PHP, attiveremo la configurazione disponibile direttamente in Apache2, inserendo il seguente comando:
sudo a2enconf php8.3-fpmRiavviare nuovamente il servizio Apache2:
sudo systemctl restart apache2Testeremo l’installazione di PHP, per farlo creeremo un file PHP con la funzione phpinfo(); che restituirà le informazioni sull’installazione di PHP.
Crea il file:
sudo nano /var/www/html/phpinfo.phpNel file aggiungere le seguenti righe:
<?php
phpinfo();
?>
Quindi da un browser chiamato pagina phpinfo.php (http://a.b.c.d/phpinfo.php), dovresti avere questo:

Come si può vedere dall’API del server, PHP viene eseguito in modalità FPM/FastCGI.
Configurazione del contenitore MariaDB
L’ultimo elemento del nostro server necessario per eseguire GLPI 11 è il database. Come spiegato all’inizio di questo tutorial, utilizzeremo Docker per eseguire il database MariaDB per GLPI.
L’utilizzo di Docker ci permetterà di liberarci dai repository Ubuntu per il nostro database, il che consentirà anche aggiornamenti più rapidi. Ci sono altri vantaggi, ma esulano dallo scopo di questo tutorial.
Creare la cartella per l’archiviazione dei contenitori:
sudo mkdir /containers/mariadb-glpiVai alla cartella della cartella:
cd /containers/mariadb-glpiClonare il seguente repository che contiene i file di configurazione del contenitore per MariaDB:
sudo git clone https://git.rdr-it.com/docker/mariadb-or-mysql-container.git .Modifica il file .env
sudo nano .envEcco il contenuto che devi inserire (generare password):

Scarica l’immagine del contenitore:
sudo docker compose pull
Avviare il contenitore:
sudo docker compose up -d
Il server del database è pronto.
Scarica GLPI 11
Passeremo allo scaricamento di GLPI.
Prima di iniziare, crea la cartella che verrà utilizzata per ospitare i file GLPI:
sudo mkdir -p /var/www/glpiVai alla cartella home del tuo utente:
cdNella pagina: https://github.com/glpi-project/glpi/releases copiare l’URL dell’archivio (file tgz) dell’ultima versione disponibile di GLPI 11.
Scarica l’archivio:
wget https://github.com/glpi-project/glpi/releases/download/11.0.0-beta5/glpi-11.0.0-beta5.tgzScarica il file decomprimi l’archivio:
tar -xvzf glpi-11.0.0-beta5.tgzSpostare i file GLPI 11 nella cartella destinata ad Apache2:
sudo mv glpi/* /var/www/glpiUltimo passaggio: cambia il proprietario della cartella /var/www/glpi:
sudo chown www-data:www-data /var/www/glpi/ -RConfigurazione di virtualhost per GLPI 11 in Apache2
Ultimo passaggio con le righe di comando 😉 Configureremo il virtualhost in Apache2 per GLPI 11.
Vai alla cartella /etc/apache2/sites-available/
cd /etc/apache2/sites-available/Copia il file virtualhost predefinito:
sudo cp 000-default.conf glpi.confModifica il file:
nano glpi.confEcco il file virtualhost per GLPI 11, adatta ServerName con il record DNS che hai scelto.
Abilita virtualhost:
sudo a2ensite glpiRicarica la configurazione di Apache2
sudo systemctl reload apache2La configurazione a livello di server è completa.
Installa GLPI 11
Da un browser Internet, inserisci l’URL che hai scelto per GLPI, nella pagina che appare, clicca su Vai alla pagina di installazione 1.

Per prima cosa seleziona la lingua 1 e clicca sul pulsante OK 2.

Accettare la licenza cliccando su Continua 1.

Qui faremo una nuova installazione di GLPI 11, clicchiamo sul pulsante Installa 1.

Verificare che i prerequisiti ambientali siano soddisfatti, quindi fare clic sul pulsante Continua 1 in fondo alla pagina.


Configurare le informazioni di connessione al database 1 (Server, Utente e Password) e fare clic sul pulsante Continua 2.

La connessione al server MariaDB che si trova in un contenitore è funzionante, selezionare il database glpi 1 e fare clic sul pulsante Continua 2.

Attendi mentre il database viene inizializzato…

Il database per GLPI 11 è stato inizializzato e tutte le tabelle e i dati predefiniti sono stati inseriti. Fare clic sul pulsante Continua 1.

Se lo si desidera, configurare la raccolta dati 1, quindi fare clic sul pulsante Continua 2.

Salta il passaggio 5 e clicca su Continua 1.

Una volta completata l’installazione di GLPI, fare clic sul pulsante Usa GLPI 1.

Verrai reindirizzato alla pagina di accesso GLPI 11.

Connessione a GLPI 11 e scoperta
Per la prima connessione, utilizzare l’identificativo glpi 1 e la password glpi 2 e fare clic su Connetti 3.

Dopo aver effettuato l’accesso, si accede alla home page di GLPI, che raggruppa diverse dashboard con statistiche.

Come potete vedere, le statistiche non sono a 0, questo è normale, di default GLPI 11 visualizza i dati demo, è possibile “eliminarli” cliccando su Disabilita dimostrazione.
Controllare i dati ambientali
Dal menu Configurazione 1, cliccare su Generale 2, qui troverete le varie informazioni dell’ambiente applicativo GLPI 11.



Configurare la cache Redis
Per impostazione predefinita, GLPI utilizza un sistema di cache basato su file; negli ambienti in cui GLPI è ampiamente utilizzato, è possibile utilizzare Redis come sistema di cache, migliorando così le prestazioni.
Redis è un database NoSQL open source in-memory, utilizzato principalmente come cache, coda o archivio chiave-valore ultraveloce. Memorizza i dati direttamente nella RAM, consentendo tempi di risposta estremamente rapidi (in millisecondi). Redis supporta strutture dati avanzate come liste, set, hash, set ordinati e bitmap. Viene spesso utilizzato per migliorare le prestazioni delle applicazioni web, gestire sessioni o eseguire operazioni di pubblicazione/sottoscrizione. Redis può anche essere persistente, scrivendo periodicamente i dati su disco. Supporta l’alta disponibilità tramite meccanismi come Redis Sentinel o Redis Cluster.
Nella sezione Prestazioni 1, sono presenti le informazioni sulla cache GLPI, come puoi vedere nello screenshot qui sotto, per impostazione predefinita siamo su “filesystem”.

Per semplificare l’installazione di Redis, distribuiremo il servizio in un contenitore con Docker, proprio come abbiamo fatto per il database MariaDB.
Tornando al server tramite SSH, vai alla cartella /containers/ e crea la cartella per il contenitore Redis.
cd /containers
sudo mkdir redis-glpi
cd redis-glpiCreare il file docker-compose.yml.
sudo nano docker-compose.ymlCopiare il contenuto seguente nel file docker-compose.yml:
Scarica l’immagine del contenitore Redis:
sudo docker compose pullAvviare il contenitore:
sudo docker compose up -dQuindi vai alla cartella di installazione di GLPI 11:
cd /var/www/glpiImmettere il seguente comando per configurare la cache Redis in GLPI 11:
sudo php bin/console cache:configure --context core --dsn redis://127.0.0.1:6379/1
A seconda dell’utente utilizzato in SSH, è necessario confermare l’esecuzione del comando.
Torna alla pagina Prestazioni GLPI 11, aggiorna la pagina e dovresti vedere che Redis è configurato.

Continua nella configurazione GLPI 11
Questo tutorial sta per concludersi, altri arriveranno su GLPI 11, cosa che puoi fare ora:
- Elimina la cartella di installazione GLPI
- Cambia la password per l’account glpi
- Disattiva o elimina altri utenti.
Se sei abituato a GLPI 10, puoi vedere che entrambe le versioni sono simili nell’interfaccia e nella configurazione di altri elementi come la connessione LDAP, SMTP….
Conclusione
In questo tutorial hai visto come configurare un ambiente LAMP specifico per GLPI su Ubuntu 24.04, configurando Apache2, PHP-FPM e servizi con Docker (MariaDB e Redis).
Esistono moltissimi ambienti per l’installazione di GLPI e qui ne abbiamo visto UNA delle possibilità.
Se avete domande, fatele nei commenti.
