Wie kann ich eine PEM-Datei aus einem SSL-Zertifikat erstellen?
Dies sind die Dateien, die mir zur Verfügung stehen:
.crt
server.csr
server.key
Wie kann ich eine PEM-Datei aus einem SSL-Zertifikat erstellen?
Dies sind die Dateien, die mir zur Verfügung stehen:
.crt
server.csr
server.key
Ihre Schlüssel können bereits im PEM-Format vorliegen, sind aber nur mit .crt oder .key benannt.
Beginnt der Inhalt der Datei mit -----BEGIN
und Sie können sie in einem Texteditor lesen:
Die Datei verwendet base64, das im ASCII- und nicht im Binärformat lesbar ist. Das Zertifikat liegt bereits im PEM-Format vor. Ändern Sie einfach die Erweiterung in .pem.
Wenn die Datei im Binärformat vorliegt:
Für die server.crt würden Sie Folgendes verwenden
openssl x509 -inform DER -outform PEM -in server.crt -out server.crt.pem
Für server.key, verwenden Sie openssl rsa
anstelle von openssl x509
.
Die Datei server.key ist wahrscheinlich Ihr privater Schlüssel, und die Datei .crt ist das zurückgegebene, signierte x509-Zertifikat.
Wenn es sich um einen Webserver handelt und Sie das Laden eines separaten privaten und öffentlichen Schlüssels nicht angeben können:
Möglicherweise müssen Sie die beiden Dateien miteinander verknüpfen. Verwenden Sie dazu:
cat server.crt server.key > server.includesprivatekey.pem
Ich würde empfehlen, die Dateien mit "includesprivatekey" zu benennen, um Ihnen die Verwaltung der Berechtigungen zu erleichtern, die Sie für diese Datei haben.
Überprüfen Sie das Format des server.key. Ich habe nur angenommen, dass es RSA ist. Aber wenn Sie die erste Zeile der Datei lesen, werden Sie das wahrscheinlich herausfinden.
Nur eine Vorwarnung, dass cat server.crt server.key > server.pem
platziert den offenen Kommentar nicht in eine eigene Zeile, was anscheinend eine Voraussetzung ist. Die Kurierpost hat mir die Hölle heiß gemacht und ich habe Stunden gebraucht, um herauszufinden, was falsch lief.
Danke, Graham. Verschiedene Tools erzeugen die Dateien auf unterschiedliche Weise, und letztendlich ist eine gewisse Überprüfung gut. Als ich diese Schritte durchführte, endeten die Dateien zum Beispiel mit einem Zeilenumbruch.
Ich musste dies für einen AWS ELB tun. Nachdem ich viele Male durch den Dialog geprügelt wurde, funktionierte dies schließlich für mich:
openssl rsa -in server.key -text > private.pem
openssl x509 -inform PEM -in server.crt > public.pem
Danke NCZ
Edit: Wie @floatingrock sagt
Vergessen Sie bei AWS nicht, dem Dateinamen den Zusatz file://
. Es wird also so aussehen:
aws iam upload-server-certificate --server-certificate-name blah --certificate-body file://path/to/server.crt --private-key file://path/to/private.key --path /cloudfront/static/
http://docs.aws.amazon.com/cli/latest/reference/iam/upload-server-certificate.html
Vergessen Sie bei AWS nicht, dem Dateinamen den Zusatz file://
. Es wird also so aussehen: aws iam upload-server-certificate --server-certificate-name blah --certificate-body file://~/Desktop/server.crt --private-key file://~/Desktop/private.key --path /cloudfront/static/
Der zweite Befehl hat keine Auswirkung, wenn die Eingabe eine pem-Datei ist. Wenn dies der Fall ist, benötigen Sie nur den ersten Befehl
Wenn Sie eine Datei wünschen, die mit -----BEGIN RSA PRIVATE KEY-----
und haben eine, die beginnt mit -----BEGIN ENCRYPTED PRIVATE KEY-----
ist dies der Befehl, den Sie verwenden möchten.
CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.
4 Stimmen
Andersherum: Konvertieren
.pem
a.crt
y.key
.