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.
Verwenden von SSL
Wichtig
Der AWS OpsWorks Stacks Dienst hat am 26. Mai 2024 das Ende seiner Lebensdauer erreicht und wurde sowohl für neue als auch für bestehende Kunden deaktiviert. Wir empfehlen Kunden dringend, ihre Workloads so bald wie möglich auf andere Lösungen zu migrieren. Wenn Sie Fragen zur Migration haben, wenden Sie sich an das AWS -Support Team auf AWS re:POST
Wenn Sie SSL in Ihrer Anwendung nutzen möchten, müssen Sie zunächst ein digitales Serverzertifikat von einer Zertifizierungsstelle einholen. Der Einfachheit halber wird in dieser Anleitung ein eigenes Zertifikat erstellt und signiert. Selbstsignierte Zertifikate sind für Lern- und Testzwecke hilfreich. Für Produktions-Stacks sollten jedoch grundsätzlich von einer Zertifizierungsstelle signierte Zertifikate verwendet werden.
In dieser Anleitung werden Sie Folgendes tun:
-
Installieren und konfigurieren Sie OpenSSL.
-
Erstellen eines privaten Schlüssels
-
Erstellen einer Zertifikatssignierungsanforderung
-
Generieren eines selbstsignierten Zertifikats
-
Bearbeiten der Anwendung mit Ihren Zertifikatsinformationen
Wichtig
Wenn Ihre Anwendung SSL verwendet, empfehlen wir Ihnen, diese nach Möglichkeit in Ihren Anwendungsserverschichten zu deaktivieren SSLv3, um die in CVE-2014-3566 beschriebenen Sicherheitslücken zu beheben.
Themen
Schritt 1: Installieren und Konfigurieren von OpenSSL
Um Serverzertifikate erstellen und hochladen zu können, muss Ihr Tool die Protokolle SSL und TLS unterstützen. Das Open-Source-Tool OpenSSL bietet die grundlegenden Verschlüsselungsfunktionen, die Sie zum Erstellen eines RSA-Tokens und Signieren des Tokens mit Ihrem privaten Schlüssel benötigen.
Im folgenden Verfahren gehen wir davon aus, dass auf Ihrem Computer noch kein OpenSSL installiert ist.
So installieren Sie OpenSSL unter Linux und Unix
-
Rufen Sie OpenSSL: Source, Tarballs (OpenSSL: Quelle, Tarballs)
auf. -
Laden Sie die aktuelle Quelldatei herunter.
-
Erstellen Sie das Paket.
So installieren Sie OpenSSL unter Windows
-
Führen Sie das Installationsprogramm aus und befolgen Sie die Anweisungen des Microsoft Visual C++ 2008 Redistributable-Installationsassistenten.
-
Rufen Sie OpenSSL: Binary Distributions (OpenSSL: Binäre Verteilungen)
auf, klicken Sie auf die OpenSSL-Binärdatei für Ihre Umgebung und speichern Sie das Installationsprogramm lokal. -
Führen Sie das Installationsprogramm aus und befolgen Sie die Anweisungen im OpenSSL Setup Wizard (OpenSSL-Einrichtungsassistent), um die Binärdateien zu installieren.
Erstellen Sie eine Umgebungsvariable, die auf den Installationspunkt von OpenSSL verweist. Öffnen Sie hierfür ein Terminal oder Befehlsfenster und geben Sie folgende Befehlszeilen ein.
-
Unter Linux und Unix
export OpenSSL_HOME=
path_to_your_OpenSSL_installation
-
Unter Windows
set OpenSSL_HOME=
path_to_your_OpenSSL_installation
Um den Pfad der OpenSSL-Binärdatei der Pfadvariablen Ihres Computers hinzuzufügen, öffnen Sie ein Terminal oder Befehlsfenster und geben Sie die folgenden Befehlszeilen ein.
-
Unter Linux und Unix
export PATH=$PATH:$OpenSSL_HOME/bin
-
Unter Windows
set Path=OpenSSL_HOME\bin;%Path%
Anmerkung
Alle Änderungen, die Sie mithilfe dieser Befehlszeilen an den Umgebungsvariablen vornehmen, sind nur für die aktuelle Befehlszeilensitzung gültig.
Schritt 2: Erstellen eines privaten Schlüssels
Sie benötigen einen eindeutigen privaten Schlüssel, um Ihre Zertifikatsignieranforderung zu erstellen. Sie können den Schlüssel mithilfe der folgenden Befehlszeile erstellen:
openssl genrsa 2048 > privatekey.pem
Schritt 3: Erstellen einer Zertifikatsignieranforderung
Ein Zertifikatsignieranforderung (Certificate Signing Request, CSR) ist eine Datei, die Sie an eine Zertifizierungsstelle senden, um ein digitales Serverzertifikat zu erhalten. Sie können die CSR-Anforderung mithilfe der folgenden Befehlszeile erstellen:
openssl req -new -key privatekey.pem -out csr.pem
Die Ausgabe für den Befehl sieht dann wie folgt aus:
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.
Mithilfe der folgenden Tabelle können Sie die Zertifikatsanforderung erstellen.
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. | UnternehmenX |
Organisationseinheit | (Optional) Für weitere Informationen zu Ihrer Organisation | Marketing |
Common Name | Der vollqualifizierte Domänenname für Ihr CNAME. Bei der Überprüfung des Zertifikatsnamens wird eine Warnung angezeigt, wenn dieser nicht genau übereinstimmt. | www.example.com |
E-Mail-Adresse | Die E-Mail-Adresse des Serveradministrators | someone@example.com |
Anmerkung
Oft ist nicht klar, was der allgemeine Name ist, und dieses Feld wird dann falsch ausgefüllt. Der allgemeine Name ist in der Regel der Hostname zusammen mit dem Domänennamen. Er entspricht dem Schema "www.example.com" oder "example.com". CSR-Anfragen müssen den korrekten allgemeinen Namen enthalten.
Schritt 4: Einreichen der CSR-Anfrage bei der Zertifizierungsstelle
Für die Produktion müssen Sie eine CSR-Anfrage für ein Serverzertifikat bei einer Zertifizierungsstelle einreichen. Hierfür benötigen Sie möglicherweise weitere Informationen oder Identitätsnachweise. Wenn Ihr Antrag erfolgreich ist, erhalten Sie von der Zertifizierungsstelle ein digital signiertes Zertifikat und eventuell auch eine Zertifikatskettendatei. AWS empfiehlt keine bestimmte Zertifizierungsstelle. Eine unvollständige Liste der verfügbaren CAs Anbieter finden Sie unter Zertifizierungsstelle — Anbieter auf Wikipedia
Sie können auch ein selbstsigniertes Zertifikat für Testzwecke erstellen. Verwenden Sie für dieses Beispiel die folgende Befehlszeile, um ein selbstsigniertes Zertifikat zu erstellen.
openssl x509 -req -days 365 -in csr.pem -signkey privatekey.pem -out server.crt
Die Ausgabe sieht etwa folgendermaßen aus:
Loading 'screen' into random state - done
Signature ok
subject=/C=us/ST=washington/L=seattle/O=corporationx/OU=marketing/CN=example.com/emailAddress=someone@example.com
Getting Private key
Schritt 5: Bearbeiten der App
Nachdem Sie Ihr Zertifikat generiert und signiert haben, müssen Sie in Ihrer App SSL aktivieren und die Zertifikatsinformationen eintragen. Wählen Sie auf der Seite Apps eine App aus, um die Detailseite aufzurufen, und klicken Sie dann auf Edit App (App bearbeiten). Wählen Sie für Enable SSL (SSL aktivieren) die Option Yes (Ja) aus, um SSL zu aktivieren. Es werden folgende Konfigurationsoptionen angezeigt.
- SSL Certificate (SSL-Zertifikat)
-
Kopieren Sie den Inhalt der CRT-Zertifikatsdatei für den öffentlichen Schlüssel in das Feld. Das Zertifikat sollte etwa wie folgt aussehen:
-----BEGIN CERTIFICATE----- MIICuTCCAiICCQCtqFKItVQJpzANBgkqhkiG9w0BAQUFADCBoDELMAkGA1UEBhMC dXMxEzARBgNVBAgMCndhc2hpbmd0b24xEDAOBgNVBAcMB3NlYXR0bGUxDzANBgNV BAoMBmFtYXpvbjEWMBQGA1UECwwNRGV2IGFuZCBUb29sczEdMBsGA1UEAwwUc3Rl cGhhbmllYXBpZXJjZS5jb20xIjAgBgkqhkiG9w0BCQEWE3NhcGllcmNlQGFtYXpv ... -----END CERTIFICATE-----
Anmerkung
Wenn Sie Nginx verwenden und eine Zertifikatskettendatei haben, hängen Sie deren Inhalt an die Zertifikatsdatei für den öffentlichen Schlüssel an.
Wenn Sie ein vorhandenes Zertifikat aktualisieren, gehen Sie wie folgt vor:
-
Wählen Sie Update SSL certificate (SSL-Zertifikat aktualisieren) aus, um das Zertifikat zu aktualisieren.
-
Falls das neue Zertifikat nicht mit dem vorhandenen privaten Schlüssel übereinstimmt, wählen Sie Update SSL certificate key (SSL-Zertifikatschlüssel aktualisieren) aus.
-
Wenn das neue Zertifikat nicht mit der vorhandenen Zertifikatskette übereinstimmt, wählen Sie Update SSL certificates (SSL-Zertifikate aktualisieren) aus.
-
- SSL Certificate Key (SSL-Zertifikatschlüssel)
-
Kopieren Sie den Inhalt der privaten Schlüsseldatei (PEM-Datei) in das Feld. Es sollte etwa wie folgt aussehen:
----BEGIN RSA PRIVATE KEY----- MIICXQIBAAKBgQC0CYklJY5r4vV2NHQYEpwtsLuMMBhylMrgBShKq+HHVLYQQCL6 +wGIiRq5qXqZlRXje3GM5Jvcm6q0R71MfRIl1FuzKyqDtneZaAIEYniZibHiUnmO /UNqpFDosw/6hY3ONk0fSBlU4ivD0Gjpf6J80jL3DJ4R23Ed0sdL4pRT3QIDAQAB AoGBAKmMfWrNRqYVtGKgnWB6Tji9QrKQLMXjmHeGg95mppdJELiXHhpMvrHtpIyK ... -----END RSA PRIVATE KEY-----
- SSL certificates of Certification Authorities (SSL-Zertifikate von Zertifizierungsstellen)
-
Falls Sie eine Zertifikatskettendatei haben, kopieren Sie deren Inhalt in das Feld.
Anmerkung
Falls Sie Nginx verwenden, muss dieses Feld leer bleiben. Wenn Sie eine Zertifikatskettendatei haben, hängen Sie diese über SSL Certificate (SSL-Zertifikat) an die Zertifikatsdatei des öffentlichen Schlüssels an.

