Warum vertraut Windows 2012 R2 meinem selbstsignierten Zertifikat nicht?


9

In einer Testumgebung werde ich derzeit daran gehindert, einige Dinge zu testen, die bald bereitgestellt werden müssen (eigentlich schon, aber Sie wissen, wie die Fristen verlaufen ...), weil Windows sich weigert, dem selbstsignierten Zertifikat zu vertrauen, das wir in unserem haben isolierte Testumgebung. Obwohl ich das Problem mit dem "echten" Zertifikat und einigen DNS-Tricks nur umgehen konnte, habe ich das Zertifikat aus Sicherheits- / Kompartimentierungsgründen nicht angegeben.

Ich versuche, eine Verbindung zu einem Linux-basierten E-Mail-Server namens Zimbra herzustellen. Es wird ein automatisch generiertes selbstsigniertes OpenSSL-Zertifikat verwendet. Während die Seiten, die Google aufgedeckt hat, speziell auf IIS-Websites mit selbstsignierten IIS-Zertifikaten verweisen, denke ich nicht, dass die Methode zur Erstellung tatsächlich von Bedeutung ist.

Gemäß den Anweisungen, die ich hier und hier gefunden habe , sollte dies eine einfache Angelegenheit sein, das Zertifikat im Trusted Root Certification Authority-Speicher des lokalen Computers zu installieren. Was ich getan habe, sowie das Zertifikat manuell zu kopieren und direkt über das MMC-Snap-In zu importieren. Abmeldungen und Neustarts ändern nichts.

Hier ist der Zertifikatfehler, den ich jedes Mal erhalte: Geben Sie hier die Bildbeschreibung ein

Und hier ist der Zertifizierungspfad (Spoiler: Es ist nur das Zertifikat selbst): Geben Sie hier die Bildbeschreibung ein

Schließlich ist hier das Zertifikat sicher im Zertifikatspeicher des lokalen Computers versteckt, genau wie die Anweisungen, die ich gefunden habe, besagen, dass sie sein sollten: Geben Sie hier die Bildbeschreibung ein

Diese Anweisungen beziehen sich speziell auf Vista (in der zweiten wird das Betriebssystem nicht erwähnt) und IIS, während ich Server 2012 R2 verwende, der eine Verbindung zu einem Linux-basierten Server herstellt. Es gibt einige Unterschiede im Importassistenten (z. B. hat meiner die Option, für den aktuellen Benutzer oder das lokale System zu importieren, obwohl ich beide ausprobiert habe). Vielleicht muss ich hier etwas anderes tun? Eine Einstellung, die ich nicht gefunden habe und die geändert werden muss, damit sie dem Zertifikat wirklich vertraut, dem ich bereits gesagt habe, dass sie vertrauen soll?

Wie kann Windows Server 2012 R2 einem selbstsignierten Zertifikat vertrauen?


Ihr Problem kann nicht reproduziert werden. Wenn Sie das "Selbstsignierte Zertifikat erstellen" von IIS verwenden und es im persönlichen Speicher installieren (auch im Webhosting-Speicher ausprobiert), gibt es überhaupt kein Problem. Wie haben Sie das Zertifikat erstellt? Vom IIS oder vom MMC-Snapin der Zertifizierungsstelle?

Haben Sie versucht, den Zielspeicher explizit auszuwählen (Importieren aus der mmc-Konsole)?
JoaoCC

@SujaySarma Es ist nicht für eine IIS-Website, sondern für eine Linux-Anwendung namens Zimbra. Es ist ein selbstsigniertes OpenSSL-Zertifikat.
Kromey

@ user1703840 Ja, ich habe den Zielspeicher explizit angegeben und Windows erlaubt, ihn automatisch über die MMC und den Zertifikatimport-Assistenten im IE auszuwählen. Gleiche Ergebnisse wie auch immer, was keine ist.
Kromey

Huh? Woher kam Linux? Ihre gesamte Frage und die von Ihnen geposteten Links (einschließlich Ihrer Screenshots) beziehen sich auf Windows Server 2012 R2 und IIS. Bitte klären Sie.

Antworten:


1

Der Fehler, den Sie erhalten, besteht nicht darin, dass es sich nicht um ein vertrauenswürdiges Stammzertifikat handelt, sondern dass die Kette zu einem vertrauenswürdigen Zertifikat nicht überprüft werden kann. Wenn ein Teil der Kette gebrochen ist, nicht vertrauenswürdig ist oder fehlt, erhalten Sie einen solchen Fehler. Der Fehler, den ich mit einem nicht vertrauenswürdigen, selbstsignierten Stamm bekommeist dies: Dieses CA-Stammzertifikat ist nicht vertrauenswürdig. Installieren Sie dieses Zertifikat im Store Trusted Root Certification Authorities, um die Vertrauenswürdigkeit zu aktivieren. Für Sie heißt es jedoch, dass es nicht bis zu einem vertrauenswürdigen Stammzertifikat überprüft werden kann. Dies kann daran liegen, dass Sie openssl während des Selbstsignierungsprozesses angewiesen haben, das Zertifikat mit einem anderen Stamm zu signieren (nicht mit Selbstsignatur), oder dass es nicht als Stammzertifizierungsstelle festgelegt wurde. Wenn es das erste ist, müssen Sie stattdessen dem Stamm vertrauen, mit dem es signiert wurde. Wenn es das letztere ist, müssen einige Eigenschaften in openssl.conf festgelegt werden.


