Zurück zur Übersicht

How to install and set up GLPI: The complete guide for mid-sized companies 2026

21.04.2026 Firat Tarti DE EN FR
How to install and set up GLPI: The complete guide for mid-sized companies 2026

The short answer: GLPI can be installed on an Ubuntu 24.04 server with Apache, PHP 8.3 and MariaDB in about 30 to 45 minutes. To take the system live for a mid-sized business, however, you also need proper Active Directory integration, HTTPS, a well-designed role model, a mail gateway and a backup concept. This guide walks through the entire path, from the technical installation to productive configuration, with verified commands for the current GLPI version 11.

As an official GLPI Silver Partner, Blueteam regularly installs and operates GLPI environments across Germany and Europe. This article is aimed at Linux administrators, IT managers in mid-sized companies and decision-makers who want to understand what a GLPI rollout looks like technically and organisationally.

What does GLPI deliver and who benefits from it?

GLPI is an open source ITSM system with a full feature set for ticketing, IT asset management, CMDB, change, problem and incident management, self-service portal, licence management and automated inventory. The vendor Teclib' additionally offers GLPI as a commercial subscription (GLPI Network) with update guarantee and bugfix SLA. For mid-sized companies starting from around 10 IT agents, GLPI is one of the most cost-effective ITSM solutions, especially when on-premise operation and GDPR-compliant data hosting are priorities.

For the full comparison with commercial ITSM systems, see our article GLPI vs. Freshservice vs. ServiceNow.

System requirements for GLPI 11

GLPI 11 has clear technical minimum requirements. If you don't meet them, the web installer will stop you right at the start.

Hardware (recommended sizing)

  • Small environment (up to 50 agents, up to 500 assets): 2 vCPU, 4 GB RAM, 40 GB SSD
  • Medium environment (up to 200 agents, up to 5,000 assets): 4 vCPU, 8 GB RAM, 100 GB SSD
  • Larger environment (200+ agents, 5,000+ assets): 8 vCPU, 16 GB RAM, 200 GB SSD, separate database host

Software (as of GLPI 11, April 2026)

  • Operating system: Ubuntu 24.04 LTS, Debian 12 or 13, RHEL 9. This guide uses Ubuntu 24.04 LTS.
  • Web server: Apache 2.4 or Nginx 1.22+
  • PHP: version 8.2 or higher (Ubuntu 24.04 ships PHP 8.3 natively)
  • Database: MySQL 8.0+ or MariaDB 10.6+ (Ubuntu 24.04 ships MariaDB 10.11)
  • PHP extensions: curl, fileinfo, gd, intl, ldap, mbstring, mysqli, openssl, xml, zip, bz2, zlib, exif, session, simplexml

Network and access

  • Static IP address or reserved DHCP lease
  • DNS record, ideally glpi.your-domain.com
  • Port 443 (HTTPS) reachable from outside (for cloud deployments)
  • Port 389/636 (LDAP/LDAPS) to your Active Directory server
  • Port 25/587 (SMTP) to your mail gateway

Step 1: Prepare the server and update the system

Connect to the freshly provisioned Ubuntu 24.04 server via SSH and run a full system update.

sudo apt update && sudo apt upgrade -y
sudo apt install curl wget unzip software-properties-common -y

Set the correct timezone so that tickets and logs carry consistent timestamps. For Germany:

sudo timedatectl set-timezone Europe/Berlin
timedatectl

Step 2: Install the LAMP stack (Apache, PHP, MariaDB)

We install all required components in one go. Ubuntu 24.04 already provides the correct versions in its default repositories.

sudo apt install apache2 mariadb-server \
  php php-cli php-fpm php-mysql php-curl php-gd php-intl \
  php-ldap php-xml php-mbstring php-zip php-bz2 php-soap \
  php-xmlrpc php-apcu libapache2-mod-php -y

Verify the installed versions:

php --version
apache2 -v
mariadb --version

The output should show PHP 8.3.x, Apache 2.4.x and MariaDB 10.11.x. Then start Apache and MariaDB and enable both services:

