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:certificates [2023/01/23 15:28] – ausführlicher Zertifikatstausch bei Wechsel des privkey Silke Meyer | de:certificates [2023/04/13 17:48] – Wolfgang Pempe | ||
---|---|---|---|
Zeile 1: | Zeile 1: | ||
- | ~~NOTOC~~ | ||
====== Zertifikate ====== | ====== Zertifikate ====== | ||
- | {{INLINETOC 2}} | + | |
===== Zertifikate für die SAML-basierte Kommunikation ===== | ===== Zertifikate für die SAML-basierte Kommunikation ===== | ||
Zeile 9: | Zeile 8: | ||
**Generell gilt:** Entities mit ungültigen, | **Generell gilt:** Entities mit ungültigen, | ||
</ | </ | ||
+ | |||
+ | \\ | ||
==== Informationen für Identity Provider / Attribute Authorities ==== | ==== Informationen für Identity Provider / Attribute Authorities ==== | ||
Siehe unter [[de: | Siehe unter [[de: | ||
+ | |||
+ | \\ | ||
==== Informationen für Service Provider ==== | ==== Informationen für Service Provider ==== | ||
Zeile 19: | Zeile 22: | ||
=== Zertifikate der DFN-PKI bzw. DFN-Verein Community PKI=== | === Zertifikate der DFN-PKI bzw. DFN-Verein Community PKI=== | ||
- | Für die SAML-basierte Kommunikation empfehlen sich **3 Jahre gültige Zertifikate aus der [[https:// | + | Für die SAML-basierte Kommunikation empfehlen sich **39 Monate |
Wenn Sie berechtigt sind, Zertifikate von der DFN-PKI zu beantragen, wählen Sie bei der Beantragung bitte das Profil " | Wenn Sie berechtigt sind, Zertifikate von der DFN-PKI zu beantragen, wählen Sie bei der Beantragung bitte das Profil " | ||
Zeile 32: | Zeile 35: | ||
Die dritte Möglichkeit ist die Verwendung von selbst-signierten Zertifikaten mit einer Gültigkeitsdauer von maximal 39 Monaten. Wir empfehlen zur korrekten Erstellung die Dokumentation der [[https:// | Die dritte Möglichkeit ist die Verwendung von selbst-signierten Zertifikaten mit einer Gültigkeitsdauer von maximal 39 Monaten. Wir empfehlen zur korrekten Erstellung die Dokumentation der [[https:// | ||
- | \\ | + | \\ |
=== Zertifikate gängiger Zertifizierungsstellen === | === Zertifikate gängiger Zertifizierungsstellen === | ||
Alternativ können Zertifikate aus CAs genutzt werden, die in den gängigen Standardbrowsern (Google Chrome, Firefox, Microsoft Edge) vorinstalliert sind. | Alternativ können Zertifikate aus CAs genutzt werden, die in den gängigen Standardbrowsern (Google Chrome, Firefox, Microsoft Edge) vorinstalliert sind. | ||
- | |||
- | \\ | ||
<callout color="# | <callout color="# | ||
Eine Ausnahme von den o.g. Regeln gilt bei SPs, die bereits in anderen Föderationen (mit anderen Zertifikats-Policies) registriert sind. In diesem Fall können die dort verwendeten Zertifikate auch für die DFN-AAI genutzt werden, auch wenn diese länger gültig sind. | Eine Ausnahme von den o.g. Regeln gilt bei SPs, die bereits in anderen Föderationen (mit anderen Zertifikats-Policies) registriert sind. In diesem Fall können die dort verwendeten Zertifikate auch für die DFN-AAI genutzt werden, auch wenn diese länger gültig sind. | ||
</ | </ | ||
+ | |||
+ | \\ | ||
+ | |||
+ | === Vorsicht bei der Verwendung von Wildcard-Zertifikaten! === | ||
+ | Da Wildcard-Zertifikate für eine ganze Subdomain gelten und daher für mehrere Entities gleichzeitig verwendet werden können, ist der potentielle Schaden bei einer Kompromittierung des privaten Schlüssels deutlich höher als bei Zertifikaten für genau spezifizierte FQDNs. Daher sollten Wildcard-Zertifikate in der DFN-AAI nur verwendet werden, wenn das Einsatzszenario dies technisch erzwingt. Beispielsweise existieren insbesondere im Bibliotheksumfeld Softwaresysteme, | ||
+ | Ein und dasselbe Wildcard-Zertifikat sollte nicht auf verschiedenen Servern mit unterschiedlichen Diensten, Einsatzzwecken oder Schutzklassen verwendet werden. Aufgrund des höheren Schadenspotentials bei Kompromittierung sind Wildcard-Zertifikate kein probates Mittel der Arbeitsersparnis bei der Beantragung und dem Deployment von Zertifikaten. | ||
\\ | \\ | ||
- | + | Wildcard-Zertifikat werden | |
- | === Bitte nicht verwenden === | + | |
- | + | ||
- | == Wildcard-Zertifikate == | + | |
- | Die Nutzung von Wildcards | + | |
\\ | \\ | ||
- | == Letsencrypt == | + | === Keine Letsencrypt-Zertifikate === |
Für die Signierung und Verschlüsselung der SAML-Komunikation raten wir dringend von Letsenycrpt-Zertifikaten ab, da diese nur eine Gültigkeit von 90 Tagen haben. Ein Zertifikats-Rollover müsste jedes Mal manuell in der Metadatenverwaltung erfolgen. Auch die SP-Konfiguration muss beim Rollover 2x geändert werden. Wir empfehlen daher den Einsatz selbst-signierter Zertifikate oder solcher aus der DFN-Verein Community PKI (siehe oben). | Für die Signierung und Verschlüsselung der SAML-Komunikation raten wir dringend von Letsenycrpt-Zertifikaten ab, da diese nur eine Gültigkeit von 90 Tagen haben. Ein Zertifikats-Rollover müsste jedes Mal manuell in der Metadatenverwaltung erfolgen. Auch die SP-Konfiguration muss beim Rollover 2x geändert werden. Wir empfehlen daher den Einsatz selbst-signierter Zertifikate oder solcher aus der DFN-Verein Community PKI (siehe oben). | ||
+ | |||
+ | \\ | ||
**Nächster Schritt:** [[de: | **Nächster Schritt:** [[de: | ||
- | \\ | + | ===== Zertifikatstausch |
- | + | ||
- | ==== Zertifikatstausch ==== | + | |
Vielen Dank an die Schweizer Kolleg*innen für die ausführliche englischsprachige [[https:// | Vielen Dank an die Schweizer Kolleg*innen für die ausführliche englischsprachige [[https:// | ||
Wenn Sie ablaufende Zertifikate auf Ihrem AAI-Systemen austauschen müssen, gehen Sie wie folgt vor: | Wenn Sie ablaufende Zertifikate auf Ihrem AAI-Systemen austauschen müssen, gehen Sie wie folgt vor: | ||
- | === Schritt | + | ==== 1. Was muss getauscht werden? |
Stellen Sie fest, ob es um die Webserver-Zertifikate oder um die Zertifikate für die SAML-basierte Kommunikation geht. Das kann, muss aber nicht dasselbe Zertifikat sein. | Stellen Sie fest, ob es um die Webserver-Zertifikate oder um die Zertifikate für die SAML-basierte Kommunikation geht. Das kann, muss aber nicht dasselbe Zertifikat sein. | ||
- | === Schritt | + | ==== 2. Beschaffung eines neuen Zertifikates ==== |
- | === -- DFN-PKI | + | siehe oben |
- | Bei Fragen zur Erstellung von privaten Schlüsseln und Zertifikatsanträgen, | + | |
- | + | ||
- | * Sie können Ihren alten privaten Schlüssel weiterverwenden, | + | |
- | user@host: | + | |
- | </ | + | |
- | * Erstellen Sie einen Zertifikatsantrag (Certificate Signing Request, csr):< | + | |
- | user@host: | + | |
- | # Sie werden Folgendes abgefragt, evtl. befüllt mit Vorgaben aus Ihrer / | + | |
- | Country Name (2 letter code) [DE]: | + | |
- | State or Province Name (full name) []: <== Bundesland | + | |
- | Locality Name (eg, city) []: <== Stadt | + | |
- | Organization Name (eg, company) []: < | + | |
- | Organizational Unit Name (eg, section) []: <== ggf. Abteilung o.ä. | + | |
- | Common Name (eg, YOUR name) []: | + | |
- | A challenge password []: | + | |
- | An optional company name []: | + | |
- | </ | + | |
- | * Geben Sie diesen Zertifikatsantrag im .pem-Format bei der DFN-PKI ein. Wählen Sie das Profil " | + | |
- | * Sie bekommen Ihr neues Zertifikat per E-Mail von der DFN-PKI. | + | |
- | + | ||
- | === -- Sonstige Zertifizierungsstellen bzw. CAs === | + | |
- | Konsultieren Sie hierzu die Dokumentation des [[# | + | |
- | === -- Selbst-signierte Zertifikate === | ||
- | Selbst-signierte Zertifikate sind ausschließlich für die SAML-basierte Kommunikation geeignet! Sowohl Shibboleth IdP als auch Shibboleth SP werden mit einem '' | ||
- | * [[https:// | ||
- | * [[https:// | ||
- | * [[https:// | ||
- | === Schritt | + | ==== 3. Ggf. Zertifikat am Webserver tauschen |
* Ersetzen Sie die alten, in der Webserverkonfiguration eingetragenen Dateien durch das neue Zertifikat, den privaten Schlüssel und die Zertifikatskette. (Unten auf dieser Seite ist erklärt, wie Sie die [[https:// | * Ersetzen Sie die alten, in der Webserverkonfiguration eingetragenen Dateien durch das neue Zertifikat, den privaten Schlüssel und die Zertifikatskette. (Unten auf dieser Seite ist erklärt, wie Sie die [[https:// | ||
* Starten Sie den Webserver neu. | * Starten Sie den Webserver neu. | ||
- | === Schritt | + | ==== 4. Zertifikatswechsel auf dem IdP ==== |
- | * Editieren Sie die Datei '' | + | * Editieren Sie die Datei '' |
+ | For key rollover, uncomment and point to your original keypair, and use the one above | ||
+ | to point to your new keypair. Once metadata has propagated, comment this one out again. | ||
+ | --> | ||
+ | |||
+ | <bean class=" | ||
+ | p: | ||
+ | p: | ||
+ | p: | ||
+ | </ | ||
- | === Schritt | + | ==== 5. zweites Zertifikat für SAML-Kommunikation eintragen |
* Tragen Sie das neue Zertifikat und den dazugehörigen privaten Schlüssel zusätzlich in '' | * Tragen Sie das neue Zertifikat und den dazugehörigen privaten Schlüssel zusätzlich in '' | ||
idp.signing.key= / | idp.signing.key= / | ||
Zeile 117: | Zeile 102: | ||
* Starten Sie Tomcat neu. | * Starten Sie Tomcat neu. | ||
- | === Schritt | + | ==== 6. Zertifikat für SAML-Kommunikation in Metadatenverwaltung eintragen |
<callout color="# | <callout color="# | ||
**Veröffentlichen Sie das neue Zertifikat mindestens 24 Stunden vor dem nächsten Schritt zusätzlich zu dem alten Zertifikat in den Föderationsmetadaten!** | **Veröffentlichen Sie das neue Zertifikat mindestens 24 Stunden vor dem nächsten Schritt zusätzlich zu dem alten Zertifikat in den Föderationsmetadaten!** | ||
Zeile 124: | Zeile 109: | ||
* Wenn Sie bei der Erstellung des Zertifikatsantrags denselben privaten Schlüssel verwendet haben, den Sie auch für das ablaufende Zertifikat verwendet haben, ist die Veröffentlichung des neuen Zertifikates in Metadaten nicht so zeitkritisch. Das können Sie machen, wenn der Schlüssel nicht kompromittiert ist und nach wie vor den aktuellen technischen Anforderung entspricht. | * Wenn Sie bei der Erstellung des Zertifikatsantrags denselben privaten Schlüssel verwendet haben, den Sie auch für das ablaufende Zertifikat verwendet haben, ist die Veröffentlichung des neuen Zertifikates in Metadaten nicht so zeitkritisch. Das können Sie machen, wenn der Schlüssel nicht kompromittiert ist und nach wie vor den aktuellen technischen Anforderung entspricht. | ||
- | === Schritt | + | ==== 7. Alt und neu in der Konfiguration vertauschen |
- | * Nachdem das neue Zertifikat sich über die Metadaten herumgesprochen hat, tauschen | + | <callout color="# |
+ | **Nach diesem Schritt warten Sie bitte erneut mindestens 24 Stunden, bevor Sie weitermachen.** | ||
+ | </ | ||
+ | * Nachdem das neue Zertifikat sich über die Metadaten herumgesprochen hat, entfernen Sie das alte Zertifikat aus den Föderationsmetadaten. | ||
+ | * Tauschen | ||
idp.signing.key= / | idp.signing.key= / | ||
idp.signing.cert= / | idp.signing.cert= / | ||
Zeile 134: | Zeile 123: | ||
</ | </ | ||
* Starten Sie Tomcat neu. | * Starten Sie Tomcat neu. | ||
- | * **Warten Sie erneut 24 Stunden!** | ||
- | === Schritt | + | ==== 8. Alte Zertifikate für SAML-Kommunikation aus Konfiguration entfernen |
* Entfernen Sie das alte Zertifikat und den alten privaten Schlüssel aus der '' | * Entfernen Sie das alte Zertifikat und den alten privaten Schlüssel aus der '' | ||
idp.signing.key= / | idp.signing.key= / | ||
Zeile 144: | Zeile 132: | ||
</ | </ | ||
- | === Schritt | + | ==== 9. zweites Bean auskommentieren |
- | * Editieren Sie die Datei '' | + | * Editieren Sie die Datei '' |
+ | For key rollover, uncomment and point to your original keypair, and use the one above | ||
+ | to point to your new keypair. Once metadata has propagated, comment this one out again. | ||
+ | --> | ||
+ | <!-- | ||
+ | <bean class=" | ||
+ | p: | ||
+ | p: | ||
+ | p: | ||
+ | --> | ||
+ | </ | ||
* Starten Sie Tomcat neu. | * Starten Sie Tomcat neu. | ||
- | === Schritt 4 beim Zertifikatswechel des SP: Zertifikate für SAML-Kommunikation tauschen === | + | ===== Zertifikatstausch am SP ===== |
- | Im Gegensatz zum IdP ist beim SP zu beachten, dass der **SP vorübergehend beide Zertifikate bzw. Schlüssel | + | |
+ | ==== 1. Was muss getauscht werden? ==== | ||
+ | |||
+ | Stellen Sie fest, ob es um die Webserver-Zertifikate oder um die Zertifikate für die SAML-basierte | ||
+ | |||
+ | ==== 2. Beschaffung eines neuen Zertifikates ==== | ||
+ | siehe oben | ||
+ | ==== 3. Ggf. Zertifikat am Webserver | ||
+ | * Ersetzen Sie die alten, in der Webserverkonfiguration eingetragenen Dateien durch das neue Zertifikat, den privaten Schlüssel und die Zertifikatskette. (Unten auf dieser Seite ist erklärt, wie Sie die [[https:// | ||
+ | * Starten Sie den Webserver neu. | ||
+ | |||
+ | ==== 4. Zertifikate für SAML-Kommunikation tauschen ==== | ||
+ | Der **SP benötigt | ||
* Legen Sie das neue Zertifikat, den privaten Schlüssel und ggf. die Zertifikatskette auf den Server. Es ist wichtig, dass der Benutzer, mit dessen Kennung der '' | * Legen Sie das neue Zertifikat, den privaten Schlüssel und ggf. die Zertifikatskette auf den Server. Es ist wichtig, dass der Benutzer, mit dessen Kennung der '' | ||
# Benutzerkennung feststellen: | # Benutzerkennung feststellen: | ||
Zeile 182: | Zeile 192: | ||
</ | </ | ||
- | === Schritt | + | ==== 5. Zertifikate für SAML-Kommunikation tauschen |
* Konfigurieren Sie den SP um, so dass das neue Zertifikat an erster Stelle steht:< | * Konfigurieren Sie den SP um, so dass das neue Zertifikat an erster Stelle steht:< | ||
Zeile 200: | Zeile 210: | ||
</ | </ | ||
* Starten Sie den Dienst '' | * Starten Sie den Dienst '' | ||
- | * Jetzt können Sie gleich das alte Zertifikat aus den Metadaten des SP herausnehmen. **Warten** Sie dann erneut bis zu 24 Stunden (sicher ist sicher), bis sich die Änderung in der DFN-AAI bzw. in eduGAIN herumgesprochen hat. | ||
- | === Schritt 6 (SP): Zertifikate für SAML-Kommunikation tauschen | + | <callout color="# |
+ | **Entfernen Sie jetzt das alte Zertifikat aus den Föderationsmetadaten und warten Sie 24 Stunden mit dem nächsten | ||
+ | </ | ||
+ | ==== 6. Altes Zertifikat aus der SP-Konfiguration entfernen ==== | ||
* Entfernen Sie das alte Zertifikat aus der SP-Konfiguration, | * Entfernen Sie das alte Zertifikat aus der SP-Konfiguration, | ||
Zeile 223: | Zeile 235: | ||
* Starten Sie den Dienst '' | * Starten Sie den Dienst '' | ||
- | === Direkt verdrahtete IdPs/SPs === | + | ==== Direkt verdrahtete IdPs/ |
Wenn Sie SPs an der DFN-AAI vorbei direkt mit Ihrem IdP verbunden haben, haben Sie die Metadaten von IdP und SP manuell im jeweils anderen hinterlegt. Diese Metadatensätze müssen sie prüfen und ggf. manuell aktualisieren, | Wenn Sie SPs an der DFN-AAI vorbei direkt mit Ihrem IdP verbunden haben, haben Sie die Metadaten von IdP und SP manuell im jeweils anderen hinterlegt. Diese Metadatensätze müssen sie prüfen und ggf. manuell aktualisieren, | ||
- | \\ | + | |
===== Die SSL-Zertifikatskette auf Ihrem Webserver ===== | ===== Die SSL-Zertifikatskette auf Ihrem Webserver ===== |