OpenSSL kann nach dem Kennwort ohne Fehlermeldung fehlschlagen

364
Kyle B

Ich versuche, eine Stammzertifizierungsstelle zu verwenden, um eine CSR für ein Zwischenzertifikat zu signieren, und OpenSSL fragt nach meinem Kennwort. Danach passiert nichts. Es werden keine Fehlernachrichten und keine Zertifikate erstellt. Der Befehl, bei dem es fehlschlägt, lautet:

openssl ca -config rootca.cnf -extensions v3_intermediate_ca ^ -days 730 -notext -md sha256 ^ -in C:/Certificates/IntermediateCA/csr/intermediate.csr.pem ^ -out C:/Certificates/IntermediateCA/public/intermediate.cert.pem 

openssl antwortet mit:

Enter pass phrase for C:/Certificates/RootCA/private/rootca.key.pem: 

und wenn ich das Passwort eingebe, passiert danach nichts.

Eine gute Antwort auf diese Frage hätte zwei Teile:

  1. Was mache ich falsch?
  2. Wie kann ich eine Fehlerausgabe für dieses Problem erhalten?

Weitere Details

Ich bin nicht sicher, ob dies erforderlich ist, aber hier sind einige zusätzliche Befehle, die ich zum Generieren des Restes der Zwischenzertifizierungsstelle verwende:

Erstellen des privaten Schlüssels der Zwischenzertifizierungsstelle:

openssl genrsa -aes256 -out private/intermediate.key.pem 4096 

Erstellen einer Zwischen-CSR:

openssl req -config intermediateca.cnf -new -sha256 ^ -key private/intermediate.key.pem ^ -out csr/intermediate.csr.pem 

rootca.cnf (die wichtigen Teile):

[ CA_default ] dir = C:/Certificates/RootCA ... [ policy_strict ] countryName = match stateOrProvinceName = match localityName = match organizationName = match organizationalUnitName = optional commonName = supplied emailAddress = optional ... [ req_distinguished_name ] 0.organizationName_default = org1 1.organizationName_default = org1.1 ... [ v3_intermediate_ca ] subjectKeyIdentifier = hash authorityKeyIdentifier = keyid:always,issuer basicConstraints = critical, CA:true, pathlen:0 keyUsage = critical, digitalSignature, cRLSign, keyCertSign 
1
Können Sie auf das Verzeichnis "C: / Certificates / RootCA / private" zugreifen? Kannst du die Datei `C: / Certificates / RootCA / private / rootca.key.pem` mit dem Benutzer lesen, mit dem du die openssl ausführst? Letzte Idee, ist das Passwort korrekt (stehen keine Sonderzeichen im Weg?) tukan vor 6 Jahren 0
Ja, Sie können alle Dateien lesen. Ich habe eine OpenSSL-Prüfung verwendet, um zu bestätigen, dass der private Schlüssel korrekt war (mit dem Kennwort). Kyle B vor 6 Jahren 0
Könnten Sie es mit Process Explorer oder Procmon (beide von Sysinternals) prüfen, um zu sehen, ob auf die Datei `rootca.key.pem` zugegriffen wird, bzw. ob diese gelesen wird. Zweitens, was mir in den Sinn kommt, ist, dass die Datei unterschiedliche Zeilen haben könnte -> windows (EOL -> crlf) vs. linux (lf). tukan vor 6 Jahren 0

0 Antworten auf die Frage