En este artículo vamos a explicar cómo instalar GLPI en Debian 12 Bookworm paso a paso, de manera que en unos instantes tendrás funcionando este gestor de parque informático e incidencias sobre tu servidor o VPS Debian.
NOTA: Esta guía está disponible para otras versiones de Debian que podrás encontrar fácilmente en el buscador de este sitio.
Tabla de contenidos
Antes de instalar GLPI en Debian 12 Bookworm
Si quieres seguir los pasos de esta guía de instalación de GLPI en Debian 12 Bookworm necesitarás cumplir estos requerimientos básicos:
- Un sistema Debian 12 Bookworm actualizado.
- El entorno o pila LAMP (servicio web con MariaDB/MySQL y PHP 8.2 recomendado, aunque soporta desde la versión 7.4).
- Un usuario con permisos de sudo.
- Acceso a Internet.
En caso de no disponer aún del entorno necesario podría resultar de utilidad consultar previamente nuestra guía de instalación de la pila LAMP en Debian 12.
Cómo descargar GLPI para Debian 12 Bookworm
Para descargar GLPI en Debian 12 Bookworm visitaremos el sitio web oficial del proyecto donde encontraremos la última versión estable:
El paquete se encuentra disponible para descargar en formato .tgz y podemos descargarlo desde el navegador directamente o desde consola, si trabajamos remotamente, con alguna utilidad como wget:
~$ wget https://github.com/glpi-project/glpi/releases/download/10.0.15/glpi-10.0.15.tgz
Cómo instalar GLPI en Debian 12 Bookworm
Para poder instalar GLPI en Debian 12 Bookworm debemos realizar una serie de tareas que preparen el sistema de tal modo que el instalador web pueda realizar su función sin encontrar problemas o errores. Detallamos seguidamente los pasos necesarios.
Base de datos
GLPI trabaja sobre una base de datos MariaDB/MySQL que prepararemos conectando al servicio con el cliente de consola mysql y un usuario administrador:
~$ sudo mysql
Si el administrador necesita contraseña para iniciar sesión, conectamos así:
~$ mysql -u root -p
Creamos la base de datos:
> create database glpi charset utf8mb4 collate utf8mb4_unicode_ci;
Creamos el usuario:
> create user glpi@localhost identified by 'XXXXXXXX';
Damos privilegios al usuario sobre la base:
> grant all privileges on glpi.* to glpi@localhost;
Además, el usuario debe tener acceso a la tabla de zonas horarias de MySQL/MariaDB:
> grant select on mysql.time_zone_name to glpi@localhost;
Y cerramos la conexión:
> exit
Con respecto a la tabla de zonas horarias, no suele venir cargada por defecto, así que lo haremos desde consola.
Si el administrador de la base de datos accede con sudo:
~$ mysql_tzinfo_to_sql /usr/share/zoneinfo/ | sudo mysql mysql
Y si necesita contraseña:
~$ mysql_tzinfo_to_sql /usr/share/zoneinfo/ | mysql -u root -p mysql
PHP
GLPI requiere la presencia de ciertas extensiones de este lenguaje de programación que obtendremos de los repositorios del sistema.
Si tenemos instalada la versión nativa de la distribución, instalaremos las extensiones así:
~$ sudo apt install -y php-bz2 php-curl php-gd php-intl php-ldap php-mbstring php-xml php-zip
En caso de tener instalada una versión procedente del repositorio alternativo habrá que indicar el número de la versión en los nombres de los paquetes; por ejemplo, para la 8.3:
~$ sudo apt install -y php8.3-bz2 php8.3-curl php8.3-gd php8.3-intl php8.3-ldap php8.3-mbstring php8.3-xml php8.3-zip
Además tenemos que modificar el archivo php.ini, en el caso de la versión nativa:
~$ sudo nano /etc/php/8.2/apache2/php.ini
Observa que la versión de PHP forma parte de la ruta de este archivo, así que si trabajamos con una versión alternativa, modificamos la ruta adecuadamente:
~$ sudo nano /etc/php/8.3/apache2/php.ini
Buscamos la directiva session.cookie_httponly:
... session.cookie_httponly = ...
Y le damos el valor «on«:
... session.cookie_httponly = on ...
Ya podemos guardar y cerrar este archivo.
Por último, recargamos la configuración del servicio web para que las extensiones queden listas para ser usadas:
~$ sudo systemctl reload apache2
Archivos de GLPI
Descomprimimos el paquete que descargamos anteriormente en su ubicación definitiva:
~$ sudo tar xf glpi-10.0.15.tgz -C /var/www/
GLPI usa por defecto algunos directorios sensibles dentro del directorio de la aplicación, así que los crearemos de forma manual fuera de dicha estructura:
~$ sudo mkdir /etc/glpi /var/log/glpi
También moveremos otro directorio fuera del directorio de instalación:
~$ sudo mv /var/www/glpi/files/ /var/lib/glpi
Para que GLPI esté al corriente de dónde se encuentran ahora estos directorios crearemos un pequeño archivo de configuración:
~$ sudo nano /var/www/glpi/inc/downstream.php
El contenido de este archivo informa dónde se encuentra el resto de la configuración:
<?php define('GLPI_CONFIG_DIR', '/etc/glpi/'); if (file_exists(GLPI_CONFIG_DIR . '/local_define.php')) { require_once GLPI_CONFIG_DIR . '/local_define.php'; }
Ahora en el directorio externo de configuración creamos otro archivo complementario:
~$ sudo nano /etc/glpi/local_define.php
Y especificamos la ubicación de los otros directorios externos:
<?php define('GLPI_VAR_DIR', '/var/lib/glpi'); define('GLPI_LOG_DIR', '/var/log/glpi');
Finalmente, GLPI debe poder escribir en todos estos directorios, por lo que cambiamos la propiedad de los mismos al usuario con el que corre el servicio web:
~$ sudo chown -R www-data: /var/www/glpi/ /etc/glpi/ /var/lib/glpi/ /var/log/glpi/
Servicio web
GLPI puede hacer uso de módulos de Apache como Expires y Rewrite que no están cargados por defecto, así que los activamos:
~$ sudo a2enmod expires rewrite
Por otro lado, crearemos una configuración para el servicio web:
~$ sudo nano /etc/apache2/sites-available/glpi.conf
Creamos un alias (/glpi en este ejemplo) para hacer navegable la aplicación y permitimos el uso de configuraciones personalizadas a través de archivos .htaccess que ya incluye GLPI:
Alias /glpi /var/www/glpi/public <Directory /var/www/glpi/public> AllowOverride all RewriteEngine On RewriteCond %{REQUEST_FILENAME} !-f RewriteRule ^(.*)$ index.php [QSA,L] </Directory>
Guardamos el archivo e incluimos la nueva configuración:
~$ sudo a2ensite glpi.conf
Y reiniciamos el servicio web para aplicar todos estos cambios:
~$ sudo systemctl restart apache2
Instalador web
Ha llegado el momento de lanzar el instalador web de GLPI sobre Debian 12 Bookworm desde un navegador, para lo que usamos la dirección del servidor (IP, dominio, nombre DNS, localhost si trabajamos localmente, etc.) y el alias que hayamos configurado anteriormente.
Por ejemplo, la máquina Debian 12 Bookworm sobre la que hemos realizado esta guía es accesible en el subdominio debian12.local.lan y hemos creado el alias /glpi, por lo que podemos usar http://debian12.local.lan/glpi como URL:
En la página inicial del instalador web elegimos el idioma en que queremos trabajar con GLPI.
A continuación se muestra la licencia de GLPI:
Habrá que aceptar los términos de la licencia para poder continuar con la instalación.
El instalador nos ofrecerá opciones para instalar GLPI o actualizar una versión anterior:
En este caso elegiremos «Instalar«, para usar GLPI por primera vez en la máquina Debian 12.
El siguiente paso será comprobar los requisitos del sistema para ver si la instalación es posible:
En caso de que falle la comprobación de algún requisito habrá que solucionar el problema y reintentarlo de nuevo.
Seguidamente se mostrará el formulario de configuración de la conexión a la base de datos:
Introducimos el servidor SQL (que usualmente será localhost) y el usuario y su contraseña tal como los creamos anteriormente.
Comprobada la conexión el instalador nos posibilita elegir entre crear una nueva base de datos o usar la ya existente:
Elegiremos la base «glpi» que creamos en pasos anteriores.
Se procederá a inicializar la base de datos, tarea que requiere unos instantes.
Terminada la inicialización se nos informa de la posibilidad de enviar datos estadísticos de uso para mejorar la aplicación:
Puedes desactivar o no esta opción, así como registrar opcionalmente esta instalación de GLPI.
Por último se nos informa sobre la existencia de un servicio profesional de soporte de GLPI orientado a organizaciones y entidades corporativas:
La instalación termina y se muestran cuatro usuarios con sus contraseñas por defecto, con los que podríamos iniciar sesión.
Antes de iniciar sesión por seguridad es muy recomendable eliminar el instalador web. Esto se puede hacer fácilmente desde consola:
~$ sudo rm -rf /var/www/glpi/install/
Si no lo hacemos se mostrará constantemente un aviso durante el uso de GLPI.
Iniciamos sesión, ya sea mediante el enlace «Utilizar GLPI» o usando la misma URL con la que iniciamos el instalador web:
Se mostrará el inicio de sesión donde podremos utilizar el usuario glpi y la contraseña glpi.
Aparecerá la interfaz principal de la plataforma:
Un aviso nos recuerda que los usuarios existentes aún tienen la contraseña por defecto, por lo que es necesario cambiarla.
Para ello visitaremos la opción «Administración / Usuarios» que nos mostrará la lista de usuarios del sistema:
Visitando el perfil de cualquiera de estos usuarios a través del enlace correspondiente en la lista, se mostrará el formulario que nos permitirá realizar cualquier cambio:
Una vez que hayamos cambiado las contraseñas de los cuatro usuarios por defecto y regresemos a la página principal de la plataforma, el aviso habrá desaparecido:
¡Todo listo para empezar a trabajar con GLPI sobre Debian 12 Bookworm!
Conclusión
Ahora que ya sabes cómo instalar la plataforma GLPI en Debian 12 Bookworm ya puedes empezar a gestionar inventarios TI, seguir incidencias y realizar todas las funcionalidades que nos ofrece la aplicación.
Si quieres notificar algún error o realizar alguna sugerencia puedes dejar un comentario que, aunque están moderados, se revisan a diario.
Y si ya trabajas con GLPI en tu máquina gracias a este tutorial, y quieres agradecérnoslo, cualquier mínima aportación al mantenimiento de este sitio y la creación de más tutoriales siempre es bienvenida.
Puedes ayudarnos dejando una propina desde 1 $ con PayPal:
¡Gracias!