Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
Erstellen und Signieren eines X.509-Zertifikats
Sie können ein X.509-Zertifikat für Ihre Anwendung mit erstellen OpenSSL
. OpenSSL ist eine Standard-Open-Source-Bibliothek, die eine Vielzahl von kryptografischen Funktionen unterstützt, einschließlich der Erstellung und Signierung von x509-Zertifikaten. Weitere Informationen zu OpenSSL finden Sie unter www.openssl.org
Anmerkung
Sie müssen nur ein Zertifikat lokal erstellen, wenn Sie HTTPS in einer Einzel-Instance-Umgebung verwenden oder auf dem Backend neu verschlüsseln möchten mit einem selbstsignierten Zertifikat. Wenn Sie einen Domänennamen besitzen, können Sie in AWS ein Zertifikat erstellen und es über AWS Certificate Manager (ACM) kostenlos mit einer lastverteilten Umgebung verwenden. Weitere Informationen finden Sie unter Request a Certificate (Anfordern eines Zertifikats) im AWS Certificate ManagerBenutzerhandbuch.
Führen Sie openssl version
in der Befehlszeile aus, um zu prüfen, ob Sie bereits OpenSSL installiert haben. Wenn nicht, können Sie den Quellcode mithilfe der Anweisungen im öffentlichen GitHub-Repository
~/eb$ eb ssh
[ec2-user@ip-255-55-55-255 ~]$ openssl version
OpenSSL 1.0.1k-fips 8 Jan 2015
Sie müssen einen privaten RSA-Schlüssel erstellen, um Ihre Zertifikatsignieranforderung zu erstellen. Zum Erstellen Ihres privaten Schlüssels verwenden Sie den Befehl openssl genrsa:
[ec2-user@ip-255-55-55-255 ~]$ openssl genrsa 2048 > privatekey.pem
Generating RSA private key, 2048 bit long modulus
.................................................................................................................................+++
...............+++
e is 65537 (0x10001)
privatekey.pem
-
Der Name der Datei, in der Sie den privaten Schlüssel speichern möchten. Normalerweise zeigt der Befehl openssl genrsa den Inhalt des privaten Schlüssels auf dem Bildschirm an; dieser Befehl übergibt die Ausgabe jedoch in eine Datei. Wählen Sie einen beliebigen Dateinamen und speichern Sie die Datei an einem sicheren Ort, sodass Sie sie später abrufen können. Wenn Sie den privaten Schlüssel verlieren, können Sie das Zertifikat nicht mehr verwenden.
Eine CSR ist eine Datei, die Sie an eine Zertifizierungsstelle senden, um ein digitales Serverzertifikat zu erhalten. Zum Erstellen einer CSR verwenden Sie den Befehl openssl req:
$ openssl req -new -key privatekey.pem
-out csr.pem
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
Geben Sie die erforderlichen Informationen ein und drücken Sie Enter (Eingabetaste). Die folgende Tabelle beschreibt und enthält Beispiele für jedes Feld.
Name | Beschreibung | Beispiel |
---|---|---|
Ländername | Die zweistellige ISO-Abkürzung für Ihr Land | US = USA |
Bundesstaat oder Provinz | Der Name des Bundesstaats oder der Provinz, in dem bzw. der sich Ihre Organisation befindet. Dieser Name darf nicht abgekürzt werden. | Washington |
Locality Name | Der Name der Stadt, in der sich Ihre Organisation befindet. | Seattle |
Name der Organisation | Der vollständige, offizielle Name Ihrer Organisation. Kürzen Sie den Namen Ihrer Organisation nicht ab. | Beispielunternehmen |
Organisationseinheit | Optional, für weitere Informationen zu Ihrer Organisation. | Marketing |
Common Name | Der vollqualifizierte Domänenname für Ihre Website. Dieser muss mit dem Domänennamen übereinstimmen, den Benutzer sehen, wenn sie Ihre Website besuchen. Andernfalls werden Zertifikatfehler angezeigt. | www.example.com |
E-Mail-Adresse | Die E-Mail-Adresse des Websiteadministrators. | someone@example.com |
Sie können die Signierungsanforderung zur Signierung an einen Dritten weitergeben oder sie für Entwicklung und Tests selbst signieren. Selbstsignierte Zertifikate können auch für Backend-HTTPS zwischen einem Load Balancer und EC2-Instances verwendet werden.
Zum Signieren des Zertifikats verwenden Sie den Befehl openssl x509. Im folgenden Beispiel werden der private Schlüssel aus dem vorherigen Schritt (privatekey.pem
) und die Signierungsanforderung (csr.pem
) zum Erstellen eines öffentlichen Zertifikats mit dem Namen public.crt
verwendet, das 365
Tage gültig ist.
$ openssl x509 -req -days 365
-in csr.pem
-signkey privatekey.pem
-out public.crt
Signature ok
subject=/C=us/ST=washington/L=seattle/O=example corporation/OU=marketing/CN=www.example.com/emailAddress=someone@example.com
Getting Private key
Behalten Sie den privaten Schlüssel und das öffentliche Zertifikat für eine spätere Nutzung. Sie können die Signierungsanforderung verwerfen. Speichern Sie den privaten Schlüssel immer an einem sicheren Ort und vermeiden Sie es, ihn zu Ihrem Quellcode hinzuzufügen.
Zum Verwenden des Zertifikats mit der Windows Server-Plattform müssen Sie es in ein PFX-Format konvertieren. Verwenden Sie den folgenden Befehl zum Erstellen eines PFX-Zertifikats aus dem privaten Schlüssel und den öffentlichen Zertifikatsdateien:
$ openssl pkcs12 -export -out example.com
.pfx -inkey privatekey.pem
-in public.crt
Enter Export Password: password
Verifying - Enter Export Password: password
Wenn Sie ein Zertifikat haben, können Sie es für die Verwendung mit einem Load Balancer in IAM hochladen oder die Instances in Ihrer Umgebung konfigurieren, um HTTPS zu beenden.