SSL-Zertifikate verschwinden IIS

19

Ich versuche, ein Zertifikat in IIS zu importieren. Auf der MMC (Windows Console) ist alles in Ordnung. Ich habe die Zauberer beendet und scheint, dass das in Ordnung ist. Wenn ich jedoch die Zertifikatsliste aktualisiere oder zu einem anderen Bildschirm von IIS wechsle, wird das Zertifikat nicht mehr in der Liste angezeigt.

Ich habe keine Ahnung, wo das Problem liegt. Was kann ich tun?

Studiohack
quelle
Die meisten der Antworten , die wichtigsten Punkte (der private Schlüssel fehlt), und ich habe eine Blog - Post , um mehr Hintergrundinformationen zu zeigen blog.lextudio.com/...
Lex Li

Antworten:

13

Dieses Problem tritt auf, wenn dem importierten Zertifikat kein privater Schlüssel zugeordnet ist. Wenn jemand versucht, ein Zertifikat auf Domänenebene in IIS zu importieren, können wir nichts importieren, wenn dem Zertifikat kein privater Schlüssel zugeordnet ist und das Zertifikat bei der Aktualisierung nicht mehr angezeigt wird.

Die Lösung besteht darin, die .CER-Datei in den persönlichen Speicher Ihres Systems (von dem aus das Zertifikat angefordert wird) zu importieren und mit dem privaten Schlüssel zu exportieren. Kopieren Sie dann die PFX-Datei auf den erforderlichen Server und importieren Sie sie aus der Serverzertifikatsoption unter IIS. Dies würde das Problem beheben.

Sandeep Kalsuri
quelle
1
Einige Benutzer fordern unter Windows ihre Zertifikate nicht an, sodass die Lösung ihnen möglicherweise nicht weiterhilft. Sie sollten sich auf andere Antworten beziehen, um eine PFX-Datei mit Tools wie OpenSSL zu generieren.
Lex Li
3

Ich habe dieses Problem mehrmals gehabt. Bei Verwendung eines NetworkSolutions-SSL lautet der Fix:

  1. Wechseln Sie zu MMC Certificate Manager.
  2. Zeigen Sie persönliche Zertifikate an, und löschen Sie das Zertifikat, das nicht mehr angezeigt wird.
  3. Zeigen Sie dann die "Zertifikatregistrierungsanforderungen" an und klicken Sie mit der rechten Maustaste, um sie zu exportieren.
  4. Wählen Sie "Ja, mit privatem Schlüssel exportieren".

Auf diese Weise können Sie PFX-Dateien exportieren, die Sie aus dem IIS 7-Manager importieren können. Denken Sie daran, zum MMC-Zertifikat-Manager zurückzukehren und "Persönliche Zertifikate" auszuwählen. Fügen Sie in den Eigenschaften den "Anzeigenamen" hinzu, damit er im IIS-Manager angezeigt wird.

Brian
quelle
Meine Lösung ist das Ziehen der Zertifikate mit privatem Schlüssel von "Zwischenzertifizierungsstelle" zu "Persönlichen Zertifikaten" in mmc durch Drücken von Strg (Zertifikat kopieren)
Bruce
Ich konnte die .pfx-Datei exportieren (ich wurde aufgefordert, ein Kennwort zum Schutz des privaten Schlüssels zu verwenden). Der Export hat funktioniert, aber als ich versuchte, ihn in IIS zu importieren, heißt es, dass die Datei nicht entschlüsselt werden konnte
Alejandro Lozdziejski
1

Ist dies in IIS 6 oder IIS 7? Haben Sie es in die MMC-Konsole oder in IIS importiert? Versuchen Sie, es zuerst in die MMC-Konsole zu importieren und dann in IIS auszuwählen. Stellen Sie außerdem sicher, dass die zu importierende Datei eine PFX-Datei ist, die den privaten Schlüssel enthält.

Robert
quelle
1

Ich hatte dieses Problem auch und löste es, indem ich OpenSSL verwendete, um die korrekte PFX-Datei zu erstellen. Eine Anleitung dazu finden Sie hier


quelle
1
Es ist die einzige Lösung, die für mich funktioniert hat
Shiko
1

Wenn dem Server kein privater Schlüssel für das importierte Zertifikat zugeordnet ist, wird das Zertifikat beim Aktualisieren ausgeblendet (und steht auch nicht für Bindungen zur Verfügung).

Sie können im MMC - Zertifikate - Persönlicher Speicher überprüfen, ob das Zertifikat installiert wurde, aber kein privater Schlüssel vorhanden ist.