Die Screenshots zeigen, dass das Zertifikat in der vertrauenswürdigen Stammzertifizierungsstelle installiert ist und dass die gesamte Kette das Zertifikat selbst ist - es ist der Stamm, und daher sollte es ausreichen, sich in der vertrauenswürdigen Stammzertifizierungsstelle zu befinden. Die Frage ist, warum nicht?
Kromey

Ich sage, es ist möglicherweise nicht der Stamm, nicht dass er nicht zum vertrauenswürdigen Stammspeicher hinzugefügt wird. Der Fehler ist das Seltsame daran - es sollte nicht heißen, dass es nicht bis zu einer vertrauenswürdigen Zertifizierungsstelle überprüft werden kann, wenn es sich um eine Zertifizierungsstelle handeln soll - weshalb ich vorschlage, dass es sich nicht um eine Root-Zertifizierungsstelle handelt, sondern mit einer Signatur ein weiteres Zertifikat.
Flashbang

Führen Sie diesen Befehl auf der Box aus, für die Sie das Zertifikat openssl req -x509 -newkey rsa:2048 -keyout key.pem -out cert.pem -days 30 -sha256 -nodesabrufen möchten, und importieren Sie dieses Zertifikat in den vertrauenswürdigen Stammzertifizierungsstellenspeicher. (und es natürlich so konfigurieren, dass es das von Zimbra verwendete Zertifikat und der Schlüssel ist).
Flashbang

Oh, ich verstehe was du meinst. Entschuldigung, ich habe es falsch verstanden. Aber wenn es nicht die Wurzel ist, sollte das nicht im Fenster "Zertifizierungspfad" angezeigt werden? Auf jeden Fall kann ich das leider nicht weiter testen - ich habe es geschafft, unser legitimes Zertifikat zu erhalten, und zusammen mit ein bisschen Hacking in der hostsDatei hat es so funktioniert.
Kromey

Ihr Zertifikat stammt von einer Stammzertifizierungsstelle, basierend auf dem Screenshot. Wenn Sie sich die Zertifikatdetails für idp.godaddy.com ansehen, wird der gesamte Pfad angezeigt und Sie können diesen als Vergleich verwenden. Wenn Sie sich die Eigenschaften des Zertifikats in MMC ansehen, schließt es die Serverauthentifizierung in die Zertifikatzwecke ein? (Klicken Sie im zweiten Screenshot mit der rechten Maustaste auf das Zertifikat und wählen Sie Eigenschaften aus.)
John Auld

1

Nach allem, was ich herausfinden kann, müssen Sie zmaster als vertrauenswürdige Quellzertifizierungsstelle hinzufügen, da WS2k12 versucht, das Zertifikat anhand eines Hosts zu überprüfen, von dem es nichts weiß. Sie haben Recht damit, dass die Generierungsmethode nicht wichtig ist, aber eine überprüfbare Quelle. Dies hat den Effekt, dass WS2k12 einem Zertifikat nicht vertraut, nur weil es den Namen $ Random_issuing_authority hat. Es muss in der Lage sein, das Zertifikat zu überprüfen.


Es handelt sich um ein selbstsigniertes Zertifikat. Wenn Sie das Zertifikat in den Trusted Root CA-Speicher stellen, vertrauen Sie per Definition dem Aussteller.
Chris McKeown

Sofern mir nichts fehlt, habe ich genau das getan - siehe den dritten Screenshot mit dem zmaster-Zertifikat im Trusted Root CA Store.
Kromey

0

Ich hatte das gleiche Problem. Es stellte sich heraus, dass meine Lösung darin bestand, die von dovecot verwendeten .crt- und .key-Dateien für den Mailserver zu aktualisieren. Exim4 in der Mail hatte einen aktualisierten Zertifikat- / Schlüsselsatz, aber Dovecot zeigte immer noch auf den alten Zertifikat- / Schlüsselsatz.

Das alte Zertifikat / Schlüssel-Paar funktionierte in den meisten Situationen einwandfrei, jedoch weder mit Outlook.com noch mit MS Outlook 2013.

Aufgrund von Problemen mit Outlook.com habe ich kürzlich das exim4-Zertifikat aktualisiert. Jetzt verwendet dovecot [und der Webmail-Server] auch die neuen Zertifikats- (und Schlüssel-) Dateien. Der Mailserver selbst wurde kürzlich ebenfalls aktualisiert [von alten Debian-Squeeze-lts auf Wheezy]. Das alte Setup war mit dem alten Zertifikat- / Schlüsselsatz rundum in Ordnung, aber nach dem Upgrade musste ich zuvor den neuen Zertifikat- / Schlüsselsatz erstellen MS-Produkte funktionieren ordnungsgemäß mit dem Mailserver.


0

Ich denke, das Problem ist, wie Sie auf die Ressourcen zugegriffen haben. Für Ihr lokales Netzwerk verwenden Sie möglicherweise den Hostnamen anstelle des vollständigen Domänennamens. Ihr Zertifikat wird jedoch für den vollständigen Domainnamen ausgestellt.


Diese Frage hat bereits eine akzeptierte Antwort.
BE77Y

-1

Installieren Sie das Zertifikat für vertrauenswürdige Stammzertifizierungsstellen und vertrauenswürdige Herausgeber.

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.