38 lines
3.2 KiB
Markdown
38 lines
3.2 KiB
Markdown
<!--{"title": "TLS-Zertifikat mit SHA3 auf Windows Server 2016 einspielen", "date": "2025-05-08", "slug": "tls-zertifikat-mit-sha3-256-cbc-auf-windows-server-2016-einspielen", "description": "Wer auf einem Windows Server 2016 ein TLS-Zertifikat einspielen möchte, das mit einem privaten Schlüssel im neuen SHA3-256-CBC-Verfahren erstellt wurde, könnte auf ein frustrierendes Problem stoßen: Beim Importieren erscheint nur die lapidare Fehlermeldung Falsches Kennwort, obwohl das eingegebene Passwort korrekt ist.", "cover": "/static/img/tls-zertifikat-mit-sha3-256-cbc-auf-windows-server-2016-einspielen.webp"}-->
|
|
> Kennzeichnung gemäß Artikel 52 Absatz 1 EU AI Act: [🌱 <ins>Rechercheunterstützung</ins>](/page/ai)
|
|
|
|
Wer auf einem Windows Server 2016 ein TLS-Zertifikat einspielen möchte, das mit einem privaten Schlüssel im neuen SHA3-256-CBC-Verfahren erstellt wurde, könnte auf ein frustrierendes Problem stoßen: Beim Importieren erscheint nur die lapidare Fehlermeldung **"Falsches Kennwort"**, obwohl das eingegebene Passwort korrekt ist.
|
|
|
|
Interessanterweise funktioniert der Import reibungslos, wenn der Schlüssel stattdessen mit **PBE-SHA1-3DES** erstellt wurde. Warum ist das so, und wie kann man das Problem lösen?
|
|
|
|
### Ursache
|
|
|
|
Windows Server 2016 (und auch ältere Windows-Versionen) unterstützen bestimmte moderne kryptografische Verfahren nicht nativ. Konkret bedeutet das: Das Betriebssystem kann mit PKCS#12-Dateien (`.pfx`), die mit modernen Verschlüsselungsmethoden wie SHA3-256-CBC verschlüsselt wurden, nicht umgehen. Es erkennt das Format bzw. die Verschlüsselung nicht und interpretiert das als falsches Passwort — daher die irreführende Fehlermeldung.
|
|
|
|
### Lösungsmöglichkeiten
|
|
|
|
1. **Schlüssel mit kompatibler Verschlüsselung exportieren**
|
|
Der einfachste Weg besteht darin, das Zertifikat und den privaten Schlüssel erneut zu exportieren, aber diesmal mit einer älteren und kompatiblen Verschlüsselung. Verwende dafür **PBE-SHA1-3DES**, da dies von Windows Server 2016 problemlos verarbeitet werden kann.
|
|
|
|
Beispiel mit OpenSSL:
|
|
|
|
```
|
|
openssl pkcs12 -export -in cert.pem -inkey key.pem -out cert.pfx -certfile chain.pem -keypbe PBE-SHA1-3DES
|
|
```
|
|
|
|
2. **Server auf neuere Windows-Version upgraden**
|
|
Wenn möglich, könnte auch ein Upgrade auf eine neuere Windows-Version (z.B. Windows Server 2022) helfen, da dort modernere Algorithmen unterstützt werden. Das ist jedoch oft mit Aufwand verbunden und sollte gut geplant werden.
|
|
|
|
3. **Manuelle Entschlüsselung und Neuverpackung**
|
|
Falls nur die `.pfx`-Datei vorliegt, könnte man diese zunächst auf einem System entpacken, das SHA3-256-CBC versteht, und dann neu im kompatiblen Format zusammenpacken.
|
|
|
|
Beispiel:
|
|
|
|
```
|
|
openssl pkcs12 -in cert_sha3.pfx -out cert.pem -nodes
|
|
openssl pkcs12 -export -in cert.pem -inkey key.pem -out cert_compatible.pfx -keypbe PBE-SHA1-3DES
|
|
```
|
|
|
|
### Fazit
|
|
|
|
Die Fehlermeldung "Falsches Kennwort" beim Einspielen eines TLS-Zertifikats mit einem modernen Schlüssel auf Windows Server 2016 ist irreführend, hat aber eine klare Ursache: fehlende Unterstützung für neuere Verschlüsselungsmethoden. Mit einem Re-Export des Zertifikats im älteren, kompatiblen Format lässt sich das Problem meist schnell beheben. |