Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen Revision Vorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
de:shibidp3install [2018/11/28 14:19]
Silke Meyer [Vorbereitung Metadaten]
de:shibidp3install [2019/09/12 11:08] (aktuell)
Silke Meyer [IdP Status URL]
Zeile 1: Zeile 1:
-======Installation Shibboleth IdP 3.x======+======Installation Shibboleth IdP 3.4======
  
 ===== IdP herunterladen ===== ===== IdP herunterladen =====
Zeile 7: Zeile 7:
 root@idp-dev:​~#​ mkdir /​opt/​install root@idp-dev:​~#​ mkdir /​opt/​install
 root@idp-dev:​~#​ cd /​opt/​install root@idp-dev:​~#​ cd /​opt/​install
-root@idp-dev:/​opt/​install#​ wget https://​shibboleth.net/​downloads/​identity-provider/​latest/​shibboleth-identity-provider-3.3.2.tar.gz +root@idp-dev:/​opt/​install#​ wget https://​shibboleth.net/​downloads/​identity-provider/​latest/​shibboleth-identity-provider-3.4.4.tar.gz 
-root@idp-dev:/​opt/​install#​ wget https://​shibboleth.net/​downloads/​identity-provider/​latest/​shibboleth-identity-provider-3.3.2.tar.gz.asc+root@idp-dev:/​opt/​install#​ wget https://​shibboleth.net/​downloads/​identity-provider/​latest/​shibboleth-identity-provider-3.4.4.tar.gz.asc
 root@idp-dev:/​opt/​install#​ wget https://​shibboleth.net/​downloads/​PGP_KEYS root@idp-dev:/​opt/​install#​ wget https://​shibboleth.net/​downloads/​PGP_KEYS
 root@idp-dev:/​opt/​install#​ gpg --import PGP_KEYS root@idp-dev:/​opt/​install#​ gpg --import PGP_KEYS
-root@idp-dev:/​opt/​install#​ gpg --verify shibboleth-identity-provider-3.3.2.tar.gz.asc shibboleth-identity-provider-3.3.2.tar.gz +root@idp-dev:/​opt/​install#​ gpg --verify shibboleth-identity-provider-3.4.4.tar.gz.asc shibboleth-identity-provider-3.4.4.tar.gz 
-root@idp-dev:/​opt/​install#​ tar -xzf shibboleth-identity-provider-3.3.2.tar.gz+root@idp-dev:/​opt/​install#​ tar -xzf shibboleth-identity-provider-3.4.4.tar.gz
 </​code>​ </​code>​
  
Zeile 20: Zeile 20:
  
 <code bash> <code bash>
