SPInstall
Versión 40 (Emilio Penna, Lunes, 11 de Mayo de 2020 15:02:47 -0300)
1 | 1 | h1. Instalación Shibboleth SP |
|
---|---|---|---|
2 | 1 | ||
3 | 40 | Emilio Penna | Actualizado: 2020-05-11 |
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. |