Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
Beide Seiten der vorigen Revision Vorhergehende Überarbeitung Nächste Überarbeitung | Vorhergehende Überarbeitung Nächste ÜberarbeitungBeide Seiten der Revision | ||
de:shibidp3prepare [2016/10/27 07:32] – Raoul Gunnar Borenius | de:shibidp3prepare [2016/10/27 07:42] – Raoul Gunnar Borenius | ||
---|---|---|---|
Zeile 12: | Zeile 12: | ||
[[de: | [[de: | ||
+ | =====Servlet Container===== | ||
- | ====Zertifikat(e)==== | + | [[de:shibidp3prepare-tomcat|Tomcat]] |
- | + | ||
- | Für HTTP Server sowie IdP (Signierung, | + | |
- | Zur Erstellung eines Zertifikatrequests siehe die [[https:// | + | |
==== HTTP Server ==== | ==== HTTP Server ==== | ||
Zeile 22: | Zeile 20: | ||
[[de: | [[de: | ||
- | =====SQL DBMS===== | + | ====SQL DBMS==== |
[[de: | [[de: | ||
- | =====Servlet Container===== | + | ====Zertifikat(e)==== |
- | ====Tomcat 8===== | + | |
- | ===CentOS 7=== | + | |
- | Siehe https:// | + | |
- | ===Debian 8=== | + | |
- | Die Tomcat-Version in Debian 8 leidet unter einem Bug, der in der Backports-Version behoben wurde. Wir empfehlen daher die Installation aus den Backports: | + | |
- | <code bash> | + | |
- | root@idp:~# apt-get install -t jessie-backports tomcat8 tomcat8-admin \ | + | |
- | | + | |
- | </ | + | |
- | Der IdP läuft als Teil von Tomcat natürlich auch mit der Unix-ID des Tomcat-Users. Sofern Sie SSL-Credentials | + | |
- | <code bash> | + | |
- | root@idp:~# usermod -aG ssl-cert tomcat8 | + | |
- | </ | + | |
- | Einige globale Java-Parameter müssen beim Tomcat-Start festgelegt werden. Das IdP-Servlet braucht Zugriff auf das Filesystem und benötigt mehr Speicher, als gemäß den Voreinstellungen vorgesehen ist. Weiterhin lohnt es sich, den Tomcat-Start durch einige zusätzliche Maßnahmen zu beschleunigen, | + | |
- | <file bash / | + | |
- | JAVA_OPTS=" | + | |
- | </ | + | |
- | Anmerkungen: | + | === Metadaten-Signatur === |
- | * Sofern Ihr IdP nicht unter / | + | |
- | Die Liste der " | + | |
- | <file properties / | + | |
- | # falls MySQL inklusive libmysql-java installiert wurde (s.o.), die Pfade entsprechend ergänzen, bei Postgres JDBC Treiber analog verfahren: | + | |
- | common.loader=" | + | |
- | # [...] | + | |
- | # Beschleunigung des Tomcat-Starts: | + | |
- | tomcat.util.scan.StandardJarScanFilter.jarsToSkip=\ | + | |
- | activation-1.1.jar, | + | |
- | antlr-2.7.7.jar, | + | |
- | aopalliance-1.0.jar, | + | |
- | bcprov-jdk15on-1.51.jar, | + | |
- | c3p0-0.9.2.1.jar, | + | |
- | commons-codec-1.10.jar, | + | |
- | commons-collections-3.2.1.jar, | + | |
- | commons-compiler-2.7.8.jar, | + | |
- | commons-lang-2.4.jar, | + | |
- | cryptacular-1.0.jar, | + | |
- | dom4j-1.6.1.jar, | + | |
- | guava-18.0.jar, | + | |
- | hibernate-commons-annotations-4.0.4.Final.jar, | + | |
- | hibernate-core-4.3.5.Final.jar, | + | |
- | hibernate-entitymanager-4.3.5.Final.jar, | + | |
- | hibernate-jpa-2.1-api-1.0.0.Final.jar, | + | |
- | httpclient-4.3.6.jar, | + | |
- | httpclient-cache-4.3.6.jar, | + | |
- | httpcore-4.3.3.jar, | + | |
- | idp-attribute-api-3.1.1.jar, | + | |
- | idp-attribute-filter-api-3.1.1.jar, | + | |
- | idp-attribute-filter-impl-3.1.1.jar, | + | |
- | idp-attribute-filter-spring-3.1.1.jar, | + | |
- | idp-attribute-resolver-api-3.1.1.jar, | + | |
- | idp-attribute-resolver-impl-3.1.1.jar, | + | |
- | idp-attribute-resolver-spring-3.1.1.jar, | + | |
- | idp-authn-api-3.1.1.jar, | + | |
- | idp-authn-impl-3.1.1.jar, | + | |
- | idp-cas-api-3.1.1.jar, | + | |
- | idp-cas-impl-3.1.1.jar, | + | |
- | idp-consent-3.1.1.jar, | + | |
- | idp-core-3.1.1.jar, | + | |
- | idp-profile-api-3.1.1.jar, | + | |
- | idp-profile-impl-3.1.1.jar, | + | |
- | idp-profile-spring-3.1.1.jar, | + | |
- | idp-saml-api-3.1.1.jar, | + | |
- | idp-saml-impl-3.1.1.jar, | + | |
- | idp-schema-3.1.1.jar, | + | |
- | idp-session-api-3.1.1.jar, | + | |
- | idp-session-impl-3.1.1.jar, | + | |
- | idp-ui-3.1.1.jar, | + | |
- | jandex-1.1.0.Final.jar, | + | |
- | janino-2.7.8.jar, | + | |
- | javassist-3.18.1-GA.jar, | + | |
- | java-support-7.1.1.jar, | + | |
- | javax.json-1.0.4.jar, | + | |
- | javax.json-api-1.0.jar, | + | |
- | jboss-logging-3.1.3.GA.jar, | + | |
- | jboss-logging-annotations-1.2.0.Beta1.jar, | + | |
- | jboss-transaction-api_1.2_spec-1.0.0.Final.jar, | + | |
- | jcl-over-slf4j-1.7.10.jar, | + | |
- | jcommander-1.47.jar, | + | |
- | joda-time-2.7.jar, | + | |
- | jsr305-3.0.0.jar, | + | |
- | ldaptive-1.0.6.jar, | + | |
- | logback-classic-1.1.2.jar, | + | |
- | logback-core-1.1.2.jar, | + | |
- | mail-1.4.7.jar, | + | |
- | mchange-commons-java-0.2.3.4.jar, | + | |
- | ognl-2.6.11.jar, | + | |
- | opensaml-core-3.1.1.jar, | + | |
- | opensaml-messaging-api-3.1.1.jar, | + | |
- | opensaml-messaging-impl-3.1.1.jar, | + | |
- | opensaml-profile-api-3.1.1.jar, | + | |
- | opensaml-profile-impl-3.1.1.jar, | + | |
- | opensaml-saml-api-3.1.1.jar, | + | |
- | opensaml-saml-impl-3.1.1.jar, | + | |
- | opensaml-security-api-3.1.1.jar, | + | |
- | opensaml-security-impl-3.1.1.jar, | + | |
- | opensaml-soap-api-3.1.1.jar, | + | |
- | opensaml-soap-impl-3.1.1.jar, | + | |
- | opensaml-storage-api-3.1.1.jar, | + | |
- | opensaml-storage-impl-3.1.1.jar, | + | |
- | opensaml-xmlsec-api-3.1.1.jar, | + | |
- | opensaml-xmlsec-impl-3.1.1.jar, | + | |
- | slf4j-api-1.7.10.jar, | + | |
- | spring-aop-4.1.5.RELEASE.jar, | + | |
- | spring-beans-4.1.5.RELEASE.jar, | + | |
- | spring-binding-2.4.1.RELEASE.jar, | + | |
- | spring-context-4.1.5.RELEASE.jar, | + | |
- | spring-context-support-4.1.5.RELEASE.jar, | + | |
- | spring-core-4.1.5.RELEASE.jar, | + | |
- | spring-expression-4.1.5.RELEASE.jar, | + | |
- | spring-extensions-5.1.1.jar, | + | |
- | spring-jdbc-4.1.5.RELEASE.jar, | + | |
- | spring-js-2.4.1.RELEASE.jar, | + | |
- | spring-js-resources-2.4.1.RELEASE.jar, | + | |
- | spring-orm-4.1.5.RELEASE.jar, | + | |
- | spring-tx-4.1.5.RELEASE.jar, | + | |
- | spring-web-4.1.5.RELEASE.jar, | + | |
- | spring-webflow-2.4.1.RELEASE.jar, | + | |
- | spring-webmvc-4.1.5.RELEASE.jar, | + | |
- | spymemcached-2.11.4.jar, | + | |
- | stax2-api-3.1.4.jar, | + | |
- | stax-api-1.0-2.jar, | + | |
- | velocity-1.7.jar, | + | |
- | woodstox-core-asl-4.4.1.jar, | + | |
- | xml-apis-1.0.b2.jar, | + | |
- | xmlsec-2.0.3.jar | + | |
- | </ | + | |
- | In server.xml | ||
- | |||
- | * aus Sicherheitsgründen den Default-Port 8080 abschalten | ||
- | * auf Port 2009 den AJP-Connector aktivieren über den der Webserver Anfragen weiterleitet | ||
- | |||
- | <file xml / | ||
- | <Server port=" | ||
- | < | ||
- | <Service name=" | ||
- | <!-- ... --> | ||
- | <!-- non-SSL/TLS HTTP/1.1 Connector on port 8080 abschalten --> | ||
- | <!-- < | ||
- | | ||
- | | ||
- | <!-- ... --> | ||
- | <!-- Define an AJP 1.3 Connector on port 8009 --> | ||
- | < | ||
- | | ||
- | | ||
- | | ||
- | | ||
- | | ||
- | | ||
- | | ||
- | <!-- ... --> | ||
- | </ | ||
- | <!-- ... --> | ||
- | </ | ||
- | </ | ||
- | Außerdem (" | ||
- | <file xml / | ||
- | < | ||
- | <!-- ... --> | ||
- | <!-- Uncomment this to disable session persistence across Tomcat restarts --> | ||
- | <Manager pathname="" | ||
- | <!-- ...--> | ||
- | </ | ||
- | </ | ||
- | Um das IdP-Servlet in Tomcat zu aktivieren, erstellen Sie folgende Datei im Tomcat-localhost-Context: | ||
- | <code xml / | ||
- | <Context docBase="/ | ||
- | | ||
- | | ||
- | | ||
- | | ||
- | </ | ||
- | |||
- | Als letztes muss noch die Java Server Tag Libarary heruntergeladen und in das Tomcat-Verzeichnis $CATALINA_BASE/ | ||
- | |||
- | <code bash> | ||
- | root@idp:~# cd / | ||
- | root@idp:/ | ||
- | root@idp:/ | ||
- | </ | ||
- | |||
- | |||
- | |||
- | ====Tomcat 7===== | ||
- | |||
- | Wir empfehlen Tomcat8, siehe oben. Falls Sie noch Tomcat7 einsetzen ist das folgende vielleicht hilfreich: | ||
- | |||
- | Sollte es beim Neustart nach Installation und Konfiguration des IdP folgender Fehlermeldung kommen:\\ | ||
- | > " | ||
- | ... so muss die Tomcat-eigene web.xml angepasst werden. Siehe hierzu http:// | ||
- | Bei Debian/ | ||
- | |||
- | ===RHEL=== | ||
- | EPEL installieren | ||
- | |||
- | RHEL/CentOS 6 32-Bit | ||
- | <code bash> | ||
- | wget http:// | ||
- | rpm -ivh epel-release-6-8.noarch.rpm | ||
- | </ | ||
- | RHEL/CentOS 6 64-Bit | ||
- | <code bash> | ||
- | wget http:// | ||
- | rpm -ivh epel-release-6-8.noarch.rpm | ||
- | </ | ||
- | EPEL verifizieren | ||
- | <code bash> | ||
- | yum repolist | ||
- | </ | ||
- | EPEL aktivieren | ||
- | <code bash> | ||
- | yum-config-manager --enable epel | ||
- | </ | ||
- | <code bash> | ||
- | yum install tomcat | ||
- | </ | ||
- | =====Kleinkram===== | ||
- | ====Debian 8==== | ||
Um die Signatur der Föderationsmetadaten validieren zu können müssen Sie das entsprechende Zertfikat von [[https:// | Um die Signatur der Föderationsmetadaten validieren zu können müssen Sie das entsprechende Zertfikat von [[https:// | ||
<code bash> | <code bash> | ||
Zeile 253: | Zeile 34: | ||
root@idp:~# wget https:// | root@idp:~# wget https:// | ||
</ | </ | ||
+ | |||
+ | === Openssl === | ||
+ | |||
Falls noch nicht geschehen, OpenSSL installieren (um später Zertifkat auf dem System verwalten zu können): | Falls noch nicht geschehen, OpenSSL installieren (um später Zertifkat auf dem System verwalten zu können): | ||
+ | |||
+ | == Debian/ | ||
+ | |||
<code bash> | <code bash> | ||
root@idp:~# apt-get install openssl | root@idp:~# apt-get install openssl | ||
</ | </ | ||
- | Wer keine Lust hat, später bei jedem install JAVA_HOME neu zu setzen, kann dies auch im jeweiligen home Verzeichnis in .bashrc definieren: | ||
- | <file bash / | ||
- | # ... | ||
- | export JAVA_HOME=/ | ||
- | </ | ||
- | (oder für alle User in / | ||
- | =====Shibboleth Identity Provider===== | + | Für HTTP Server sowie IdP (Signierung, |
- | ====Debian 8==== | + | Zur Erstellung eines Zertifikatrequests siehe die [[https:// |
+ | |||
+ | ====Shibboleth Identity Provider==== | ||
Shib IdP herunterladen, | Shib IdP herunterladen, | ||
<code bash> | <code bash> | ||
Zeile 277: | Zeile 61: | ||
root@idp:~# unzip shibboleth-identity-provider-3.x.x.zip | root@idp:~# unzip shibboleth-identity-provider-3.x.x.zip | ||
</ | </ | ||
+ | |||
Falls geplant ist, mehrere IdPs parallel zu betreiben, empfiehlt es sich, pro Instanz ein eigenes Installations-Quell-Verzeichnis anzulegen: | Falls geplant ist, mehrere IdPs parallel zu betreiben, empfiehlt es sich, pro Instanz ein eigenes Installations-Quell-Verzeichnis anzulegen: | ||
<code bash> | <code bash> |