« Anterior -
Versión 45/48
(diff) -
Siguiente » -
Versión actual
Emilio Penna, Martes, 18 de Febrero de 2025 14:46:40 -0300
Instalación Shibboleth SP¶
Actualizado: 2025-02-18
Escenario: En esta guia se describe la instalación de Shibboleth SP sobre Debian 12.
En los pasos siguientes se considera que la instalación se realiza en en el host "spe.seciu.edu.uy", se debe ajustar el nombre al que corresponda.
Referencias:
https://shibboleth.atlassian.net/wiki/spaces/SP3/overview
https://help.switch.ch/aai/guides/sp/
https://docs.tuakiri.ac.nz/service_providers/install_shibboleth_sp_on_debian_based_linux
Requerimientos sobre Apache:
1. Para integrarse con el proveedor de identidad de la udelar, es obligatorio utilizar HTTPS.
En esta guia se asume que ya se encuentra habilitado mod_ssl en el servidor
2. La documentación oficial de Shibboleth indica que el MPM "prefork" de apache (modulo de multiprocesamiento) genera problemas, por lo tanto se recomienda usar otro, puede ser "worker" MPM o "event" MPM. En la instalación de ejemplo utilizamos event.
https://shibboleth.atlassian.net/wiki/spaces/SP3/pages/2067399657/SystemRequirements
1. Instalación en Debian 12 usando paquete de Debian:¶
Partimos de un sistema con apache y mod_ssl
sudo apt install libapache2-mod-shib #chequear status con: sudo systemctl status shibd.service
Generar claves:
shib-keygen -n sp-signing -u _shibd -g _shibd -y 20 -h spe.seciu.edu.uy -e https://spe.seciu.edu.uy/shibboleth -o /etc/shibboleth/ shib-keygen -n sp-encrypt -u _shibd -g _shibd -y 20 -h spe.seciu.edu.uy -e https://spe.seciu.edu.uy/shibboleth -o /etc/shibboleth/
2. Verificación de estado¶
$ sudo shibd -t overall configuration is loadable, check console or log for non-fatal problems
Chequeo de pagina de estado (opcional):
curl -k https://127.0.0.1/Shibboleth.sso/Status
Por defecto solo permite el acceso a la pagina de estado desde localhost. Para habilitar el acceso desde otro equipo, se puede agregar la IP desde la que se quiere acceder. Para esto, editar /etc/shibboleth/shibboleth2.xml, y agregar la ip en el elemento Handler. Ejemplo:
1 <Handler type="Status" Location="/Status" acl="127.0.0.1 ::1 164.73.129.160"/>
Ante cualquier cambio en la configuración de Shibboleth se debe reiniciar el proceso con los siguientes comandos:
service shibd stop service shibd start
Luego accediendo a la dirección https://spe.seciu.edu.uy/Shibboleth.sso/Status se puede ver una página xml con información del SP.
También puede ser con wget en localhost: wget https://localhost:443//Shibboleth.sso/Status --no-check-certificate
Otros chequeos:
Acceder a
https://spe.seciu.edu.uy/Shibboleth.sso/Session
Deberia verse una pagina que dice "A valid session was not found"
Este mensaje indica que el módulo Shibboleth ha sido cargado correctamente por el webserver.
Luego se debe continuar con la configuración: Configuración Shibboleth SP
Comando util para chequear que la configuración de apache es válida (ejecutar luego de cambiar configuraciones de apache)
apache2ctl configtest
La salida deberia ser: Syntax OK