Instalación Shibboleth SP

Actualizado: 2020-05-11

Escenario: En esta guia se describe la instalación de Shibboleth SP en un equipo con Debian 8 y Apache 2.4. En los pasos siguientes se considera que la instalación se realiza en en el host <mihost-ejemplo.edu.uy>, se debe ajustar el nombre al que corresponda.

Otros sistemas:

CentOS: ver
https://www.switch.ch/aai/guides/sp/installation/?os=centos7
https://spaces.at.internet2.edu/pages/viewpage.action?pageId=148570224

Ubuntu 18: ver
https://www.switch.ch/aai/guides/sp/installation/?os=ubuntu

Referencias:

https://wiki.shibboleth.net/confluence/display/SP3/Home
https://www.switch.ch/aai/guides/sp/
https://www.switch.ch/aai/guides/sp/installation/

https://wiki.shibboleth.net/confluence/display/SP3/Apache

La versión de Shibboleth SP disponible en los repositorios de Debian puede ser un poco obsoleta.
El repositorio de SWITCH (red académica de Suiza) tiene una versión mas actualizada, y documentación bastante completa.
En Debian 10 está disponible el SP versión 3, pero en versiones anteriores de Debian se recomienda usar el paquete de SWITCH.

1a. Instalación en Debian 10 usando paquete de Debian:

instalar libapache2-mod-shib2

1b. Instalación en Debian 8 o 9, usando repositorio de SWITCH:

apt-get install curl
curl -k -O http://pkg.switch.ch/switchaai/SWITCHaai-swdistrib.asc
gpg --with-fingerprint  SWITCHaai-swdistrib.asc
# verificar que el fingerprint de la clave del repositorio sea 294E 37D1 5415 6E00 FB96 D7AA 26C3 C469 15B7 6742
apt-key add SWITCHaai-swdistrib.asc
echo 'deb http://pkg.switch.ch/switchaai/debian jessie main' | tee /etc/apt/sources.list.d/SWITCHaai-swdistrib.list > /dev/null
apt-get update
apt-get install --install-recommends shibboleth

Notas para debian 9 con sp v3: (20190412)

De acuerdo al sitio de Switch, se debe habilitar el repositorio debian-backports, para eso se puede agregar en el sources.list:

deb http://deb.debian.org/debian stretch-backports main

luego:

sudo apt update
sudo apt install -t stretch-backports init-system-helpers libxerces-c3.2
sudo apt install --install-recommends shibboleth

2. Habilitar un Virtual Host con HTTPS

En forma obligatoria un SP debe ejecutar con HTTPS. Si no se tiene hablitado se puede crear un Virtual Host de la siguiente manera:

a2enmod ssl 
cd /etc/apache2/sites-available
cp default-ssl.conf shibsp1.conf
a2ensite shibsp1.conf
service apache2 reload

Sugerencia: verificar que cargue una pagina con HTTPS en un navegador.

También se puede ejecutar:

apache2ctl configtest

La salida deberia ser: Syntax OK

3. Verificación de estado

El SP tiene una página de estado.

Para verificar el estado se puede ejecutar:

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.60"/>

Ante cualquier cambio en la configuración de Shibboleth se debe reiniciar el proceso con los siguientes comando:

service shibd stop
service shibd start

Luego accediendo a la dirección https://<mihost-ejemplo.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://<mihost-ejemplo.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

attribute-map.xml - attribute-map.xml (4,3 KB) Emilio Penna, Jueves, 14 de Enero de 2016 19:33:21 -0300

metadata-idp-test-udelar.xml - Metadata del idp de test de udelar (20170612) (11,9 KB) Emilio Penna, Lunes, 12 de Junio de 2017 13:42:49 -0300