Installing GLPI 11 on Linux is the traditional path for production environments with full control over the infrastructure. This tutorial covers the complete installation on Debian 12 or Ubuntu 24.04.
Prerequisites
- Debian 12 or Ubuntu 24.04 LTS server (minimum 2 GB RAM, 20 GB disk)
- Root or sudo access
- Domain pointing to the server IP
1. Update the system
apt update && apt upgrade -y
2. Install Apache, PHP and extensions
GLPI 11 requires PHP 8.1 or higher. On Debian 12, PHP 8.2 is the default:
apt install -y apache2 php php-{mysql,curl,gd,intl,xml,mbstring,zip,bz2,ldap,imap,apcu,xmlrpc,cas} \
libapache2-mod-php
Configure PHP
Edit /etc/php/8.2/apache2/php.ini:
memory_limit = 256M
upload_max_filesize = 20M
post_max_size = 20M
max_execution_time = 600
session.cookie_httponly = On
3. Install MariaDB
apt install -y mariadb-server
mysql_secure_installation
Create database and user
mysql -u root -p
CREATE DATABASE glpi CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
CREATE USER 'glpi'@'localhost' IDENTIFIED BY 'SuaSenhaForte';
GRANT ALL PRIVILEGES ON glpi.* TO 'glpi'@'localhost';
FLUSH PRIVILEGES;
EXIT;
4. Download and install GLPI 11
cd /tmp
wget https://github.com/glpi-project/glpi/releases/download/11.0.0/glpi-11.0.0.tgz
tar -xzf glpi-11.0.0.tgz -C /var/www/
chown -R www-data:www-data /var/www/glpi
5. Configure Apache
Create the VirtualHost at /etc/apache2/sites-available/glpi.conf:
<VirtualHost *:80>
ServerName glpi.suaempresa.com
DocumentRoot /var/www/glpi/public
<Directory /var/www/glpi/public>
AllowOverride All
Require all granted
</Directory>
ErrorLog ${APACHE_LOG_DIR}/glpi_error.log
CustomLog ${APACHE_LOG_DIR}/glpi_access.log combined
</VirtualHost>
a2ensite glpi.conf
a2enmod rewrite
a2dissite 000-default.conf
systemctl restart apache2
Important: the DocumentRoot points to /var/www/glpi/public, not to /var/www/glpi. This is mandatory in GLPI 10+ for security reasons.
6. Configure data directories
For security, move sensitive data outside the webroot:
mkdir -p /var/lib/glpi /var/log/glpi /etc/glpi
mv /var/www/glpi/config/* /etc/glpi/
mv /var/www/glpi/files/* /var/lib/glpi/
chown -R www-data:www-data /var/lib/glpi /var/log/glpi /etc/glpi
7. Install via CLI
php /var/www/glpi/bin/console db:install \
--db-host=localhost \
--db-name=glpi \
--db-user=glpi \
--db-password=SuaSenhaForte \
--default-language=pt_BR \
--no-interaction
8. Configure SSL with Let's Encrypt
apt install -y certbot python3-certbot-apache
certbot --apache -d glpi.suaempresa.com
9. Configure the cron
GLPI needs a cron to process automatic actions, notifications and inventory collection:
echo "*/2 * * * * www-data php /var/www/glpi/front/cron.php" > /etc/cron.d/glpi
10. Post-installation
- Access
https://glpi.suaempresa.comand log in withglpi / glpi - Change all default passwords (glpi, tech, normal, post-only)
- Remove the installation file:
rm /var/www/glpi/install/install.php - Configure SMTP at Configuration > Notifications > Email configuration
Next step
With GLPI installed, configure entities and locations, define your SLAs and explore the 50 best plugins to expand the features.