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.
Aktiviere HTTPS auf deiner WordPress Instanz mit Let's Encrypt und Certbot
Tipp
Amazon Lightsail bietet einen geführten Workflow, der die Installation, Konfiguration und Verlängerung eines Let's Encrypt-Zertifikats auf Ihrer Instance automatisiert. WordPress Wir empfehlen Ihnen dringend, den Workflow zu verwenden, anstatt den manuellen Schritten in diesem Tutorial zu folgen. Weitere Informationen finden Sie unter Starten und Konfigurieren einer WordPress Instance.
Mit Amazon Lightsail Load Balancern können Sie Ihre Websites und Anwendungen mit sichern. SSL/TLS Die Verwendung eines Lightsail Load Balancers ist jedoch im Allgemeinen möglicherweise nicht die richtige Wahl. Möglicherweise benötigt Ihre Website nicht die Skalierbarkeit oder Fehlertoleranz, die Load Balancer bieten, oder vielleicht möchten Sie die Kosten optimieren.
Im letzteren Fall können Sie Let's Encrypt verwenden, um ein kostenloses SSL-Zertifikat zu erhalten. Dieses Tutorial zeigt Ihnen, wie Sie mit Certbot ein Let's Encrypt-Wildcard-Zertifikat anfordern und es mithilfe des Really Simple SSL-Plug-ins in Ihre WordPress Instanz integrieren.
Inhalt
-
Schritt 2: Installieren Sie Certbot auf Ihrer Lightsail-Instanz
-
Schritt 3: Fordern Sie ein Let's Encrypt SSL Wildcard-Zertifikat an
-
Schritt 4: Fügen Sie TXT-Einträge zur DNS-Zone Ihrer Domain hinzu
-
Schritt 5: Bestätigen, dass die TXT-Datensätze weitergegeben wurden
-
Schritt 6: Schließen Sie die Let's Encrypt SSL-Zertifikatsanfrage ab
-
Schritt 7: Erstellen Sie Links zur Zertifikatsdatei im Apache-Verzeichnis
-
Schritt 8: Konfigurieren Sie die HTTPS-Umleitung mit dem Really Simple SSL-Plug-In
-
Schritt 9: Erneuern der Let's Encrypt Zertifikate alle 90 Tage
Schritt 1: Erfüllen der Voraussetzungen
Erfüllen Sie die folgenden Voraussetzungen, falls Sie dies noch nicht getan haben:
-
Erstellen Sie eine WordPress Instanz in Lightsail. Weitere Informationen finden Sie unter Starten und Konfigurieren einer WordPress Instanz.
-
Registrieren Sie einen Domänennamen und verschaffen Sie sich den administrativen Zugriff auf seine DNS-Datensätze. Weitere Informationen hierzu finden Sie unter DNS.
Anmerkung
Wir empfehlen, dass Sie die DNS-Einträge Ihrer Domain mithilfe einer Lightsail-DNS-Zone verwalten. Weitere Informationen finden Sie unter Erstellen einer DNS-Zone zur Verwaltung der DNS-Einträge Ihrer Domain.
-
Verwenden Sie das browserbasierte SSH-Terminal in der Lightsail-Konsole, um die Schritte in diesem Tutorial auszuführen. Sie können aber auch Ihren eigenen SSH-Client verwenden, wie z. B. PuTTY. Informationen dazu, wie Sie PuTTY konfigurieren, finden Sie unter PuTTY herunterladen und einrichten, um eine Verbindung über SSH herzustellen.
Nachdem Sie die Voraussetzungen erfüllt haben, fahren Sie mit dem nächsten Abschnitt dieses Tutorials fort.
Schritt 2: Installieren Sie Certbot auf Ihrer Lightsail-Instanz
Certbot ist ein Client, mit dem ein Zertifikat von Let's Encrypt angefordert und auf einem Webserver bereitgestellt wird. Let's Encrypt verwendet das ACME-Protokoll, um Zertifikate auszustellen, und Certbot ist ein ACME-enabled Client, der mit Let's Encrypt interagiert.
Um Certbot auf Ihrer Lightsail-Instanz zu installieren
-
Melden Sie sich bei der Lightsail-Konsole an. https://lightsail.aws.amazon.com/
-
Wählen Sie auf der Lightsail-Startseite auf der Registerkarte Instances das SSH-Schnellverbindungssymbol für die Instance aus, zu der Sie eine Verbindung herstellen möchten.
-
Nachdem Ihre browserbasierte Lightsail-SSH-Sitzung verbunden ist, geben Sie den folgenden Befehl ein, um die Pakete auf Ihrer Instance zu aktualisieren:
sudo apt-get update -
Geben Sie den folgenden Befehl ein, um das Software-Eigenschaftenpaket zu installieren. Die Entwickler von Certbot verwenden ein Personal Package Archive (PPA), um Certbot zu verteilen. Das Software-Eigenschaftenpaket macht es effizienter, mit PPAs zu arbeiten.
sudo apt-get install software-properties-common -yAnmerkung
Wenn beim Ausführen des
sudo apt-get installBefehls einCould not get lockFehler auftritt, warten Sie etwa 15 Minuten und versuchen Sie es erneut. Dieser Fehler kann durch einen Cron-Job verursacht werden, der das Paketverwaltungstool Apt verwendet, um unbeaufsichtigte Upgrades zu installieren. -
Geben Sie den folgenden Befehl ein, um apt zu aktualisieren und das neue Repository aufzunehmen:
sudo apt-get update -y -
Geben Sie den folgenden Befehl ein, um Certbot zu installieren.
sudo apt-get install certbot -yCertbot ist jetzt auf Ihrer Lightsail-Instanz installiert.
Halten Sie das browserbasierte SSH-Terminalfenster geöffnet - Sie kehren später in diesem Tutorial dorthin zurück. Fahren Sie mit dem nächsten Abschnitt dieses Tutorials fort.
Schritt 3: Anfordern eines Let's Encrypt SSL Wildcard-Zertifikats
Beginnen Sie mit der Anforderung eines Zertifikats von Let's Encrypt. Fordern Sie mit Certbot ein Wildcard-Zertifikat an, mit dem Sie ein einzelnes Zertifikat für eine Domäne und ihre Unterdomänen verwenden können. Ein einzelnes Wildcard-Zertifikat funktioniert beispielsweise für die Top-Level-Domäne example.com und die Unterdomänen blog.example.com und stuff.example.com.
Um ein Let's Encrypt SSL-Platzhalterzertifikat anzufordern
-
Geben Sie in demselben browserbasierten SSH-Terminalfenster, das im vorherigen Schritt dieses Tutorials verwendet wurde, die folgenden Befehle ein, um eine Umgebungsvariable für Ihre Domain festzulegen. Achten Sie darauf,
domaindurch Ihren registrierten Domänennamen zu ersetzen.DOMAIN=domainWILDCARD=*.$DOMAINBeispiel:
DOMAIN=example.com WILDCARD=*.$DOMAIN -
Geben Sie den folgenden Befehl ein, um zu bestätigen, dass die Variablen die richtigen Werte zurückgeben:
echo $DOMAIN && echo $WILDCARDDas Ergebnis sollte in etwa wie folgt aussehen:
-
Geben Sie den folgenden Befehl ein, um Certbot im interaktiven Modus zu starten. Dieser Befehl weist Certbot an, eine manuelle Autorisierungsmethode mit DNS-Herausforderungen zu verwenden, um den Domänenbesitz zu überprüfen. Es fordert ein Wildcard-Zertifikat für Ihre Top-Level-Domäne sowie deren Unterdomänen an.
sudo certbot -d $DOMAIN -d $WILDCARD --manual --preferred-challenges dns certonly -
Geben Sie Ihre E-Mail-Adresse ein, wenn Sie dazu aufgefordert werden, da sie für Verlängerungs- und Sicherheitshinweise verwendet wird.
-
Lesen Sie die Nutzungsbedingungen von Let's Encrypt. Wenn Sie fertig sind, drücken Sie Y, wenn Sie damit einverstanden sind. Wenn Sie nicht einverstanden sind, können Sie kein Let's Encrypt-Zertifikat erhalten.
-
Reagieren Sie entsprechend auf die Aufforderung, Ihre E-Mail-Adresse weiterzugeben, und auf die Warnung, dass Ihre IP-Adresse protokolliert wird.
-
Let's Encrypt fordert Sie jetzt auf, zu überprüfen, ob Sie Eigentümer der angegebenen Domain sind. Sie tun dies, indem Sie TXT-Einträge zu den DNS-Datensätzen für Ihre Domäne hinzufügen. Es wird ein Satz von TXT-Datensatzwerten bereitgestellt, wie im folgenden Beispiel gezeigt:
Anmerkung
Let's Encrypt kann einen einzelnen oder mehrere TXT-Datensätze bereitstellen, die Sie für die Verifizierung verwenden müssen. In diesem Beispiel wurden zwei TXT-Datensätze für die Verifizierung bereitgestellt.
Lassen Sie die browserbasierte Lightsail-SSH-Sitzung geöffnet — Sie werden später in diesem Tutorial darauf zurückkommen. Fahren Sie mit dem nächsten Abschnitt dieses Tutorials fort.
Schritt 4: Hinzufügen von TXT-Datensätzen zur DNS-Zone Ihrer Domain
Durch das Hinzufügen eines TXT-Eintrags zur DNS-Zone Ihrer Domain wird bestätigt, dass Sie Eigentümer der Domain sind. Zu Demonstrationszwecken verwenden wir die Lightsail-DNS-Zone. Die Schritte können jedoch für andere DNS-Zonen ähnlich sein, die typischerweise von Domänen-Registraren gehostet werden.
Anmerkung
Weitere Informationen zum Erstellen einer Lightsail-DNS-Zone für Ihre Domain finden Sie unter Erstellen einer DNS-Zone zur Verwaltung der DNS-Einträge Ihrer Domain in Lightsail.
So fügen Sie TXT-Einträge zur DNS-Zone Ihrer Domain in Lightsail hinzu
-
Wählen Sie im linken Navigationsbereich die Option Domains & DNS aus.
-
Wählen Sie im Abschnitt DNS zones (DNS-Zonen) auf der Seite die DNS-Zone für die Domäne aus, die Sie in der Certbot-Zertifikatsanforderung angegeben haben.
-
Wählen Sie im DNS-Zoneneditor die Registerkarte DNS records (DNS-Datensätze).
-
Wählen Sie Add record (Datensatz hinzufügen).
-
Wählen Sie im Dropdown-Menü Record type (Datensatztyp) die Option TXT record (TXT-Datensatz).
-
Geben Sie die in der Let's Encrypt-Zertifikatsanforderung angegebenen Werte in die Felder Datensatzname und Antwortet mit ein.
Anmerkung
Die Lightsail-Konsole füllt den oberen Teil Ihrer Domain vorab aus. Wenn Sie beispielsweise das
-Subdomain hinzufügen möchten, dann müssen Sie im Textfeld nur_acme-challenge.example.comeingeben und Lightsail fügt das_acme-challenge.example.com-Teil für Sie hinzu, wenn Sie den Datensatz speichern. -
Wählen Sie Speichern.
-
Wiederholen Sie die Schritte 4 bis 7, um den zweiten Satz von TXT-Datensätzen hinzuzufügen, der in der Let's Encrypt-Zertifikatsanforderung angegeben ist.
Lassen Sie das Browserfenster der Lightsail-Konsole geöffnet — Sie werden es später in diesem Tutorial erneut aufrufen. Fahren Sie mit dem nächsten Abschnitt dieses Tutorials fort.
Schritt 5: Bestätigen, dass die TXT-Datensätze weitergegeben wurden
Verwenden Sie das MxToolbox Tool, um zu überprüfen, ob die TXT-Einträge an das DNS des Internets weitergegeben wurden. Die Verbreitung von DNS-Einträgen kann je nach Ihrem DNS-Hosting-Provider und der konfigurierten Lebenszeit (TTL - Time to Live) für Ihre DNS-Einträge eine Weile dauern. Es ist wichtig, dass Sie diesen Schritt abschließen und bestätigen, dass sich Ihre TXT-Einträge verbreitet haben, bevor Sie Ihre Certbot-Zertifikatsanforderung fortsetzen. Andernfalls schlägt Ihre Zertifikatsanforderung fehl.
Um zu bestätigen, dass die TXT-Einträge an das DNS des Internets weitergegeben wurden
-
Öffnen Sie ein neues Browserfenster und gehen Sie zu https://mxtoolbox.com/TXTLookup.aspx
. -
Geben Sie den folgenden Text in das Textfeld ein. Stellen Sie sicher, dass Sie
domaindurch Ihre Domäne ersetzen._acme-challenge.domainBeispiel:
_acme-challenge.example.com
-
Wählen Sie TXT Lookup (TXT-Suche), um die Prüfung auszuführen.
-
Eine der folgenden Antworten wird eintreten:
-
Wenn Ihre TXT-Einträge an das DNS des Internets weitergegeben wurden, sehen Sie eine Antwort, die der im folgenden Screenshot gezeigten ähnelt. Schließen Sie das Browserfenster und fahren Sie mit dem nächsten Abschnitt dieses Tutorials fort.
-
Wenn Ihre TXT-Einträge nicht an das DNS des Internets weitergegeben wurden, erhalten Sie die Antwort „DNS-Eintrag wurde nicht gefunden“. Bestätigen Sie, dass Sie die richtigen DNS-Einträge zur DNS-Zone Ihrer Domains hinzugefügt haben. Wenn Sie die richtigen Einträge hinzugefügt haben, warten Sie noch eine Weile, bis sich die DNS-Einträge Ihrer Domain verbreiten, und führen Sie die TXT-Suche erneut durch.
-
Schritt 6: Schließen Sie die Let's Encrypt SSL-Zertifikatsanfrage ab
Kehren Sie zur browserbasierten Lightsail-SSH-Sitzung für Ihre WordPress Instanz zurück und schließen Sie die Let's Encrypt-Zertifikatsanforderung ab. Certbot speichert Ihr SSL-Zertifikat, Ihre Kette und Ihre Schlüsseldateien in einem bestimmten Verzeichnis auf Ihrer Instanz. WordPress
Um die Let's Encrypt SSL-Zertifikatsanfrage abzuschließen
-
Drücken Sie in der browserbasierten Lightsail-SSH-Sitzung für Ihre WordPress Instance die Eingabetaste, um Ihre Let's Encrypt SSL-Zertifikatsanforderung fortzusetzen. Bei Erfolg erscheint eine Antwort ähnlich der im folgenden Screenshot:
Die Nachricht bestätigt, dass Ihre Zertifikats-, Ketten- und Schlüsseldateien im Verzeichnis
/etc/letsencrypt/live/gespeichert sind. Stellen Sie sicher, dass Siedomain/domaindurch Ihre Domäne ersetzen, wie z. B./etc/letsencrypt/live/example.com/. -
Notieren Sie sich das in der Nachricht angegebene Ablaufdatum. Sie verwenden es, um Ihr Zertifikat bis zu diesem Datum zu verlängern.
-
Nachdem Sie nun das Let's Encrypt SSL-Zertifikat haben, fahren Sie mit dem nächsten Abschnitt dieses Tutorials fort.
Schritt 7: Erstellen Sie Links zur Zertifikatsdatei im Apache-Verzeichnis
Erstellen Sie Links zu den Let's Encrypt SSL-Zertifikatsdateien im Apache-Serververzeichnis auf Ihrer WordPress Instance. Außerdem sichern Sie Ihre vorhandenen Zertifikate, falls Sie sie später benötigen.
Um Links zu den Let's Encrypt-Zertifikatsdateien im Apache-Serververzeichnis zu erstellen
-
Geben Sie in der browserbasierten Lightsail-SSH-Sitzung für Ihre WordPress Instance den folgenden Befehl ein, um die zugrunde liegenden Dienste zu beenden:
sudo systemctl stop apache2 -
Geben Sie den folgenden Befehl ein, um eine Umgebungsvariable für Ihre Domäne zu setzen. Achten Sie darauf,
domaindurch Ihren registrierten Domänennamen zu ersetzen.DOMAIN=domainBeispiel:
DOMAIN=example.comAnmerkung
Wenn Sie Ihr browserbasiertes SSH-Terminalfenster geschlossen haben, seit Sie die
DOMAINVariable in Schritt 3 gesetzt haben, führen Sie den VorgangDOMAIN=erneut aus und ersetzenexample.comexample.comSie ihn durch Ihre Domain. -
Geben Sie den folgenden Befehl ein, um zu bestätigen, dass die Variable den richtigen Wert zurückgibt:
echo $DOMAIN
-
Geben Sie die folgenden Befehle einzeln ein, um Ihre vorhandenen Zertifikatsdateien zu sichern:
export BACKUP_PATH=/opt/aws/wordpress sudo cp /etc/ssl/certs/ssl-cert-snakeoil.pem $BACKUP_PATH/ssl-cert-snakeoil.pem.backup sudo cp /etc/ssl/private/ssl-cert-snakeoil.key $BACKUP_PATH/ssl-cert-snakeoil.key.backup -
Geben Sie die folgenden Befehle einzeln ein, um Links zu Ihren Let's Encrypt-Zertifikatsdateien im Apache-Verzeichnis zu erstellen:
sudo ln -sf /etc/letsencrypt/live/$DOMAIN/fullchain.pem /etc/ssl/certs/ssl-cert-snakeoil.pem sudo ln -sf /etc/letsencrypt/live/$DOMAIN/privkey.pem /etc/ssl/private/ssl-cert-snakeoil.key -
Geben Sie den folgenden Befehl ein, um die zugrunde liegenden Services zu starten, die Sie zuvor gestoppt haben:
sudo systemctl start apache2Die SSL-Zertifikatsdateien für Ihre WordPress Instanz befinden sich jetzt im richtigen Verzeichnis.
-
Fahren Sie mit dem nächsten Abschnitt dieses Tutorials fort.
Schritt 8: Konfigurieren Sie die HTTPS-Umleitung mit dem Really Simple SSL-Plug-In
Installieren Sie das Really Simple SSL-Plug-In auf Ihrer WordPress Website und verwenden Sie es, um das SSL-Zertifikat zu integrieren. Really Simple SSL konfiguriert auch die HTTP zu HTTPS-Weiterleitung, um sicherzustellen, dass Benutzer, die Ihre Website besuchen, sich immer auf der HTTPS-Verbindung befinden.
Um das SSL-Zertifikat mithilfe des Really Simple SSL-Plug-ins in Ihre WordPress Website zu integrieren
-
Geben Sie in der browserbasierten Lightsail-SSH-Sitzung für Ihre WordPress Instance den folgenden Befehl ein, um Ihre
wp-config.phpDatei als schreibbar festzulegen. Das Really Simple SSL-Plug-In schreibt in diewp-config.phpDatei, um Ihre Zertifikate zu konfigurieren.sudo chmod 666 /var/www/wp-config.php -
Öffnen Sie ein neues Browserfenster und melden Sie sich im Administrations-Dashboard Ihrer WordPress Instanz an.
Anmerkung
Weitere Informationen finden Sie unter Eine WordPress Instance starten und konfigurieren.
-
Wählen Sie im linken Navigationsbereich Plugins aus.
-
Wählen Sie oben auf der Plugins-Seite die Option Neues Plugin hinzufügen aus.
-
Suchen Sie nach Really Simple SSL.
-
Wählen Sie Install Now (Jetzt installieren) neben dem Really-Simple-SSL-Plug-in in den Suchergebnissen.
-
Nachdem die Installation abgeschlossen ist, wählen Sie Aktivieren.
-
Wählen Sie in der angezeigten Eingabeaufforderung Go ahead, activate SSL! (Los, aktivieren Sie SSL!) Möglicherweise werden Sie auf die Anmeldeseite für das Administrations-Dashboard Ihrer WordPress Instance weitergeleitet.
-
Kehren Sie zur browserbasierten Lightsail-SSH-Sitzung für Ihre WordPress Instance zurück und geben Sie den folgenden Befehl ein, um die restriktiven Berechtigungen für die Datei wiederherzustellen.
wp-config.phpDiese Datei enthält Datenbankanmeldeinformationen und Sicherheitsschlüssel, die nicht für alle lesbar bleiben sollten.sudo chmod 640 /var/www/wp-config.php
Ihre WordPress Instanz ist jetzt für die Verwendung der SSL-Verschlüsselung konfiguriert. Darüber hinaus ist Ihre WordPress Instance jetzt so konfiguriert, dass Verbindungen automatisch von HTTP zu HTTPS umgeleitet werden. Wenn ein Besucher zu gehthttp://example.com, wird er automatisch auf die verschlüsselte HTTPS-Verbindung umgeleitet (das heißt,https://example.com).
Schritt 9: Erneuern der Let's Encrypt Zertifikate alle 90 Tage
Let's Encrypt-Zertifikate sind 90 Tage gültig. Die Zertifikate können 30 Tage bevor sie ablaufen erneuert werden. Um die Let's Encrypt-Zertifikate zu erneuern, führen Sie den ursprünglichen Befehl aus, mit dem sie abgerufen wurden. Wiederholen Sie die Schritte im Abschnitt Ein Let's Encrypt SSL-Platzhalterzertifikat anfordern in diesem Tutorial.
Anmerkung
Der von Amazon Lightsail geführte Workflow wickelt die Zertifikatsverlängerung automatisch ab. Um zu vermeiden, dass Zertifikate manuell erneuert werden, wechseln Sie zum geführten Workflow. Weitere Informationen finden Sie unter Starten und Konfigurieren einer WordPress Instanz.