sudo systemctl enable --now apache2
sudo systemctl enable --now mariadb

Adjust PHP configuration for GLPI

GLPI requires more generous PHP limits than the default installation provides. Open the configuration file:

sudo nano /etc/php/8.3/apache2/php.ini

Adjust the following values:

memory_limit = 512M
max_execution_time = 600
max_input_vars = 5000
post_max_size = 64M
upload_max_filesize = 64M
session.cookie_httponly = on
session.cookie_samesite = "Lax"

Restart Apache so the changes take effect:

sudo systemctl restart apache2

Step 3: Harden MariaDB and create the database

First, secure the MariaDB installation using the bundled hardening script:

sudo mariadb-secure-installation

Answer the prompts as follows: set root password (yes), remove anonymous users (yes), disallow root remote login (yes), remove test database (yes), reload privileges (yes).

Then create the GLPI database and a dedicated user. Use a strong, unique password and store it securely.

sudo mariadb -u root -p

Inside the MariaDB console:

CREATE DATABASE glpidb CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
CREATE USER 'glpiuser'@'localhost' IDENTIFIED BY 'YourSecurePasswordHere';
GRANT ALL PRIVILEGES ON glpidb.* TO 'glpiuser'@'localhost';
FLUSH PRIVILEGES;
EXIT;

GLPI also needs access to the MySQL timezone tables. Load them once:

sudo mariadb-tzinfo-to-sql /usr/share/zoneinfo | sudo mariadb -u root -p mysql

Then grant the GLPI user read access to the timezone table:

sudo mariadb -u root -p
GRANT SELECT ON mysql.time_zone_name TO 'glpiuser'@'localhost';
FLUSH PRIVILEGES;
EXIT;

Step 4: Download GLPI and place the files

Download the current GLPI version from the official GitHub release. Check github.com/glpi-project/glpi/releases for the latest stable version before downloading, the line below is an example.

cd /tmp
wget https://github.com/glpi-project/glpi/releases/download/11.0.0/glpi-11.0.0.tgz
tar -xvzf glpi-11.0.0.tgz
sudo mv glpi /var/www/

Set file ownership to the web server user and apply the correct permissions:

sudo chown -R www-data:www-data /var/www/glpi
sudo find /var/www/glpi -type d -exec chmod 755 {} \;
sudo find /var/www/glpi -type f -exec chmod 644 {} \;

Step 5: Set up the Apache VirtualHost for GLPI

From GLPI 10.0.7 onwards, the public/ directory is the only recommended DocumentRoot. This cleanly separates web access from configuration and data directories.

Create the VirtualHost configuration:

sudo nano /etc/apache2/sites-available/glpi.conf

Insert the following content and adjust ServerName to match your hostname:

<VirtualHost *:80>
    ServerName glpi.your-domain.com
    DocumentRoot /var/www/glpi/public

    <Directory /var/www/glpi/public>
        Require all granted
        RewriteEngine On
        RewriteCond %{HTTP:Authorization} ^(.+)$
        RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
        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>

Enable the site, disable the default site and reload Apache:

sudo a2ensite glpi.conf
sudo a2dissite 000-default.conf
sudo a2enmod rewrite
sudo systemctl reload apache2

Step 6: Run the GLPI web installer

Open your GLPI server address in the browser: http://glpi.your-domain.com. The web installer guides you through the basic setup in five steps.

  1. Language selection: choose English, start the installation.
  2. Accept the licence: GPLv3, accept and continue.
  3. Prerequisites check: all items must be green. If not, install the missing PHP extension and restart Apache.
  4. Database connection: host: localhost, user: glpiuser, password: as set above. Then pick glpidb from the list.
  5. Initialisation: GLPI creates the tables and populates default data.

After completion, sign in with one of the four default accounts. The key ones:

  • glpi / glpi — Super Administrator
  • tech / tech — Technician
  • normal / normal — Regular user
  • post-only / postonly — Ticket submitter only

Step 7: Absolutely critical post-install steps