Wenn Sie eine PFX (privater Schlüssel) und ein Kennwort haben, können Sie es (wie bereits erwähnt) importieren, aber wenn Sie gerade eine Zertifikatsanforderung gestellt haben, werden Sie es wahrscheinlich nicht haben.

Angenommen, Sie befinden sich auf dem richtigen Server (derselbe, auf dem Sie das Zertifikat angefordert haben), dann wurde der private Schlüssel wahrscheinlich irgendwie beschädigt . Sie können das öffentliche Zertifikat öffnen, die Seriennummer abrufen und versuchen , den privaten Schlüssel wie hier beschrieben aus dem Schlüsselspeicher wiederherzustellen .

drizin
quelle
0

Verwenden Sie den Zertifikatsmanager, um die Datei zu importieren. Versuchen Sie von dort aus zu exportieren. Wenn Sie nicht als PFX-Datei exportieren können, bedeutet dies meines Erachtens, dass das Zertifikat keinen privaten Schlüssel enthält. Möglicherweise haben Sie die falsche von Ihrer Zertifizierungsstelle heruntergeladen. Ich habe es jetzt mit unserer Zertifizierungsstelle zu tun, daher bin ich mir diesbezüglich noch nicht 100% sicher.


quelle
0

Nachdem ich mich einige Stunden damit herumgeschlagen hatte, die Zeit für das Telefonieren mit dem technischen Support erneut heruntergeladen und mir alle Blogs angesehen hatte, die ich finden konnte, war ich ratlos. Ich habe versucht, die Zertifikatsanforderung erneut zu senden, um das Zertifikat neu zu generieren (kein Glück). Mit einem letzten Graben habe ich die Zertifikatsanforderung neu generiert und das Zertifikat erneut eingegeben, und jetzt funktioniert es einwandfrei. Ich weiß nicht, was passiert ist und habe meine Daten beide Male sehr sorgfältig eingegeben. Meine Lösung bestand einfach darin, eine neue Anforderung zu generieren und das Zertifikat erneut zu verschlüsseln.


quelle
Ich möchte nur an zweiter Stelle sehen, was Dave geschrieben hat: das Zertifikat erneut eingeben. Ich hatte das Problem, das wahrscheinlich durch den Import eines falschen Zertifikats in MMC verursacht wurde (Ein Zertifikat der Zwischenzertifizierungsstelle soll mit MMC importiert werden, aber ich habe stattdessen das Zertifikat für die Website importiert). Ich habe es gelöscht, nachdem ich es erkannt hatte, aber nichts hat geholfen, bis ich eine CSR gemäß den Anweisungen unserer Zertifizierungsstelle (Godaddy, der technische Support ist großartig) neu erstellt und das rekeyed-Zertifikat in IIS importiert habe.
0

Ich habe das gleiche Problem mit einem IIS-Zertifikat (mit privatem Schlüssel, .pfx) nach dem Import in den MMC-Knoten Lokal / Persönlich / Zertifikat auf einem Windows Server 2008R2-Computer.

Das Zertifikat importiert gut, sagt, es ist gut mit CA, das ist auch gut. Ich kann dann meinen Proxyserver (TMG 2010) so konfigurieren, dass das Zertifikat in einem Weblistener verwendet wird. Alles funktioniert hervorragend und der Weblistener und die nachfolgenden Regeln, die den Listener verwenden, funktionieren einwandfrei.

Nach einiger Zeit habe ich es noch nicht versucht, das Zertifikat verschwindet vom MMC L / P / C-Knoten. Mein TMG-Listener zeigt immer noch an, dass das Zertifikat dasjenige ist, für das es konfiguriert ist, aber das eigentliche Zertifikat ist weg.


quelle
0

Ich habe festgestellt, dass das Problem reproduziert werden kann, wenn das Leaf-Zertifikat unter Zwischenzertifizierungsstellen installiert wurde. Wenn Sie es entfernen (und ggf. ein echtes Zwischenprodukt zurücklassen) und dann den Assistenten ausführen, wird das Problem behoben.


quelle
0

Wie Sandeep sagte, löscht IIS Ihr Zertifikat, wenn es keinen privaten Schlüssel hat. Dies tritt häufig auf, wenn Sie mithilfe von IIS eine Zertifikatsanforderung von einer Zertifizierungsstelle erstellen. Ihre Zertifizierungsstelle verfügt nicht über Ihren privaten Schlüssel (Sie tun dies), sodass die Datei den privaten Schlüssel nicht enthält. Er sind die genauen Schritte, die Sie tun müssen:

Sie haben ursprünglich eine Zertifikatsanforderung von IIS auf Ihrem Server erstellt. Sie haben die TXT-Anforderungsdatei an Ihre Zertifizierungsstelle gesendet, damit diese das Zertifikat für Sie erstellen kann.