-root@idp-dev:​~#​ cd /​opt/​install/​shibboleth-identity-provider-3.3.2+root@idp-dev:​~#​ cd /​opt/​install/​shibboleth-identity-provider-3.4.4
 </​code>​ </​code>​
 Das Installationsskript findet sich unter bin/​install.sh. Beim Ausführen werden die wichtigsten Angaben zum IdP abgefragt, wie der FQDN und das Zielverzeichnis,​ in das der IdP installiert werden soll. Der Default hierfür ist /​opt/​shibboleth-idp. Falls abweichend, muss der Pfad z.B. als idp.home Parameter beim Tomcat-Start angegeben werden, Details siehe  [[https://​wiki.shibboleth.net/​confluence/​display/​IDP30/​ApacheTomcat8#​ApacheTomcat8-RequiredConfigurationChanges|Dokumentation im Shibboleth Wiki]]. Das Installationsskript findet sich unter bin/​install.sh. Beim Ausführen werden die wichtigsten Angaben zum IdP abgefragt, wie der FQDN und das Zielverzeichnis,​ in das der IdP installiert werden soll. Der Default hierfür ist /​opt/​shibboleth-idp. Falls abweichend, muss der Pfad z.B. als idp.home Parameter beim Tomcat-Start angegeben werden, Details siehe  [[https://​wiki.shibboleth.net/​confluence/​display/​IDP30/​ApacheTomcat8#​ApacheTomcat8-RequiredConfigurationChanges|Dokumentation im Shibboleth Wiki]].
  
 Im Gegensatz zum IdP 2.x werden alle Anpassungen (IdP-Layout oder Einstellungen in der web.xml) lokal im Installationsverzeichnis gemacht und danach das build.sh-Script aufgerufen um das WAR-File zu aktualisieren. Im Gegensatz zum IdP 2.x werden alle Anpassungen (IdP-Layout oder Einstellungen in der web.xml) lokal im Installationsverzeichnis gemacht und danach das build.sh-Script aufgerufen um das WAR-File zu aktualisieren.
-Das Sourceverzeichnis /​opt/​install/​shibboleth-identity-provider-3.3.x wird also nach der Installation nicht mehr gebraucht.+Das Sourceverzeichnis /​opt/​install/​shibboleth-identity-provider-3.4.x wird also nach der Installation nicht mehr gebraucht.
  
 <code bash> <code bash>
-root@idp-dev:/​opt/​install/​shibboleth-identity-provider-3.3.2# JAVA_HOME=/​usr bin/​install.sh  +root@idp-dev:/​opt/​install/​shibboleth-identity-provider-3.4.4# JAVA_HOME=/​usr bin/​install.sh  
-Source (Distribution) Directory (press <​enter>​ to accept default: [/​opt/​install/​shibboleth-identity-provider-3.3.2]+Source (Distribution) Directory (press <​enter>​ to accept default: [/​opt/​install/​shibboleth-identity-provider-3.4.4]
  
 Installation Directory: [/​opt/​shibboleth-idp] Installation Directory: [/​opt/​shibboleth-idp]
Zeile 62: Zeile 62:
 </​code>​ </​code>​
  
-Die beiden abgefragten Passwörter werden in die IdP-Config geschrieben,​ müssen also nicht notiert oder gemerkt werden. Wählen Sie daher möglichst starke Passwörter (12 Zeichen aus Ziffern, ​Gross- und Klein-Buchstaben). Der IdP wird dann im angegebenen Zielverzeichnis installiert.+Die beiden abgefragten Passwörter werden in die IdP-Config geschrieben,​ müssen also nicht notiert oder gemerkt werden. Wählen Sie daher möglichst starke Passwörter (12 Zeichen aus Ziffern, ​Groß- und Klein-Buchstaben). Der IdP wird dann im angegebenen Zielverzeichnis installiert.
  
-Nachdem die IdP-Files installiert sind, versucht der Tomcat das Servlet automatisch zu starten (siehe Tomcat-Log). Das scheitert ​überlicherweise ​aber erstmal da einige Dateien für den Tomcat-User nicht lesbar abgelegt wurden. Korrigieren Sie dies mit:+Nachdem die IdP-Files installiert sind, versucht der Tomcat das Servlet automatisch zu starten (siehe Tomcat-Log). Das scheitert ​üblicherweise ​aber erstmal da einige Dateien für den Tomcat-User nicht lesbar abgelegt wurden. Korrigieren Sie dies mit:
  
 <code bash> <code bash>
-root@idp-dev:/​opt/​install/​shibboleth-identity-provider-3.3.2# cd /​opt/​shibboleth-idp +root@idp-dev:/​opt/​install/​shibboleth-identity-provider-3.4.4# cd /​opt/​shibboleth-idp 
-root@idp-dev:/​opt/​shibboleth-idp#​ chgrp -R tomcat8 ​conf credentials+root@idp-dev:/​opt/​shibboleth-idp#​ chgrp -R $( getent group | grep ^tomcat | cut -d ":"​ -f1 ) conf credentials
 root@idp-dev:/​opt/​shibboleth-idp#​ chmod -R g+r conf credentials root@idp-dev:/​opt/​shibboleth-idp#​ chmod -R g+r conf credentials
 </​code>​ </​code>​
  
-Ausserdem ​müssen Log-Verzeichnis und Metadata-Verzeichnis für den Tomcat-User schreibbar gemacht werden:+Außerdem ​müssen Log-Verzeichnis und Metadata-Verzeichnis für den Tomcat-User schreibbar gemacht werden:
  
 <code bash> <code bash>
-root@idp-dev:/​opt/​shibboleth-idp#​ chown tomcat8:tomcat8 ​logs metadata+root@idp-dev:/​opt/​shibboleth-idp#​ chown $( getent passwd | grep ^tomcat | cut -d ":" -f1 ):$( getent group | grep ^tomcat | cut -d ":"​ -f1 ) logs metadata
 </​code>​ </​code>​
 ====IdP Status URL==== ====IdP Status URL====
Zeile 81: Zeile 81:
 Zur Darstellung der Status-Seite muss Zur Darstellung der Status-Seite muss
  
-  * die Java Server ​Tag Library (JSTL) im Tomcat bereit stehen (siehe [[de:​shibidp3prepare-tomcat#​java_server_tag_library_jstl|Vorarbeiten]]). +  * die Java Standard ​Tag Library (JSTL) im Tomcat bereit stehen (siehe [[de:​shibidp3prepare-tomcat#​java_server_tag_library_jstl|Vorarbeiten]]). 
-  * die IdP Status URL für Ihr eigenes Netz und das Monitoring-Netz des DFN freigegeben werden:+  * die IdP Status URL für Ihr eigenes Netz und das Monitoring-Netz des DFN freigegeben werden. Damit das DFN-AAI-Monitoring nur auf die Status-Seite zugreifen kann, erstellen Sie eine separates ''<​entry>''​ Element mit der id ''​StatusAccessByIPAddress''​
  
 <file xml /​opt/​shibboleth-idp/​conf/​access-control.xml>​ <file xml /​opt/​shibboleth-idp/​conf/​access-control.xml>​
Zeile 90: Zeile 90:
         <entry key="​AccessByIPAddress">​         <entry key="​AccessByIPAddress">​
             <bean parent="​shibboleth.IPRangeAccessControl"​             <bean parent="​shibboleth.IPRangeAccessControl"​
-                p:​allowedRanges="#​{ {'​127.0.0.1/​32',​ '::​1/​128',​ '​IHR-NETZ/​IHRE-NM', '​193.174.247.0/​24',​ '​2001:​638:​206:​1::/​64'​} }" />+                p:​allowedRanges="#​{ {'​127.0.0.1/​32',​ '::​1/​128',​ '​IHR-NETZ/​IHRE-NETZMASKE'​} }" /> 
 +        </​entry>​ 
 +        <entry key="​StatusAccessByIPAddress">​ 
 +            <bean parent="​shibboleth.IPRangeAccessControl"​ 
 +                p:​allowedRanges="#​{ {'​127.0.0.1/​32',​ '::​1/​128',​ '​IHR-NETZ/​IHRE-NETZMASKE', '​193.174.247.0/​24',​ '​2001:​638:​206:​1::/​64'​} }" />
         </​entry>​         </​entry>​
     </​util:​map>​     </​util:​map>​
    <​!-- ... -->    <​!-- ... -->
 </​beans>​ </​beans>​
 +</​file>​
 +
 +Dieser Eintrag muss dann noch in ''​idp.properties''​ der Status-Seite zugewiesen werden:
 +
 +<file properties ./​conf/​idp.properties>​
 +idp.status.accessPolicy=StatusAccessByIPAddress
 </​file>​ </​file>​
  
 Jetzt kann Tomcat neu gestartet werden: Jetzt kann Tomcat neu gestartet werden:
 <code bash> <code bash>
-root@idp-dev:/​opt/​shibboleth-idp#​ systemctl restart ​tomcat8+root@idp-dev:/​opt/​shibboleth-idp#​ systemctl restart ​tomcat[8|9]
 </​code>​ </​code>​
 Dabei lassen Sie am besten in drei Terminalfenstern den Tomcat- und die beiden relevanten IdP-Logs mitlaufen: Dabei lassen Sie am besten in drei Terminalfenstern den Tomcat- und die beiden relevanten IdP-Logs mitlaufen:
  
 <code bash> <code bash>
-root@idp-dev:/​opt/​shibboleth-idp#​ tail -f /var/log/tomcat8/​catalina.out+root@idp-dev:/​opt/​shibboleth-idp#​ tail -f /var/log/tomcat[8|9]/​catalina.out
 </​code>​ </​code>​
  
Zeile 114: Zeile 124:
 </​code>​ </​code>​
  
-Finden sich dort keine Fehler ist der IdP erfolgreich gestartet. Überprüfen Sie als erstes ob+Finden sich dort keine Fehlerist der IdP erfolgreich gestartet. Überprüfen Sie als erstes ob
 sie die Status-Seite sehen können: sie die Status-Seite sehen können:
  
  • Zuletzt geändert: vor 12 Monaten