Instalación de GLPI en CentOS 7 con PHP 7 y MariaDB 10

Published:

Hace tiempo publique como instalar GLPI en Debian, hoy toca hacer lo mismo en CentOS, si bien es bastante similar algunas cosas cambian, sobre todo ubicaciones de archivos de configuración y repositorios, pero la idea es poder hacerlo con un tutorial lo más simple posible como siempre en nksistemas.com

1- Pre-Requisitos

Voy a hacer uso de la versión mínima de CentOS, sin entorno de escritorio, todo el procedimiento como root y voy a instalar algunas cositas sobre todo el editor nano, si lo instalo porque me gusta!! Así que una vez instalado el sistema actualizamos e instalamos algunos paquetes.

yum update
yum install -y wget nano

2- Instalación de MariaDB

Acá me tope con un problema y es que por defecto los repositorios de CentOS traen una versión 5.x de MariaDB, lo que me dió problemas en la instalación, por lo que hice una publicación de como migrar, pero acá muestro como instalar directamente la última versión.

2.1- Maria DB Instalación

Repositorio nuevo

Voy a crear el archivo para la nueva versión con el editor nano.

nano /etc/yum.repos.d/MariaDB10.repo

Pegamos lo siguiente dentro y guardamos

[mariadb]
name = MariaDB
baseurl = http://yum.mariadb.org/10.1/centos7-amd64
gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB
gpgcheck=1

Y limpiamos todo

yum clean all
2.2- Instar MariaDB 10.x

Una vez cargado los nuevos repositorios instalamos la nueva versión

yum -y install mariadb-server mariadb-devel

Iniciamos y habilitamos mariadb para que cuando se reinicie arranque solo

systemctl start mariadb
systemctl enable mariadb
2.3- Ahora estamos en condiciones de crear la base de datos
mysql_secure_installation

Damos un enter le decimos que le vamos a dar una clave al usuario root. Respondemos las preguntas que nos hace, por lo general todo que si (y). Después comenzamos a crear la base, usuario y privilegios.

mysql -u root -p
create database glpidb;
create user 'glpiuser'@'localhost' identified by 'tu_contraseña';
grant all privileges on glpidb.* to glpiuser@localhost;
flush privileges; 
exit

3- Instalación de PHP y complementos

Acá pasa algo similar con MariaDB, en los repositorios hay una versión anterior 5.x de PHP, así que vamos a cargar repositorios nuevos y habilitar la versión 7.2.

3.1. Para lograr nuestro objetivo debemos instalar y habilitar los repositorios EPEL y Remi, que nos permitirán instalar la versión nueva.

yum install -y https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
yum install -y http://rpms.remirepo.net/enterprise/remi-release-7.rpm

3.2. Ahora estamos listos para instalar yum-utils, que es una colección de herramientas para manejar los repositorios y paquetes de yum.

yum install -y yum-utils

3.3. yum-utils nos da acceso a una herramienta llamada yum-config-manager, y nos sirve para habilitar la versión 7.2 de php

yum-config-manager --enable remi-php72

3.4. Ahora podemos instalar PHP 7 con todos los módulos necesarios que necesitamos, agrego algunos que nos pedirá más adelante por eso los cargo en este paso.

yum -y install httpd php php-mysql php-pdo php-gd php-mbstring php-imap php-ldap php-opcache php-xmlrpc php-xml php-pecl-apcu php-pear-CAS.noarch

4- Descarga de GLPI

Para saber la última versión disponible verificamos en su web oficial: GLPI

cd /opt/
wget https://github.com/glpi-project/glpi/releases/download/9.4.0/glpi-9.4.0.tgz
tar -xvf glpi-9.4.0.tgz

Una vez que bajo y se descomprimimos, muevo la carpeta glpi a /var/www

mv glpi /var/www/glpi

Asignamos permisos

chmod -R 755 /var/www/glpi
chown -R apache:apache /var/www/glpi

5- Configuramos el Firewall

Dejamos pasar el puerto 80/TCP para que podamos acceder posteriormente.

firewall-cmd --permanent --add-port=80/tcp
firewall-cmd --reload

6- Ajustes de php y SELinux

Editamos el mismo y configuramos nuestra zona horaria.

nano /etc/php.ini

Buscamos el parámetro date.timezone y lo cambiamos por lo siguiente:

date.timezone = America/Argentina/Buenos_Aires

Reiniciamos el servicio para que tome el cambio.

systemctl restart httpd

Deshabilitamos SELinux, editando su configuración y reiniciamos el equipo.

nano /etc/selinux/config
SELINUX=disabled
reboot

7- Configurando un VHost

nano /etc/httpd/conf.d/glpi.conf
<VirtualHost *:80>

ServerAdmin [email protected]
ServerName glpi.nksistemas.com
DocumentRoot /var/www/glpi

ErrorLog "/var/log/httpd/glpi.nksistemas.com.log"
CustomLog "/var/log/httpd/glpi.nksistemas.com.log" combined

<Directory> /var/www/glpi/config>
AllowOverride None
Require all denied
</Directory>

<Directory> /var/www/glpi/files>
AllowOverride None
Require all denied
</Directory>

</VirtualHost>

Reiniciamos el servicio de httpd.

systemctl restart httpd

8- Instalar GLPI

Ahora podemos abrir un navegador y colocar la http:\\IP desde otro equipo.

Como primera opción elegimos el Idioma y Aceptamos el contrato que ofrece. Seguido de elegir la opción de Install

El primer paso es verificar que todo este en verde.En Step1 toca configurar los parámetros de la base de datos, ponemos localhost para el server, con su user y pass creados en el punto 2 MariaDB
Step2 una vez establecida la conexión elegimos la base creada anteriormente.Step 3 Continuamos porque todo esta OK
Step 4 si queremos tildamos la opción de mandarle estadísticas a los desarrolladores para mejorar el producto y le damos continuar, seguido de esto una pantalla para donar algunos dolares y colaborar o no.Finalmente clic en Use GLPI para ingresar al sistema, ahí nos da los usuarios por defecto que es conveniente cambiar las claves o eliminarlos.

Como precaución es recomendable eliminar el archivo de instalación:

rm -rf /var/www/glpi/install/install.php
- Advertisement -
Jorge
Jorgehttps://nksistemas.com
Soy Jorge, Sr Sysadmin Linux/DevOps/SRE y creador de NKSistemas.com Trabajo con plataformas: Linux, Windows, AWS, GCP, VMware, Helm, kubernetes, Docker, etc.

Related articles