Ich muss einen Apache 2-Server mit SSL einrichten.
Ich habe meine * .key-Datei, aber die gesamte Dokumentation, die ich online gefunden habe, * .crt-Dateien sind angegeben, und meine Zertifizierungsstelle hat mir nur eine * .cer-Datei zur Verfügung gestellt.
Sind * .cer-Dateien mit * .crt identisch? Wenn nicht, wie kann ich CER in das CRT-Format konvertieren?
CER
undCRT
Erweiterungen bedeuten nichts. Verschiedene PKI-Anbieter verwenden unterschiedliche Erweiterungen für dieselbe Sache. Wenn die Datei binär ist, ist sie wahrscheinlich ASN.1 / DER-codiert. Wenn die Datei für Menschen lesbar ist-----BEGIN CERTIFICATE-----
, wird ihre PEM codiert. Was hast du (DER oder PEM) und was brauchst du (DER oder PEM)?Antworten:
Dateierweiterungen für kryptografische Zertifikate sind nicht so standardisiert wie erwartet. Windows behandelt das Doppelklicken auf eine
.crt
Datei standardmäßig als Anforderung zum Importieren des Zertifikats in den Windows-Stammzertifikatsspeicher, behandelt eine.cer
Datei jedoch als Anforderung zum Anzeigen des Zertifikats. Sie unterscheiden sich in dem Sinne, dass Windows eine unterschiedliche Bedeutung für das hat, was passiert, wenn Sie auf jeden Dateityp doppelklicken.Die Art und Weise, wie Windows sie beim Doppelklicken behandelt, ist jedoch der einzige Unterschied zwischen beiden. Beide Erweiterungen stellen lediglich dar, dass sie ein öffentliches Zertifikat enthalten. Sie können eine Zertifikatdatei umbenennen, um in jeder System- oder Konfigurationsdatei, die ich gesehen habe, eine Erweiterung anstelle der anderen zu verwenden. Und auf Nicht-Windows-Plattformen (und sogar unter Windows) achten die Benutzer nicht besonders darauf, welche Erweiterung sie verwenden, und behandeln beide austauschbar, da zwischen ihnen kein Unterschied besteht, solange der Inhalt der Datei korrekt ist.
Noch verwirrender ist, dass es zwei Standardmethoden zum Speichern von Zertifikatdaten in einer Datei gibt: Eine ist eine "binäre" X.509-Codierung und die andere ist eine "Text" -Basis64-Codierung, die normalerweise mit "
-----BEGIN CERTIFICATE-----
" beginnt . Diese codieren dieselben Daten auf unterschiedliche Weise. Die meisten Systeme akzeptieren beide Formate, aber wenn nötig, können Sie eines über openssl oder andere Tools in das andere konvertieren. Die Codierung in einer Zertifikatdatei ist wirklich unabhängig davon, welche Erweiterung jemand der Datei gegeben hat.quelle
Laut Dokumentation mod_ssl :
Die Zertifikatdatei sollte PEM-codiert sein. X.509-Zertifikatdatei:
quelle
zscaler
, läuftvagrant
aufwin
(vbox
homestead
), durch unsere vertrauenswürdigen Stamm certs in das vagabundierende Box zu installieren? Ich würdescp
sie verwenden, dann Ihre Konvertierung verwenden und sie in/etc/ssl/certs
dieca-certificates.crt
Datei einbinden und sie auch in die Datei kopieren, bevor sie erneut bereitgestellt werden. Trotzdem wird auf der Entwicklungsbox eingoogle-recaptcha
tls
ssl
Fehler angezeigtfile_get_contents
.Grundsätzlich gibt es zwei CER-Zertifikatcodierungstypen, DER und Base64. Wenn der Typ DER ein Fehlerladezertifikat zurückgibt (asn1-Codierungsroutinen), versuchen Sie es mit der PEM, und es soll funktionieren.
openssl x509 -inform DER -in certificate.cer -out certificate.crt
openssl x509 -inform PEM -in certificate.cer -out certificate.crt
quelle
Ich gehe davon aus, dass Sie eine CER-Datei mit PKCS # 7-codierten Zertifikatdaten haben und diese in PEM-codierte Zertifikatdaten konvertieren möchten (normalerweise eine CRT- oder PEM-Datei). Eine CER-Datei mit PKCS # 7-codierten Daten sieht beispielsweise folgendermaßen aus:
PEM-Zertifikatdaten sehen folgendermaßen aus:
Es gibt einen OpenSSL-Befehl, der .cer-Dateien (mit PKCS # 7-Daten) in die PEM-Daten konvertiert, die Sie möglicherweise erwarten (der
BEGIN CERTIFICATE
Block im obigen Beispiel). Mit diesem Befehl können Sie PKCS # 7-Daten in das PEM-Format für eine Datei zwingen, die wir certfile.cer nennen:openssl pkcs7 -text -in certfile.cer -print_certs -outform PEM -out certfile.pem
Beachten Sie, dass eine .cer- oder .pem-Datei möglicherweise ein oder mehrere Zertifikate enthält (möglicherweise die gesamte Zertifikatkette).
quelle
CER ist ein X.509-Zertifikat in binärer Form, DER- codiert.
CRT ist ein binäres X.509-Zertifikat, das in Textcodierung ( Base-64 ) gekapselt ist .
Es ist nicht die gleiche Kodierung.
quelle
Die Antwort auf die Frage, wie eine CER-Datei in eine CRT-Datei konvertiert wird (sie sind unterschiedlich codiert!), Lautet:
quelle
openssl x509 -inform der -in certificate.cer -out certificate.pem
unable to load PKCS7 object
Ich benutze Befehl:
openssl x509 -inform PEM -in certificate.cer -out certificate.crt
CER ist jedoch ein X.509-Zertifikat in binärer Form, DER-codiert. CRT ist ein binäres X.509-Zertifikat, das in Textcodierung (Base-64) gekapselt ist.
Aus diesem Grund sollten Sie vielleicht Folgendes verwenden:
openssl x509 -inform DER -in certificate.cer -out certificate.crt
Und dann, um Ihr Zertifikat zu importieren:
Kopieren Sie Ihre Zertifizierungsstelle nach dir:
/usr/local/share/ca-certificates/
Befehl verwenden:
sudo cp foo.crt /usr/local/share/ca-certificates/foo.crt
Aktualisieren Sie den CA-Speicher:
sudo update-ca-certificates
quelle
Wenn Ihre Cer-Datei ein Binärformat hat, müssen Sie sie mit konvertieren
quelle
Die Dateien .cer und .crt sollten austauschbar sein, um sie in einen Schlüsselspeicher zu importieren.
Schauen Sie sich den Inhalt der CER-Datei an. Löschen Sie alles vor
-----BEGIN CERTIFICATE-----
und nach der-----END CERTIFICATE-----
Zeile. Sie werden mit den BEGIN / END-Zeilen mit einer Reihe von Base64-codierten Dingen zwischen ihnen belassen.Dann importieren Sie es einfach mit Keytool in Ihre Schlüsseldatei.
quelle
Mach einfach
quelle