Installation IdP 5.1.2
Laden Sie die aktuelle Version des Shibboleth IdP herunter, prüfen Sie die Signatur und entpacken Sie das Archiv. Die aktuelle IdP-Version findet sich stets unter https://shibboleth.net/downloads/identity-provider/latest/.
Download
wget -P /opt/install https://shibboleth.net/downloads/identity-provider/archive/5.1.2/shibboleth-identity-provider-5.1.2.tar.gz wget -P /opt/install https://shibboleth.net/downloads/identity-provider/archive/5.1.2/shibboleth-identity-provider-5.1.2.tar.gz.sha256 wget -P /opt/install https://shibboleth.net/downloads/identity-provider/archive/5.1.2/shibboleth-identity-provider-5.1.2.tar.gz.asc
Entpacken
$ gpg --verify /opt/install/shibboleth-identity-provider-5.1.2.tar.gz.asc /opt/install/shibboleth-identity-provider-5.1.2.tar.gz cd /opt/install && sha256sum -c shibboleth-identity-provider-5.1.2.tar.gz.sha256 tar -xzf /opt/install/shibboleth-identity-provider-5.1.2.tar.gz -C /opt/install/
Interaktiven Installer aufrufen
Das Installationsskript findet sich unter /opt/install/shibboleth-identity-provider-5.x.x/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.
/opt/install/shibboleth-identity-provider-5.1.2/bin/install.sh
Tomcat 9 entfernen
systemctl stop tomcat9.service systemctl disable tomcat9.service apt remove tomcat9 apt purge libtaglibs-standard-impl-java* libtaglibs-standard-spec-java libtomcat9* tomcat9 rm -r /etc/tomcat9/ /var/lib/tomcat9/
tomcat 10 aktivieren
systemctl enable tomcat10.service systemctl start tomcat10.service
Plugins updaten
Sie können sich mit folgendem Befehl alle installierten und deren Support Level anzeigen lassen:
/opt/shibboleth-idp/bin/plugin.sh -fl
Output:
Plugin: net.shibboleth.plugin.storage.jdbc Current Version: 1.0.3 Versions 1.0.4: Min=4.1.0 Max=5.0.0 Support level: Current 1.0.1: Min=4.1.0 Max=5.0.0 Support level: OutOfDate 1.0.0: Min=4.1.0 Max=5.0.0 Support level: OutOfDate 1.0.3: Min=4.1.0 Max=5.0.0 Support level: OutOfDate 1.0.2: Min=4.1.0 Max=5.0.0 Support level: OutOfDate 2.0.0: Min=5.0.0 Max=6.0.0 Support level: Current
Verfügbare Updates für installierte Plugins können Sie sich mit der Option “-L” anzeigen lassen:
/opt/shibboleth-idp/idp-dev.dfn.de/bin/plugin.sh -L
Output:
Plugin net.shibboleth.idp.plugin.nashorn: version 1.1.0 available for install Plugin net.shibboleth.plugin.storage.jdbc: Installed version 1.0.3: Update to 1.0.4 available
Für Shibboleth IdP 5.x sind die obigen Plugins mindestens in Version 2.0.0 erforderlich. Ein Plugin-Update kann erst nach dem IdP-Update erfolgen.
/opt/shibboleth-idp/bin/plugin.sh -u net.shibboleth.plugin.storage.jdbc /opt/shibboleth-idp/bin/plugin.sh -u net.shibboleth.idp.plugin.nashorn
Aktuelle Version von jakarta jstl herunterladen:
$ wget -P /opt/shibboleth-idp/edit-webapp/WEB-INF/lib/ https://repo.maven.apache.org/maven2/org/glassfish/web/jakarta.servlet.jsp.jstl/3.0.1/jakarta.servlet.jsp.jstl-3.0.1.jar $ wget -P /opt/shibboleth-idp/edit-webapp/WEB-INF/lib/ https://repo.maven.apache.org/maven2/jakarta/servlet/jsp/jstl/jakarta.servlet.jsp.jstl-api/3.0.0/jakarta.servlet.jsp.jstl-api-3.0.0.jar
Danach build erneut ausführen und Tomcat neu starten:
$ sudo /opt/shibboleth-idp/bin/build.sh -Didp.target.dir=/opt/shibboleth-idp $ sudo systemctl restart tomcat10.service
Deprecation Warnings
Duo
Shibboleth IdP unterstützt „legacy“ Duo nicht mehr - die Konfigurationsdateien, sind jedoch noch vorhanden - und lösen eine Warnung aus:
WARN [DEPRECATED:113] - property 'idp.authn.Duo.supportedPrincipals' is no longer supported
So lösen Sie die Warnung auf: Auskommentieren der Property 'idp.authn.Duo.supportedPrincipals' in /opt/shibboleth-idp/conf/authn/authn.properties
Liberty profile
WARN [DEPRECATED:123] - Spring bean 'Liberty.SSOS or Liberty.SSOS.MDDriven', (relying-party.xml): This will be removed in the next major version of this software; replacement is (none)
Es handelt sich hier um ein ungenutztes SSO Profil. Bearbeiten Sie die Datei /opt/shibboleth-idp/conf/relying-party.xml mit einem Editor Ihrer Wahl (z.B. vi) und entfernen Sie alle beans namens Liberty.SSOS oder Liberty.SSOS.MDDriven.
httpClient
WARN [DEPRECATED:113] - property 'idp.httpclient.filecaching.cacheDirectory' is no longer supported
Die Property idp.httpclient.filecaching.cacheDirectory wird nicht benutzt und kann aus der Datei /opt/shibboleth-icp/conf/services.properties gelöscht werden.
RelyingPartyContext
WARN [DEPRECATED:130] - Java class 'net.shibboleth.idp.profile.context.RelyingPartyContext': This will be removed in the next major version of this software; replacement is net.shibboleth.profile.context.RelyingPartyContext
Es handelt sich hier um eine Warnung bzgl. der Login- und Logout-Templates. Diese Warnung erscheint erst nachdem die Login- oder Logout-Seite besucht wurden. Die Templates verweisen unter einem veralteten Namen auf den RelyingPartyContext. Bearbeiten Sie die Dateien /opt/shibboleth-idp/views/login.vm und /opt/shibboleth-idp/views/logout.vm und ändern Sie den folgenden Eintrag in beiden Dateien.
alt:
#set ($rpContext = $profileRequestContext.getSubcontext("net.shibboleth.idp.profile.context.RelyingPartyContext"))
neu:
#set ($rpContext = $profileRequestContext.getSubcontext("net.shibboleth.profile.context.RelyingPartyContext"))
Anschließend starten Sie den Tomcat neu:
$ sudo systemctl restart tomcat10.service