These steps are often skipped in shallow guides. Anyone who skips them is running an insecure system.

Remove the installer script

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

Change default passwords

Log in with each of the four default accounts once and change the password directly under My Profile → Personal preferences. Then deactivate the accounts you do not need, under Administration → Users.

Set up a cron job for background tasks

By default GLPI runs its background tasks via its internal scheduler. For productive environments, a real system cron is more reliable.

sudo crontab -u www-data -e

Insert the following line:

*/2 * * * * /usr/bin/php /var/www/glpi/front/cron.php

Then switch the execution mode to CLI in the GLPI interface under Setup → General → Automatic actions.

Set up HTTPS with Let's Encrypt

Running GLPI without HTTPS is not acceptable in production. With Certbot it takes five minutes.

sudo apt install certbot python3-certbot-apache -y
sudo certbot --apache -d glpi.your-domain.com

Certbot renews the certificate automatically every 90 days via a systemd timer.

Step 8: Connect Active Directory

AD integration is by far the most important configuration step for productive use in mid-sized companies. Without it, you end up maintaining users twice.

In GLPI, go to Setup → Authentication → LDAP directories → Add and enter values like the following (example for a typical AD structure):

  • Name: Company-AD
  • Server: dc01.your-company.local
  • Port: 636 for LDAPS, 389 for unencrypted LDAP
  • Filter: (&(objectClass=user)(objectCategory=person)(!(userAccountControl:1.2.840.113556.1.4.803:=2)))
  • BaseDN: OU=Employees,DC=your-company,DC=local
  • RootDN: CN=glpi-bind,CN=Users,DC=your-company,DC=local
  • Password: password of the dedicated bind user
  • Login field: samaccountname
  • Sync field: objectguid

Important: create a dedicated service account in AD (for example glpi-bind) with read-only privileges, never a domain admin. The filter above excludes disabled accounts.

After saving, test the connection via Test the connection and import users via Administration → Users → LDAP import.

Step 9: GLPI Agent for automated inventory

The GLPI Agent replaces the former FusionInventory plugin and inventories Windows, Linux, macOS and Android devices automatically. For Windows, an MSI installer is available that can be rolled out via GPO or Intune.

Standard command for Windows GPO deployment:

msiexec /i GLPI-Agent-x64.msi /quiet SERVER=https://glpi.your-domain.com RUNNOW=1

On Linux clients via the package manager:

sudo apt install glpi-agent
sudo glpi-agent --server=https://glpi.your-domain.com

Within a few minutes, devices appear automatically in the GLPI asset inventory under Assets → Computers.

Step 10: Backup strategy

A GLPI system without automated backups is a productive risk. Back up two components daily: the MariaDB database and the /var/www/glpi/files directory.

Example backup script at /usr/local/bin/backup-glpi.sh:

#!/bin/bash
BACKUP_DIR="/var/backups/glpi"
DATE=$(date +%Y-%m-%d)
mkdir -p $BACKUP_DIR

mariadb-dump -u glpiuser -p'YourPassword' glpidb | gzip > $BACKUP_DIR/glpidb_$DATE.sql.gz
tar -czf $BACKUP_DIR/glpifiles_$DATE.tar.gz /var/www/glpi/files

find $BACKUP_DIR -type f -mtime +30 -delete

Make the script executable and run it daily at 02:00 via cron:

sudo chmod +x /usr/local/bin/backup-glpi.sh
sudo crontab -e
# Add the following line:
0 2 * * * /usr/local/bin/backup-glpi.sh

Test the backup regularly with a restore on a separate system. A backup that has never been tested is not a backup.

When does a professional rollout by a partner pay off?

The technical installation is the easy part. The actual business value emerges in the configuration, which this guide deliberately does not cover because it is customer-specific:

  • Role model and permission concept, derived from your organisational structure
  • Ticket categories, SLAs and escalation rules
  • Workflow automation for approval processes
  • Service catalog with forms (Formcreator plugin)
  • Integration with Microsoft 365, Teams or Exchange
  • CMDB setup with relationships between assets and services
  • Migration from legacy systems such as OTRS, Zammad, Jira Service Management
  • GDPR-compliant logging and audit trail

