Habilitar SSL en GLPi

En este post, vamos a explicar como habilitar el protocolo HTTPS en Apache 2 para Ubuntu y, como configurar GLPi para acceder a través de este protocolo.

En nuestro caso, como tenemos GLPi en local, accedíamos siempre a través del puerto 80 (http), pero por necesidades de envío de email hemos tenido que cambiarlo al puerto 443 (https)

Nosotros no vamos a añadir ningún certificado, así que vamos a proceder directamente a configurar Apache. Para ello, creamos el archivos ssl-params.conf

sudo nano /etc/apache2/conf-available/ssl-params.conf

Y añadimos el siguiente contenido

SSLCipherSuite EECDH+AESGCM:EDH+AESGCM:AES256+EECDH:AES256+EDH

	SSLProtocol All -SSLv2 -SSLv3 -TLSv1 -TLSv1.1
	SSLHonorCipherOrder On

	Header always set X-Frame-Options DENY
	Header always set X-Content-Type-Options nosniff
	# Requires Apache >= 2.4
	SSLCompression off
	SSLUseStapling on
	SSLStaplingCache "shmcb:logs/stapling-cache(150000)"
	# Requires Apache >= 2.4.11
	SSLSessionTickets Off

Ahora vamos a editar el Virtual Host

sudo nano /etc/apache2/sites-available/default-ssl.conf

Editamos los campos ServerAdmin y ServerName

ServerAdmin mail@ejemplo.com
ServerName ejemplo.com

El resto del archivo lo dejamos por defecto.

Ahora configuramos el cortafuegos del equipo para permitir el tráfico HTTP y HTTPS. Primero comprobamos los perfiles de Apache que tenemos disponibles

sudo ufw app list

Recibiremos un resultado similar al siguiente:

Available applications:   
	Apache
	Apache Full
	Apache Secure
	OpenSSH

Para habilitar el tráfico HTTP (puerto 80) y HTTPS (443), usaremos el perfil Apache Full

sudo ufw app info "Apache Full"

Recibiremos el siguiente resultado

Profile: Apache Full 
	Title: Web Server (HTTP,HTTPS)
	Description: Apache v2 is the next generation of the omnipresent Apache web server.
	Ports: 80,443/tcp

Después, verificamos que el perfil está habilitado

sudo ufw allow in "Apache Full"

Ahora vamos configurar Apache. Para ellos, habilitamos los módulos mod_ssl y mod_headers

sudo a2enmod ssl
sudo a2enmod headers

Habilitamos la lectura de la configuración SSL, creada anteriormente:

sudo a2enconf ssl-params

Activamos el Host Virtual SSL por defecto:

sudo a2ensite default-ssl

Comprobamos que no hay errores de sintaxis en los archivos de configuración de Apache

sudo apache2ctl configtest

Si aparece el mensaje Sintaxis OK, procedemos a reiniciar Apache

sudo systemctl restart apache2

Ahora que ya hemos configurado y habilitado el protocolo HTTPS en nuestro servidor Apache, debemos modificar la URL de GLPi, para que funcione con HTTPS.

Para ello, debemos acceder a GLPi como Super-Admin y, en la columna de la izquierda, vamos al menú Configuración –> General

En la pantalla central, en Configuración general, veremos el campo URL de la aplicación, con la siguiente configuración:

Simplemente, debemos modificar la URL añadiendo la «al protocolo http

Y pulsamos en Guardar, en la esquina inferior derecha. Una vez realizado, ya podremos acceder a GLPi, con el protocolo HTTPS.