Ihre Zertifizierungsstelle hat Ihnen eine CRT-Datei zurückgesandt. Klicken Sie im Windows-Explorer mit der rechten Maustaste auf die CRT-Datei, die Sie von Ihrer Zertifizierungsstelle erhalten haben.

Zertifikat installieren auswählen Der Zertifikatimport-Assistent wird ausgeführt

Wählen Sie im Zertifikatimport-Assistenten unter Speicherort die Option Lokaler Computer aus

Weiter Wählen Sie Alle Zertifikate in folgendem Speicher ablegen und Vertrauenswürdige Stammzertifizierungsstellen aus

OK Dadurch importiert Windows das Zertifikat in Windows (nicht in IIS). Jetzt müssen Sie die PFX-Datei abrufen, die den privaten Schlüssel enthält:

Starten Sie Mmc

Datei - Snap-In hinzufügen / entfernen…

Zertifikate (lokaler Computer)

Aus Zertifikaten (lokaler Computer) - Erweiterte vertrauenswürdige Stammzertifizierung

Behördenordner

Selected Certificates

Noticed my imported certificate with a key logo displayed on it

Öffnen Sie das Zertifikat

Beachten Sie, dass die Meldung "Sie haben einen privaten Schlüssel, der diesem Zertifikat entspricht" angezeigt wird.

Okay

Klicken Sie mit der rechten Maustaste auf das Zertifikat.

All Tasks --> Export

Nächster

Wählen Sie auf der Seite "Privaten Schlüssel exportieren" des Assistenten "Ja, privaten Schlüssel exportieren" aus.

Nächster

Der Zertifikatsexport-Assistent fordert Sie auf, das Dateiformat PKCS # 12 (.PFX) zu exportieren.

Nächster

Für den Zertifikatsexport-Assistenten müssen Sie die Datei mit einem Kennwort schützen:

Geben Sie ein Passwort ein, mit dem die Datei geschützt werden soll.

Nächster

Navigieren Sie zu einem Speicherort und geben Sie den Dateinamen an. Die Datei hat die Erweiterung .PFX.

Öffnen Sie dann IIS 7

Wählen Sie Ihren IIS-Server im linken Bereich (Verbindungen) aus

Klicken Sie in der Ansicht "Features" auf "Serverzertifikate öffnen"

Klicken Sie im rechten Bereich "Aktionen" auf Importieren ...

Wählen Sie die exportierte PFX-Datei aus

Geben Sie das Kennwort ein, mit dem Sie es geschützt haben

OK klicken

Martin Cox
quelle
0

Ich hatte heute Morgen das gleiche Problem, bei dem ich cert hinzufügen konnte, aber sobald ich auf "Aktualisieren" klicke, verschwindet es. So habe ich es gelöst:

Führen Sie die folgenden Schritte aus, um ssl cert auf dev box- zu installieren: Verwenden Sie die PFX-Datei. Gehen Sie in Ihrer Entwicklungsbox zu Verwaltung -> IIS-Manager -> Serverzertifikate. Klicken Sie im rechten Bereich auf Importieren. Navigieren Sie zur heruntergeladenen PFX-Datei, und verwenden Sie das Kennwort. Aktivieren Sie andernfalls das Kontrollkästchen "Export dieses Zertifikats zulassen". Wenn Sie später einen Bindungsfehler erhalten würden. Gehen Sie zu Sites, suchen Sie Ihre Site, klicken Sie auf Bindungen und bearbeiten Sie https, um das neue SSL-Zertifikat zu verwenden.

Mr. Wonderful
quelle
0

Die Lösung von Nick Olsen hat für mich funktioniert (RapidSSL-Zertifikat) und ich werde hier die genauen Schritte angeben (es gibt mehrere Links, einer ist defekt):

  1. Installieren Sie OpenSSL von hier aus
  2. Erstellen Sie die folgenden Dateien im OpenSSL-Installationsverzeichnis (standardmäßig C: \ OpenSSL-Win32 \ bin):

    • privatekey.txt - Kopieren Sie den Inhalt des privaten Schlüssels und fügen Sie ihn ein
    • certificate.txt - Kopieren Sie den Text des Zertifikatsabschnitts und fügen Sie ihn ein
    • intermediate.txt - Kopieren Sie den Zwischenabschnittstext und fügen Sie ihn ein (optionaler Schritt)
  3. Erstellen Sie eine PFX-Datei mit dem folgenden Befehl

    openssl pkcs12 -export -out certificate.pfx -inkey privatekey.txt -in certificate.txt -certfile intermediate.txt
    
  4. Importieren Sie die Datei innerhalb der Server-Zertifikate (IIS)

