SPInstall

Versión 39 (Emilio Penna, Lunes, 11 de Mayo de 2020 15:02:06 -0300)

1 1
h1. Instalación Shibboleth SP
2 1
3 24 Emilio Penna
Actualizado: 2018-02-06
4 1
5 25 Emilio Penna
*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.
6 3 Emilio Penna
7 36 Emilio Penna
*Otros sistemas:*  
8 1
9 36 Emilio Penna
CentOS: ver 
10 36 Emilio Penna
https://www.switch.ch/aai/guides/sp/installation/?os=centos7
11 36 Emilio Penna
https://spaces.at.internet2.edu/pages/viewpage.action?pageId=148570224
12 36 Emilio Penna
13 36 Emilio Penna
Ubuntu 18: ver
14 36 Emilio Penna
https://www.switch.ch/aai/guides/sp/installation/?os=ubuntu
15 36 Emilio Penna
16 36 Emilio Penna
17 4 Emilio Penna
Referencias:
18 4 Emilio Penna
19 36 Emilio Penna
https://wiki.shibboleth.net/confluence/display/SP3/Home
20 1
https://www.switch.ch/aai/guides/sp/
21 4 Emilio Penna
https://www.switch.ch/aai/guides/sp/installation/
22 4 Emilio Penna
23 36 Emilio Penna
https://wiki.shibboleth.net/confluence/display/SP3/Apache
24 1
25 1
26 1
27 39 Emilio Penna
La versión de Shibboleth SP disponible en los repositorios de Debian puede ser un poco obsoleta. 
28 39 Emilio Penna
El repositorio de SWITCH (red académica de Suiza) tiene una versión mas actualizada, y documentación bastante completa.
29 39 Emilio Penna
En Debian 10 está disponible el SP  versión 3, pero en versiones anteriores de Debian se recomienda usar el paquete de SWITCH.
30 1
31 1
32 39 Emilio Penna
h3. 1a. Instalación en Debian 10 usando paquete de Debian:
33 1
34 39 Emilio Penna
35 39 Emilio Penna
instalar libapache2-mod-shib2 
36 39 Emilio Penna
37 39 Emilio Penna
38 39 Emilio Penna
39 39 Emilio Penna
40 39 Emilio Penna
h3. 1b. Instalación en Debian 8 o 9, usando repositorio de SWITCH: 
41 39 Emilio Penna
42 36 Emilio Penna
43 20 Emilio Penna
<pre>
44 20 Emilio Penna
apt-get install curl
45 1
curl -k -O http://pkg.switch.ch/switchaai/SWITCHaai-swdistrib.asc
46 20 Emilio Penna
gpg --with-fingerprint  SWITCHaai-swdistrib.asc
47 20 Emilio Penna
# verificar que el fingerprint de la clave del repositorio sea 294E 37D1 5415 6E00 FB96 D7AA 26C3 C469 15B7 6742
48 21 Emilio Penna
apt-key add SWITCHaai-swdistrib.asc
49 1
echo 'deb http://pkg.switch.ch/switchaai/debian jessie main' | tee /etc/apt/sources.list.d/SWITCHaai-swdistrib.list > /dev/null
50 1
apt-get update
51 33 Emilio Penna
apt-get install --install-recommends shibboleth
52 31 Emilio Penna
</pre>
53 35 Emilio Penna
54 31 Emilio Penna
*Notas para debian 9 con sp v3: (20190412)*
55 31 Emilio Penna
56 32 Emilio Penna
De acuerdo al sitio de Switch, se debe habilitar el repositorio debian-backports, para eso se puede agregar en el sources.list:
57 31 Emilio Penna
58 32 Emilio Penna
<pre>
59 31 Emilio Penna
deb http://deb.debian.org/debian stretch-backports main
60 31 Emilio Penna
</pre>
61 31 Emilio Penna
62 31 Emilio Penna
luego:
63 31 Emilio Penna
64 31 Emilio Penna
<pre>
65 31 Emilio Penna
sudo apt update
66 1
sudo apt install -t stretch-backports init-system-helpers libxerces-c3.2
67 33 Emilio Penna
sudo apt install --install-recommends shibboleth
68 33 Emilio Penna
</pre>
69 33 Emilio Penna
70 31 Emilio Penna
71 1
72 1
h3. 2. Habilitar un Virtual Host con HTTPS
73 1
74 1
En forma obligatoria un SP debe ejecutar con HTTPS. Si no se tiene hablitado se puede crear un Virtual Host de la siguiente manera:
75 1
76 1
<pre>
77 1
a2enmod ssl 
78 23 Emilio Penna
cd /etc/apache2/sites-available
79 23 Emilio Penna
cp default-ssl.conf shibsp1.conf
80 23 Emilio Penna
a2ensite shibsp1.conf
81 1
service apache2 reload
82 23 Emilio Penna
</pre>
83 1
84 24 Emilio Penna
Sugerencia: verificar que cargue una pagina con HTTPS en un navegador.
85 1
86 24 Emilio Penna
También se puede ejecutar:
87 24 Emilio Penna
<pre>
88 24 Emilio Penna
apache2ctl configtest
89 24 Emilio Penna
</pre>
90 24 Emilio Penna
La salida deberia ser: Syntax OK
91 24 Emilio Penna
92 24 Emilio Penna
93 1
h3. 3. Verificación de estado
94 1
95 15 Emilio Penna
El SP tiene una página de estado.
96 1
97 24 Emilio Penna
Para verificar el estado se puede ejecutar:
98 1
99 1
<pre>
100 1
curl -k https://127.0.0.1/Shibboleth.sso/Status
101 1
</pre>
102 1
103 1
104 1
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:
105 1
106 1
<pre>
107 1
<code class="xml">
108 1
<Handler type="Status" Location="/Status" acl="127.0.0.1 ::1 164.73.129.60"/>
109 1
</code>
110 1
</pre>
111 1
112 1
113 1
Ante cualquier cambio en la configuración de Shibboleth se debe reiniciar el proceso con los siguientes comando:
114 1
115 1
<pre>
116 1
service shibd stop
117 1
service shibd start
118 1
</pre>
119 1
120 25 Emilio Penna
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.
121 24 Emilio Penna
También puede ser con wget en localhost:  wget https://localhost:443//Shibboleth.sso/Status --no-check-certificate 
122 24 Emilio Penna
123 24 Emilio Penna
124 1
Otros chequeos:
125 1
126 25 Emilio Penna
Acceder a 
127 1
https://<mihost-ejemplo.edu.uy>/Shibboleth.sso/Session
128 1
129 1
Deberia verse una pagina que dice "A valid session was not found"
130 1
131 1
Este mensaje indica que el módulo Shibboleth ha sido cargado correctamente por el webserver.