mwiederkehr 373 Geschrieben 24. Oktober 2023 Melden Teilen Geschrieben 24. Oktober 2023 Hallo zusammen Auf einem IIS auf Windows Server 2019 läuft eine Webanwendung mit gekauftem Zertifikat. Dieses ist wie üblich von einer Zwischenzertifizierungsstelle signiert, deren Zertifikat wiederum von der Root-CA signiert ist. Im Browser funktioniert alles bestens und SSL Labs ist zufrieden. Der IIS sendet das Zertifikat sowie das Zertifikat der Zwischenzertifizierungsstelle mit, nicht aber das Root-Zertifikat. Was laut Standard erlaubt und auch sinnvoll ist, denn der Client muss das Root-Zertifikat ja selbst haben. (Laut Standard darf der Webserver das Root-Zertifikat mitliefern, muss aber nicht.) Leider verlangen die angeschlossenen Zeiterfassungs-Terminals eine vollständige Zertifikatskette. Dazu ist zu erwähnen, dass die Software normalerweise auf einem vom Hersteller gelieferten Webserver läuft, der die ganze Kette ausliefert. Anscheinend liefern andere Webserver wie Nginx einfach alle Zertifikate aus, die man ihnen als Kette angibt. Kann man den IIS dazu bringen, auch das Root-Zertifikat mitzusenden? Ich habe Anleitungen gefunden, laut deren man die automatische Aktualisierung der Root-Zertifikate deaktivieren und das entsprechende Zertifikat dann zu den Zwischenzertifizierungsstellen verschieben soll. Das funktioniert insofern, als beim Zertifikat danach keine vollständige Kette mehr angezeigt wird und der IIS beim Zuweisen der Bindung reklamiert. Aber er liefert das als Zwischenzertifikat getarnte Root-Zertifikat trotzdem nicht aus. Zitieren Link zu diesem Kommentar
cj_berlin 1.323 Geschrieben 24. Oktober 2023 Melden Teilen Geschrieben 24. Oktober 2023 Moin, die Dokumentation geht davon aus, dass Root nicht mitgeschickt wird: https://learn.microsoft.com/en-us/troubleshoot/developer/webapps/iis/www-authentication-authorization/configure-intermediate-certificates Das Root-Zertifikat in den Intermediate-Store zu verschieben, ist sicher nicht zielführend. Du kannst aber probieren, es dorthin zu *kopieren*. Vielleicht hilft es. Zitieren Link zu diesem Kommentar
NorbertFe 2.045 Geschrieben 24. Oktober 2023 Melden Teilen Geschrieben 24. Oktober 2023 (bearbeitet) Das Verhalten ist aber am Ende auch „falsch“, deswegen wirds ja bei diversen ssl checks auch als Problem angemeckert. Wozu soll ich die Root denn geliefert bekommen? Wenn ich ihr nicht vertraue hilft das Nix und wenn ich sowieso allem vertraue, dann brauch ich die ja nicht unbedingt. Im intermediate sollte ja die ausstellende Stelle mit drin stehen ;) was ich sagen will: frag doch mal bei denen an, warum die das nicht konform regeln können, oder einfach nen „egal-Haken“ einbauen. bearbeitet 24. Oktober 2023 von NorbertFe Zitieren Link zu diesem Kommentar
zahni 554 Geschrieben 25. Oktober 2023 Melden Teilen Geschrieben 25. Oktober 2023 Das Root- und Intermediate-Zertifikat müssen im Terminal importiert werden. (Kurzfassung). Zitieren Link zu diesem Kommentar
NorbertFe 2.045 Geschrieben 25. Oktober 2023 Melden Teilen Geschrieben 25. Oktober 2023 Das Intermediate normalerweise nicht. Das liefert üblicherweise der Webserver. Zitieren Link zu diesem Kommentar
mwiederkehr 373 Geschrieben 25. Oktober 2023 Autor Melden Teilen Geschrieben 25. Oktober 2023 Vielen Dank für eure Antworten! Das Root-Zertifikat zu den Zwischenzertifikaten zu kopieren, hat leider nicht geholfen. Es scheint, als liefen die Terminals mit einem Uralt-Android und entweder hatte jemand die famose Idee, dem vom Webserver gesendeten Root-Zertifikat zu vertrauen oder sie haben die Krypto selbst implementiert und vergleichen das vom Server gelieferte Root-Zertifikat mit dem in ihrem Store oder so... Auf jeden Fall will man noch einmal mit den Entwicklern sprechen, nachdem ich aus RFC 5246 zitiert habe: certificate_list This is a sequence (chain) of certificates. The sender's certificate MUST come first in the list. Each following certificate MUST directly certify the one preceding it. Because certificate validation requires that root keys be distributed independently, the self-signed certificate that specifies the root certificate authority MAY be omitted from the chain, under the assumption that the remote end must already possess it in order to validate it in any case. Zitieren Link zu diesem Kommentar
NorbertFe 2.045 Geschrieben 25. Oktober 2023 Melden Teilen Geschrieben 25. Oktober 2023 Ich bin auf die Antwort gespannt. :) 1 Zitieren Link zu diesem Kommentar
tesso 375 Geschrieben 25. Oktober 2023 Melden Teilen Geschrieben 25. Oktober 2023 vor einer Stunde schrieb mwiederkehr: Das Root-Zertifikat zu den Zwischenzertifikaten zu kopieren ?? Das Root Zertifikat gehört nicht in die Zwischenzertifikate, sondern zu den vertrauenswürdigen Stammzertifikaten. Vielleicht hast du dich auch nur falsch ausgedrückt. Zitieren Link zu diesem Kommentar
mwiederkehr 373 Geschrieben 25. Oktober 2023 Autor Melden Teilen Geschrieben 25. Oktober 2023 vor 2 Stunden schrieb tesso: Das Root Zertifikat gehört nicht in die Zwischenzertifikate, sondern zu den vertrauenswürdigen Stammzertifikaten. Bei den Stammzertifikaten ist es schon. Es war der Versuch, den IIS dazu zu bringen, es als Teil der Kette an die Clients auszuliefern. Ich habe Berichte von Leuten gefunden, bei denen das funktioniert hat, allerdings waren das ältere Versionen vom IIS. Zitieren Link zu diesem Kommentar
tesso 375 Geschrieben 25. Oktober 2023 Melden Teilen Geschrieben 25. Oktober 2023 Das wäre kontraproduktiv. Entweder ich vertraue der CA oder nicht. Da lasse ich mir doch kein Root-Zertifikat einfach unterschieben. Zitieren Link zu diesem Kommentar
zahni 554 Geschrieben 25. Oktober 2023 Melden Teilen Geschrieben 25. Oktober 2023 (bearbeitet) Man kann zwar die Root-Zertifikate mit senden, die müssen dann aber trotzdem beim Endgerät in den richtigen Cert-Store importiert werden, damit man denen vertrauen kann. Und ja, für Root und Intermediate gibt es eigentlich 2 Stores, Java z.B. sieht das aber oft nicht so. Java, zumindest alte Versionen, wollen die teilweise im gleichen Store. Falls sich der Keystore bei dem Endgerät in Dateiform editieren lässt, empfehle ich https://keystore-explorer.org/downloads.html Das Tool kommt mit sehr vielen Formaten zurecht. OpenSSL ist mir zu anstrengend... PS: Und aus eigener Erfahrung: Entwickler wollen sie oft nicht mit Basics (hier: SSL) beschäftigen. Self Signed Zertifikate sind dann eben doch etwas anders. Die muss man aber auch in den Truststore importieren. bearbeitet 25. Oktober 2023 von zahni 1 Zitieren Link zu diesem Kommentar
NilsK 2.939 Geschrieben 26. Oktober 2023 Melden Teilen Geschrieben 26. Oktober 2023 Moin, hat hier schon jemand erwähnt, dass PKI böse ist? Gruß, Nils 2 Zitieren Link zu diesem Kommentar
zahni 554 Geschrieben 26. Oktober 2023 Melden Teilen Geschrieben 26. Oktober 2023 vor 14 Minuten schrieb NilsK: hat hier schon jemand erwähnt, dass PKI böse ist? NEIN !!! 1 Zitieren Link zu diesem Kommentar
NorbertFe 2.045 Geschrieben 26. Oktober 2023 Melden Teilen Geschrieben 26. Oktober 2023 Gerade eben schrieb zahni: NEIN !!!EINSELF Ich hab das mal korrigiert 1 Zitieren Link zu diesem Kommentar
mwiederkehr 373 Geschrieben 27. Oktober 2023 Autor Melden Teilen Geschrieben 27. Oktober 2023 Habe die Rückmeldung bekommen: Das Problem lag an einer falschen Konfiguration der Software. Auf die Idee mit der Zertifikatskette ist man gekommen, weil man den Qualys SSL Server Test gemacht hat bei meinem Kunden und bei einem anderen Kunden, bei dem es funktioniert. Und das fehlende Root-Zertifikat war der einzige Unterschied. Eine Recherche im Internet hat dann ergeben, dass Android "manchmal Probleme mit Root-Zertifkaten hat". Also eine Kombination aus Unkenntnis und hoher Selbstsicherheit. Kennen manche von uns vielleicht von ihren jungen Jahren. 3 Zitieren Link zu diesem Kommentar
Empfohlene Beiträge
Schreibe einen Kommentar
Du kannst jetzt antworten und Dich später registrieren. Falls Du bereits ein Mitglied bist, logge Dich jetzt ein.