In practice, the technical part takes one to two days, while the proper organisational rollout takes two to six weeks. Companies that try to handle this themselves often end up with a system that works technically but is not accepted internally. That is the most expensive state: licence costs for a system nobody uses.

Blueteam supports rollout projects across the mid-market as a GLPI Silver Partner. A standard project is in production within two to three weeks, with full role model, AD integration, self-service portal and trained team.

Frequently asked questions about installing GLPI

Can I install GLPI on Windows Server with IIS?

Technically yes, via IIS with PHP-FPM. In practice, the Linux with Apache or Nginx combination is far more common, better documented and easier to maintain. If your IT team is strongly Windows-focused, running a Linux VM on Hyper-V is a clean compromise.

How much time should I plan for the complete rollout?

The pure technical installation as described here takes about 30 to 45 minutes. A productive rollout including AD integration, role model, categories, SLAs, agent deployment, self-service portal and user training takes two to six weeks with a proper project approach, depending on the size of the environment.

Is GLPI Network worth it compared to the pure open source version?

For productive mid-market environments, usually yes. GLPI Network includes update guarantees, bugfix SLAs, support from Teclib' and access to exclusive plugins. The EUR 19 per agent per month are well invested relative to the risks of running an unpatched production environment. The pure open source version is suitable for test environments, training and very small installations.

Which plugins are particularly useful for mid-sized companies?

By far the most common plugins we see in our projects are Formcreator (service catalog with forms), Behaviours (extended ticket logic), Dashboard (additional reports), OAuthSSO (Azure AD SSO), and the Reports plugin for PDF exports. With GLPI 11, several of these capabilities are now included in the core.

What happens when upgrading from GLPI 10 to GLPI 11?

The upgrade runs through the built-in update wizard after a file swap. Existing data is fully preserved. Important before the upgrade: full backup of database and the files directory, check PHP version (at least 8.2), check all installed plugins for GLPI 11 compatibility. Some older plugins are integrated into the GLPI 11 core and must be disabled beforehand.

Can GLPI be run in a GDPR-compliant way?

Yes. With on-premise operation on your own servers in Germany or another EU country, all GDPR requirements can be met. The key points are configuration of retention periods, audit logging, role-based access control and encryption of database backups. For certified environments (ISO 27001, KRITIS, TISAX), Blueteam assists with the compliance configuration.

How does GLPI scale as the workforce grows?

GLPI scales comfortably up to around 1,000 agents and 50,000 assets with appropriate hardware. From around 200 agents, we recommend separating the web server and database server onto two VMs and using an external cache like Redis. The corresponding configuration options are available under Setup → General → Performance.

Official sources and further documentation

This guide was compiled and verified against the following official sources. For anything that goes beyond the scope of this article, these are the authoritative references:

Conclusion

The technical installation of GLPI 11 on Ubuntu 24.04 is done in about an hour using the steps above. The productive rollout for a mid-sized company is a different dimension: it requires a well-designed role model, clean category design, AD integration, self-service communication and user training. Those who can handle both parts themselves get one of the strongest open source ITSM systems at calculable costs.

Those who don't want to handle the organisational part themselves, or who cannot carve out the internal team's time, will find in Blueteam a partner that delivers GLPI projects audit-ready and productive within two to six weeks.

  • GLPI 11 runs reliably on Ubuntu 24.04 LTS with PHP 8.3, Apache 2.4 and MariaDB 10.11
  • The pure installation takes 30 to 45 minutes, the productive rollout takes two to six weeks
  • Critical for productive operation: HTTPS, AD integration, cron job, backup, hardening
  • GLPI Network at EUR 19 per agent per month secures updates and bugfixes for productive environments
  • Blueteam is an official GLPI Silver Partner and supports rollout projects across Europe

Book a free initial consultation →

Zurück zur Übersicht