Alexei
quelle
0

Viele Leute werden hier nicht bemerken, dass sie den Zertifikatsprozess falsch durchführen, um SSL zu ihren öffentlichen Websites hinzuzufügen. Sie werden ein Zertifikat von jemandem wie godaddy heruntergeladen haben und nicht bemerkt haben, dass sie es in der falschen Reihenfolge gemacht haben! Es werden keine Fehlermeldungen angezeigt. Es wird lediglich das Zertifikat in IIS ausgeblendet, sobald Sie auf einen anderen Abschnitt klicken.

Der korrekte Prozess ist wie folgt:

  1. In IIS fordern Sie ein Zertifikat an (EIN TEIL VON LEUTE FEHLT DIESEM TEIL)
  2. Sie verwenden den von IIS angeforderten Code, um ein Zertifikat auf der öffentlichen Site anzufordern (z. B. godaddy). Viele Leute machen nicht den ersten Schritt und verwenden einen zufällig generierten Schlüssel
  3. Laden Sie die Zertifikate herunter, die mit Ihrem Anforderungscode erstellt wurden.
  4. Sie fügen das Zwischenzertifikat in der lokalen Zertifizierungsstelle hinzu (verwenden Sie MMC, um dorthin zu gelangen).
  5. Sie fügen das andere Zertifikat in IIS hinzu
  6. Sie konfigurieren die Bindungen

Hier sind Links. Zertifikatanforderung erstellen

https://www.instantssl.com/ssl-certificate-support/csr-generation/iis-ssl-certificate-7x.html

https://de.godaddy.com/help/iis-8-install-a-certificate-4951

Christopher Vickers
quelle
0

Verarbeiten, wenn Zertifikat aktiviert ist.

  1. Melden Sie sich über Remote Desktop bei Ihrem Go Daddy VPS an.
  2. Öffnen Sie den IIS-Manager / markieren Sie den Serverknoten (linker Bereich, IP Ihres VPS) / doppelklicken Sie auf Serverzertifikate (mittlerer Bereich) / klicken Sie auf Zertifikatsanforderung erstellen / ausfüllen (Common Name ist ein FQDN, yourdomain.com) / wählen Sie Microsoft RSA SChannel und 2048 Bit Länge / Speichern als yourdomain.txt-Datei auf dem Desktop.
  3. Öffnen Sie die soeben erstellte Datei yourdomain.txt / Kopieren Sie den gesamten Text.
  4. Melden Sie sich in Ihrem Browser in VPS über Remotedesktop / Meine Produkte / SSL bei Go Daddy an. / Verwenden Sie Ihr aktiviertes SSL-Guthaben. / Klicken Sie auf das graue Quadrat in der Mitte.
  5. Nachdem der Besitzer der Domain verifiziert wurde, kehren Sie zurück zu Go Daddy / Meine Produkte / SSL-Zertifikate / Wählen Sie die Domain aus, auf die das Zertifikat angewendet wird / Wählen Sie Servertyp (IIS) / Herunterladen / Auf Desktop extrahieren.
  6. Führen Sie mmc / Datei / Hinzufügen / Snap-In entfernen / Zertifikate / Hinzufügen / Computerkonto / Lokaler Computer / Fertig stellen / OK aus
  7. Erweitern Sie Zertifikate (Lokaler Computer) / Rechtsklick Zwischenzertifizierungsstellen / Rechtsklick / Alle Aufgaben / Importieren / Importieren Sie die Datei mit PKCS7 # 7 aus der Dropdown-Liste. Diese Datei wird im Fenster angezeigt. / Weiter / Aktivieren Sie "Alle Zertifikate in folgendem Speicher ablegen". Wählen Sie "Zwischenzertifizierungsstelle" / Fertig stellen / Schließen / Speichern "Nein" / Schließen Sie die mmc-Konsole.
  8. Kehren Sie zum IIS-Manager zurück, und wählen Sie die Website aus, die dem Zertifikat (linker Bereich) / Bindungen (rechter Bereich) / Hinzufügen / Typ (https), IP-Adresse (IP Ihres VPS), Port (443) zugewiesen ist. Fügen Sie Ihren Domänennamen (Ihre Domäne) hinzu .com) / Das Zertifikat sollte in der Dropdown-Liste yourdomain.com angezeigt werden.

Hinweis: Ich würde auch in YouTube / Sachin Sammy nachlesen, wie man ein Umleitungsskript von http zu https erstellt.

seanmac4477
quelle