Klicken Sie auf Save (Speichern) und stellen Sie die App erneut bereit, um die Online-Instances zu aktualisieren.
Für die integrierten Anwendungsserverschichten aktualisiert AWS OpsWorks Stacks automatisch die Serverkonfiguration. Nach der Bereitstellung können Sie die Installation von OpenSSL wie nachfolgend beschrieben überprüfen.
So überprüfen Sie die OpenSSL-Installation
-
Rufen Sie die Seite Instances auf.
-
Klicken Sie auf die IP-Adresse der Anwendungsserver-Instance oder die IP-Adresse des Load Balancers (bei Verwendung eines Load Balancers), um die App auszuführen.
-
Ändern Sie das Präfix der IP-Adresse von
http://
inhttps://
und aktualisieren Sie den Browser, um zu überprüfen, ob die Seite mit SSL korrekt geladen wird.
Benutzer, die Apps für die Ausführung in Mozilla Firefox konfiguriert haben, erhalten gelegentlich den folgenden Zertifikatsfehler: SEC_ERROR_UNKNOWN_ISSUER
. Dieser Fehler kann durch Zertifikatersetzung in den Antivirus- und Anti-Malware-Programmen Ihrer Organisation, durch bestimmte Software zur Überwachung und Filterung des Netzwerkdatenverkehrs und durch Malware verursacht werden. Weitere Informationen zur Behebung dieses Fehlers finden Sie unter Beheben der Fehlercodes in der Meldung „Diese Verbindung ist nicht sicher“ auf sicheren Websites
Bei allen anderen Ebenen, einschließlich benutzerdefinierten Ebenen, fügt AWS OpsWorks Stacks die SSL-Einstellungen automatisch den deploy-Attributen der App hinzu. Um die Informationen aus dem Knotenobjekt abzurufen und den Server zu konfigurieren, müssen Sie ein benutzerdefiniertes Rezept implementieren.