Das Schloss neben der Adresse einer Website bedeutet, dass die Verbindung verschlüsselt ist und die Website die ist, für die sie sich ausgibt. Ohne Schloss warnen die Browser vor einer „nicht sicheren Website“, Google stuft die Seite schlechter ein, und Formulare werden im Klartext übertragen. Vor Jahren kostete ein Zertifikat Geld und Papierkram; heute gibt Let's Encrypt sie kostenlos aus, und sie erneuern sich von selbst.
Auf einer Lightsail-Maschine gibt es zwei Situationen. Haben Sie sie aus einer Anwendungsvorlage erstellt (WordPress, Joomla, LAMP...), ist es ein Image von Bitnami und bringt ein Werkzeug mit, das mit ein paar Fragen alles erledigt. Ist es ein „nacktes“ Linux (Ubuntu, Debian, Amazon Linux), auf dem Sie den Webserver selbst installiert haben, verwenden Sie Certbot, das ebenfalls einfach ist. Die Anleitung deckt beides ab.
Bevor Sie anfangen: was die Begriffe bedeuten
- HTTPS und Zertifikat
- HTTPS ist die sichere Version von HTTP, der Art, wie der Browser mit Ihrer Website spricht. Dafür braucht die Website ein Zertifikat: eine Datei, die beweist, dass die Domain Ihnen gehört, und die Verschlüsselung der Verbindung ermöglicht.
- Let's Encrypt
- Eine gemeinnützige Organisation, die kostenlose Zertifikate ausstellt. Sie gelten 90 Tage und werden von einem Programm automatisch erneuert.
- Certbot
- Das meistgenutzte Programm, um Zertifikate von Let's Encrypt auf einem Linux-Server anzufordern und zu installieren.
- Bitnami
- Das Unternehmen, das die Anwendungsvorlagen von Lightsail vorbereitet (WordPress usw.). Seine Maschinen bringen ein eigenes Werkzeug für das Zertifikat mit, bncert-tool.
- Apache und Nginx
- Die beiden häufigsten Webserver: das Programm in der Maschine, das die Seiten an den Browser ausliefert. Das Zertifikat wird dort installiert.
- Port 443
- Die „Tür“, durch die der HTTPS-Verkehr hereinkommt. Die Lightsail-Firewall muss sie offen haben.
- SSH / Browser-Terminal
- Die Art, der Maschine Befehle zu geben, indem man Kommandos eintippt. In Lightsail öffnen Sie es mit einem Button in der Konsole, ohne etwas zu installieren.
- A-Eintrag
- Der DNS-Eintrag, der Ihre Domain auf die IP der Maschine zeigen lässt. Let's Encrypt prüft ihn, bevor es das Zertifikat ausstellt.
Schritt für Schritt
Prüfen Sie Domain und Firewall
Zwei Voraussetzungen, ohne die nichts funktioniert. Erstens muss die Domain bereits auf die IP der Maschine zeigen (und am besten ist das eine statische IP): Geben Sie die Domain im Browser ein, und Ihre Website muss laden, auch wenn noch ohne Schloss. Zweitens muss in Lightsail, Registerkarte Netzwerk der Maschine, die Firewall HTTP (80) und HTTPS (443) offen haben. Port 443 ist standardmäßig nicht offen: Fügen Sie ihn hinzu, falls er fehlt.
Öffnen Sie das Terminal der Maschine
Klicken Sie in der Lightsail-Konsole auf den Button Über SSH verbinden der Maschine (das orangefarbene Terminal-Symbol). Es öffnet sich ein schwarzes Fenster im Browser, in dem Sie die Befehle der folgenden Schritte eingeben. Sie müssen auf Ihrem Computer kein Programm installieren.
Wenn Ihre Maschine von Bitnami ist: Verwenden Sie deren Werkzeug
Geben Sie ein:
sudo /opt/bitnami/bncert-toolEs fragt Sie nach den Domains (geben Sie
midominio.com www.midominio.comein), ob Sie HTTP auf HTTPS umleiten möchten (sagen Sie ja) und ob www auf die Domain ohne www umleiten soll oder umgekehrt (wählen Sie eines). Am Ende verlangt es eine E-Mail-Adresse für die Hinweise von Let's Encrypt und dass Sie deren Bedingungen akzeptieren. Es startet die Dienste für Sie neu. Wenn es fertig ist, ist das Zertifikat installiert und die Erneuerung eingeplant. Weiter mit Schritt 5.Wenn Ihre Maschine ein normales Linux ist: Verwenden Sie Certbot
Unter Ubuntu oder Debian mit Apache:
sudo apt update sudo apt install -y certbot python3-certbot-apache sudo certbot --apache -d midominio.com -d www.midominio.comMit Nginx ersetzen Sie
python3-certbot-apachedurchpython3-certbot-nginxund--apachedurch--nginx. Certbot fragt Sie nach einer E-Mail-Adresse, ob Sie die Bedingungen akzeptieren und ob Sie den gesamten Verkehr auf HTTPS umleiten möchten (sagen Sie ja). Es ändert selbst die Konfiguration des Webservers und lädt sie neu. Unter Amazon Linux heißen die Pakete anders; die Certbot-Dokumentation hat die genauen Anweisungen für jedes System.Prüfen Sie das Schloss
Öffnen Sie
https://midominio.comim Browser: Das Schloss muss erscheinen und beim Anklicken ein von Let's Encrypt ausgestelltes Zertifikat zeigen (es erscheint als „R3“, „R10“ oder ein anderer kurzer Name). Testen Sie auch die Version ohne https: Sie muss von selbst auf die sichere umleiten. Wenn Sie WordPress verwenden, prüfen Sie unter Einstellungen, Allgemein, dass beide Adressen mit https beginnen.Vergewissern Sie sich, dass es sich von selbst erneuert
Zertifikate von Let's Encrypt laufen nach 90 Tagen ab, aber sowohl bncert-tool als auch Certbot planen die automatische Erneuerung ein. Um sicherzugehen, im Terminal:
sudo certbot renew --dry-run(Bei Bitnami ist das Äquivalent, zu prüfen, dass die Aufgabe in
sudo crontab -lexistiert.) Endet der Probelauf ohne Fehler, müssen Sie das nie wieder anfassen. Let's Encrypt schickt Ihnen eine E-Mail, falls die Erneuerung einmal fehlschlägt.
Was schiefgehen kann
Es heißt, die Domain könne nicht überprüft werden
Entweder zeigt die Domain noch nicht auf diese Maschine (warten Sie, bis sich das DNS verbreitet hat), oder Port 80 ist in der Lightsail-Firewall geschlossen. Let's Encrypt muss Ihre Website über Port 80 erreichen, um zu prüfen, dass sie Ihnen gehört.
Das Schloss ist da, aber der Browser warnt vor „gemischten Inhalten“
Die Seite lädt Bilder oder Skripte über http://-Adressen. In WordPress stellen Sie die Website-Adressen unter Einstellungen auf https um und verwenden bei Bedarf ein Plugin, das die alten URLs umschreibt. Bei einer handgemachten Website korrigieren Sie die Links.
Funktioniert ohne www, aber nicht mit www (oder umgekehrt)
Einer der beiden Namen fehlt im Zertifikat oder im DNS. Wiederholen Sie den Befehl mit beiden Namen per -d, und prüfen Sie, dass www seinen Eintrag im DNS hat.
Ich habe mich nach einer Änderung an der Firewall ausgesperrt
Die Lightsail-Firewall wird in der Konsole repariert, nicht in der Maschine. Gehen Sie zurück zur Registerkarte Netzwerk und prüfen Sie die Regeln. Das Browser-Terminal funktioniert immer.
In Simplio
In Simplio können Sie die Installation des Let's Encrypt-Zertifikats auf einer Lightsail-Maschine aus dem Skriptkatalog starten, indem Sie nur die Domain eingeben: Simplio meldet sich mit dem temporären Schlüssel an, den AWS bereitstellt, führt die Schritte aus und liefert Ihnen das Ergebnis, ohne etwas installiert zu lassen. Und es benachrichtigt Sie per E-Mail, wenn ein Zertifikat kurz vor dem Ablauf steht, ohne erneuert zu werden.
Dasselbe, in AWS und in Simplio
| In der AWS-Konsole | In Simplio | |
|---|---|---|
| Das Zertifikat installieren | Port 443 öffnen, Terminal, bncert-tool oder Certbot, Fragen beantworten: 5 Schritte, 20 Minuten und ein Terminal | Let's-Encrypt-Skript aus dem Katalog: Domain eingeben und klicken, 2 Minuten |
| Wenn die Erneuerung fehlschlägt | E-Mail von Let's Encrypt an denjenigen, der es eingerichtet hat, falls er noch im Unternehmen ist | Hinweis per E-Mail über ein bald ablaufendes Zertifikat |
| Mehrere Websites | Auf jeder Maschine wiederholen | Dasselbe Skript auf jeder Maschine, aus derselben Liste |