GNU/Linux >> LINUX-Kenntnisse >  >> Ubuntu

Aktivieren Sie HTTPS auf Nginx ordnungsgemäß mit Let’s Encrypt auf Ubuntu

Dieses Tutorial zeigt Ihnen, wie Sie HTTPS auf Nginx mit Let’s Encrypt auf Ubuntu richtig aktivieren. Google Chrome und Firefox haben bereits damit begonnen, unverschlüsselte Webseiten mit Passworteingabefeld als unsicher zu markieren. Schließlich werden alle HTTP-Webseiten als unsicher markiert. HTTPS wird zum Standard für jede Website. Es ist auch eine Voraussetzung, wenn Sie das HTTP/2-Protokoll verwenden möchten, um Ihre Website zu beschleunigen.

Let’s Encrypt ist eine kostenlose, automatisierte und offene Zertifizierungsstelle. Die offizielle Dokumentation beschreibt einfache Schritte, die Sie befolgen können, um HTTPS mit Let’s Encrypt zu aktivieren, aber es steckt noch mehr dahinter. Wenn Sie dem offiziellen Dokument folgen, erhalten Sie beim SSL Labs-Test eine A-Punktzahl. Wenn Sie meinen Schritten folgen, erhalten Sie A+ Punktzahl. Wenn Sie bereits ein Let’s Encrypt-Zertifikat bereitgestellt haben, können Sie trotzdem diesem Tutorial folgen, um Ihr vorhandenes Zertifikat zu erneuern und zu ersetzen.

Dieses Tutorial ist in 3 Teile gegliedert.

  1. Im ersten Teil geht es um den CAA-Rekord Sicherheitsheader und OCSP-Heften . Diese Dinge können Ihnen helfen, A+ zu bekommen .
  2. Im zweiten Teil geht es um die Umleitung von www-Domains auf Nicht-www-Domains und umgekehrt.
  3. Ich werde Ihnen im dritten Teil zeigen, wie Sie mit dem CloudFlare CDN-Dienst umgehen.

Hinweis:Dieses Tutorial funktioniert auf allen aktuellen Versionen von Nginx und Ubuntu (einschließlich 16.04, 18.04 und 20.04).

CAA-Eintrag für Ihren Domainnamen erstellen

Certificate Authority Authorization (CAA) ist ein DNS-Ressourceneintrag, der angibt, welche Zertifizierungsstellen (CAs) Zertifikate für einen bestimmten Domänennamen ausstellen dürfen. Ab September 2017 sind alle CAs verpflichtet, CAA-Einträge zu überprüfen, bevor sie ein Zertifikat für einen bestimmten Domainnamen ausstellen. Wenn für einen Domänennamen kein CAA-Eintrag gefunden wird, kann jede Zertifizierungsstelle ein Zertifikat für diesen Domänennamen ausstellen. Wenn in Ihrem CAA-Eintrag keine Zertifizierungsstelle aufgeführt ist, kann diese Zertifizierungsstelle kein Zertifikat für Ihren Domänennamen ausstellen.

Um einen CAA-Eintrag zu erstellen, der es Let’s Encrypt ermöglicht, ein Zertifikat für Ihren Domainnamen auszustellen, fügen Sie den folgenden Eintrag in Ihrem DNS-Server oder DNS-Manager hinzu.

example.com. IN CAA 0 issue "letsencrypt.org"

Sie können auch iodef verwenden um eine Anfrage zur Ausstellung eines böswilligen Zertifikats von der CA melden zu lassen an Ihre E-Mail-Adresse.

example.com. IN CAA 0 iodef "mailto:your-email-address"

Das Format der obigen Datensätze ist für Zonendateien. Nachfolgend finden Sie einige Tipps für Sie.

  • Sie können den SSLMate CAA Record Helper verwenden, um einen CCA-Eintrag für Ihren Domainnamen zu generieren.
  • Wenn Sie GoDaddy DNS verwenden, folgen Sie diesem Beitrag, um einen CAA-Eintrag hinzuzufügen.

Sie können den folgenden dig-Befehl verwenden, um Ihren CAA-Eintrag zu überprüfen.

dig example.com CAA

Beachten Sie, dass Webbrowser keine CAA-Einträge prüfen.

Sicherheits-Header

Sicherheits-Header sind genauso wichtig wie das HTTPS-Protokoll, aber nur ein kleiner Prozentsatz der HTTPS-fähigen Sites beachtet Sicherheits-Header. Während eine vollständige Diskussion über Sicherheitsheader den Rahmen dieses Tutorials sprengen würde, werde ich über die upgrade-insecure-requests sprechen und HSTS Header, weil Sie sie einfach mit Let’s Encrypt aktivieren können, um die Sicherheit Ihrer Website zu erhöhen.

Unsichere Anfragen aktualisieren

Es gibt Zeiten, in denen eine Website HTTPS aktiviert hat, aber einige CSS, Bilder oder JavaScripts werden immer noch über HTTP bereitgestellt. In diesem Fall verschwindet das grüne Vorhängeschloss am Anfang der Adressleiste des Browsers. In Google Chrome wird es durch ein Info-Symbol ersetzt; In Firefox wird es durch ein graues Vorhängeschloss mit einem gelben Dreieck ersetzt. Sie sollten Website-Besuchern so oft wie möglich ein grünes Vorhängeschloss zeigen, und die einfache Möglichkeit, dieses Problem zu beheben, besteht darin, die Upgrade-insecure-requests zu aktivieren -Header, der Webbrowser dazu zwingt, https:// zu verwenden für jedes http:// Ressource.

Um diesen Header zu aktivieren, fügen Sie einfach --uir hinzu Flag beim Ausstellen von certbot Befehl. Beachten Sie, dass dieser Header für Ressourcen funktioniert, die in Ihrer eigenen Domäne gehostet werden, und für Ressourcen in Domänen von Drittanbietern, die HTTPS unterstützen. Wenn Ihre Webseite Ressourcen auf Servern von Drittanbietern enthält, die nicht über HTTPS verfügbar sind, werden diese Ressourcen von Webbrowsern blockiert, aber die Verwendung dieses Headers stellt sicher, dass Ihre Webseiten immer ein grünes Vorhängeschloss erhalten.

HSTS (HTTP Strict Transport Security)

Der HSTS-Header teilt Webbrowsern mit, dass die gesamte Kommunikation mit Ihrer Website über HTTPS erfolgen sollte. Es verteidigt sich gegen SSL-Striping, bei dem es sich um einen Angriff zum Downgrade von HTTPS auf HTTP handelt. Um diesen Header zu aktivieren, fügen Sie einfach --hsts hinzu Flag beim Ausstellen von certbot Befehl.

OCSP-Heften

Wenn sich ein Webbrowser mit einer HTTPS-Website verbindet, sendet er eine OCSP-Anfrage (Online Certificate Status Protocol) an die Zertifizierungsstelle (CA), um den Sperrstatus des SSL-Zertifikats der Website abzufragen. Laut Firefox-Telemetriedaten kann dies das Laden der Seite um 1–3 Sekunden verzögern.

Um die Leistung zu verbessern, kann der Websitebesitzer das OCSP-Heften aktivieren. In diesem Fall ruft der Webserver selbst in regelmäßigen Abständen die von CA signierte OCSP-Antwort ab. Wenn ein Webbrowser eine Verbindung zur Website herstellt, kann Nginx die zwischengespeicherte OCSP-Antwort an den Webbrowser senden, sodass der Webbrowser nicht mehr den OCSP-Server kontaktieren muss.

Um das OCSP-Heften zu aktivieren, fügen Sie einfach --staple-ocsp hinzu Flag beim Ausstellen von certbot Befehl.

OCSP muss geheftet werden

Wenn ein Hacker eine gefälschte, duplizierte Website erstellt, die OCSP-Stapelfunktion deaktiviert und auch den Zugriff des Webbrowsers auf den OCSP-Server blockiert, geht der Webbrowser davon aus, dass alles in Ordnung ist, und fährt mit der bösartigen Website fort. Um dieses Problem zu lösen, können Sie OCSP muss heften aktivieren auf Ihrer Website, die Webbrowsern mitteilt, dass die OCSP-Stapelantwort von Ihrer Website während einer HTTPS-Verbindung präsentiert werden muss. Wenn also Webbrowser eine Verbindung zu einer gefälschten Website ohne OCSP-Stack herstellen, wird die Verbindung unterbrochen.

Um OCSP muss geheftet zu aktivieren, fügen Sie --must-staple hinzu Flag beim Ausstellen von certbot Befehl.

Installieren von Let’s Encrypt Client (Certbot) auf Ubuntu

Jetzt ist es an der Zeit, sich die Hände schmutzig zu machen. Ab Ubuntu 16.04 ist der Let’s Encrypt-Client (Certbot) im Ubuntu-Repository enthalten, sodass Sie ihn mit dem folgenden Befehl installieren können. Python3-certbot-nginx ist das Certbot Nginx-Plugin.

sudo apt install certbot python3-certbot-nginx

Um die Versionsnummer zu prüfen, führen Sie

aus
certbot --version

Beispielausgabe:

certbot 0.31.0

Wenn Sie die neueste Version verwenden möchten, können Sie Certbot aus dem Snap-Store installieren.

sudo apt install snapd

sudo snap install --classic certbot

Hinweis :Wenn Sie die Snap-Version verwenden möchten, müssen Sie den vollständigen Binärpfad verwenden:/snap/bin/certbot .

Certbot Nginx-Plugin verwenden, um HTTPS zu aktivieren

Wenn Ihre Website keinen CDN-Dienst verwendet, wird empfohlen, das Nginx-Plugin zu verwenden, um HTTPS auf dem Nginx-Webserver zu aktivieren, da es automatisch ein SSL/TLS-Zertifikat erhalten und für Sie konfigurieren kann. Führen Sie den folgenden Befehl auf Ihrem Ubuntu-Server aus.

sudo certbot --nginx --agree-tos --redirect --uir --hsts --staple-ocsp --must-staple -d www.example.com,example.com --email [email protected]

Wo:

  • --nginx :Verwenden Sie den Nginx-Authentifikator und das Installationsprogramm
  • --agree-tos :Nutzungsbedingungen von Let’s Encrypt akzeptieren
  • --redirect :301-Weiterleitung hinzufügen.
  • --uir :Fügen Sie den Header „Content-Security-Policy:upgrade-insecure-requests“ zu jeder HTTP-Antwort hinzu.
  • --hsts :Strict-Transport-Security-Header zu jeder HTTP-Antwort hinzufügen.
  • --staple-ocsp :Aktiviert OCSP-Heften.
  • --must-staple :Fügt dem Zertifikat die Erweiterung OCSP Must Staple hinzu.
  • -d Flag folgt eine durch Kommas getrennte Liste von Domänennamen. Sie können bis zu 100 Domainnamen hinzufügen.
  • --email :E-Mail, die für die Registrierung und den Wiederherstellungskontakt verwendet wird.

Sie werden gefragt, ob Sie E-Mails von EFF (Electronic Frontier Foundation) erhalten möchten. Nachdem Sie J oder N ausgewählt haben, wird Ihr SSL-Zertifikat automatisch bezogen und für Sie konfiguriert, was durch die folgende Meldung angezeigt wird.

  • /etc/letsencrypt/live/example.com/fullchain.pem :Die vollständige Kette aus Root-CA-Zertifikat, CA-Zwischenzertifikat und Ihrem Serverzertifikat.
  • /etc/letsencrypt/live/example.com/privkey.pem :Der private Schlüssel Ihres Servers

Wenn Sie jetzt Ihre Website besuchen, können Sie sehen, dass HTTP automatisch auf eine HTTPS-Verbindung umgeleitet wird. Es stellt sich heraus, dass das Nginx-Plugin derzeit --uir nicht unterstützt Flagge. Um den Header „upgrade-insecure-requests“ manuell hinzuzufügen, bearbeiten Sie Ihre Nginx-Serverblockdatei.

sudo nano /etc/nginx/conf.d/example.com.conf

Fügen Sie die folgende Zeile in den SSL-Serverblock ein.

add_header Content-Security-Policy upgrade-insecure-requests;

Außerdem ist es eine gute Idee, einen DNS-Resolver im SSL-Serverblock hinzuzufügen.

resolver 8.8.8.8;

Wenn Sie keinen Resolver hinzufügen, wird möglicherweise die folgende Meldung im Nginx-Fehlerprotokoll angezeigt.

[warn] 559#559: no resolver defined to resolve ocsp.int-x3.letsencrypt.org while requesting certificate status, responder: ocsp.int-x3.letsencrypt.org

Speichern und schließen Sie die Datei. Laden Sie dann Nginx neu, damit die Änderungen wirksam werden.

sudo systemctl reload nginx

Tipp zur Fehlerbehebung

Wenn beim Ausführen des Befehls certbot die folgenden Fehlermeldungen angezeigt werden, müssen Sie den Befehl certbot einfach erneut ausführen, da es sich um einen vorübergehenden Fehler bei der DNS-Auflösung handelt.

An unexpected error occurred:
Traceback (most recent call last):
  File "/usr/lib/python3/dist-packages/urllib3/connection.py", line 159, in _new_conn
    conn = connection.create_connection(
  File "/usr/lib/python3/dist-packages/urllib3/util/connection.py", line 61, in create_connection
    for res in socket.getaddrinfo(host, port, family, socket.SOCK_STREAM):
  File "/usr/lib/python3.8/socket.py", line 918, in getaddrinfo
    for res in _socket.getaddrinfo(host, port, family, type, proto, flags):
socket.gaierror: [Errno -3] Temporary failure in name resolution

Testen Sie Ihr SSL-Zertifikat

Gehen Sie zu ssllabs.com, um Ihr SSL-Zertifikat und Ihre Konfiguration zu testen. Wie ich versprochen habe, bekommst du A+ . Sie können auch überprüfen, ob Ihr Domainname CAA-Einträge aktiviert hat, ob Ihr Server HSTS, OCSP-Stapeln und OCSP-Stapeln aktiviert hat.

Umleitung von WWW auf Nicht-WWW (oder umgekehrt)

Wir haben die Umleitung von HTTP auf HTTPS bereits aktiviert, was noch zu tun ist, ist die Umleitung von www auf nicht-www oder umgekehrt. Wenn Sie WordPress verwenden, dann ist es sehr einfach. Gehen Sie einfach zum WordPress Dashboard> Einstellungen> Allgemeines und legen Sie Ihre bevorzugte Version (www oder nicht-www) in der WordPress-Adresse fest und Site-Adresse .

Wenn Sie diesen Weg gehen, erhalten Sie am Ende eine sogenannte doppelte 301-Weiterleitung. Zuerst leitet der Nginx-Server HTTP zu HTTPS um, dann leitet WordPress zur www- oder Nicht-www-Domain um. Einige mögen argumentieren, dass eine doppelte 301-Weiterleitung die SEO Ihrer Website beeinträchtigen kann. Wenn Sie sich darüber Sorgen machen, können Sie die folgende Methode verwenden, um alle Domänenversionen direkt zum endgültigen Ziel zu bringen.

Bearbeiten Sie Ihren Nginx-Serverblock.

sudo nano /etc/nginx/conf.d/example.com.conf

Der CertBot-Client hat der Datei die folgenden Zeilen hinzugefügt, um HTTP auf HTTPS umzuleiten.

if ($scheme != "https") {
        return 301 https://$host$request_uri;
    } # managed by Certbot

Sie können diese 3 Zeilen löschen und Ihre Serverblockkonfigurationen wie im Screenshot unten bearbeiten, um die Nicht-www-Domain auf die www-Domain umzuleiten.

  • Der erste Serverblock überwacht Port 80. Er enthält eine 301-Umleitung, um HTTP auf HTTPS umzuleiten.
  • Der zweite Serverblock lauscht auf Port 443. Er enthält eine 301-Umleitung, um Nicht-www auf die www-Domain umzuleiten.

Wenn Sie www auf eine Nicht-www-Domäne umleiten möchten, ändern Sie

return 301 https://www.example.com$request_uri;

zu

return 301 https://example.com$request_uri;

Und ändern Sie den server_name Direktive in den SSL-Serverblöcken.

Speichern und schließen Sie die Datei. Nginx-Konfigurationen testen.

sudo nginx -t

Wenn der Test erfolgreich ist, laden Sie Nginx neu, damit die Änderungen wirksam werden.

sudo systemctl reload nginx

Wenn Sie WordPress verwenden, stellen Sie sicher, dass Sie Ihre bevorzugte Domain-Version in WoredPress-Adresse festlegen und Site-Adresse bevor Sie die Konfigurationsdatei des Nginx-Serverblocks bearbeiten. Wenn die WordPress-Einstellungen der Nginx-Konfiguration widersprechen, befindet sich Ihre Website in einer Umleitungsschleife.

So aktivieren Sie das HTTP/2-Protokoll

Um das HTTP/2-Protokoll in Nginx zu aktivieren, öffnen Sie einfach Ihre virtuelle Nginx-Hostdatei und suchen Sie die folgende Zeile.

listen 443 ssl;

Fügen Sie http2 hinzu am Ende.

listen 443 ssl http2;

Speichern und schließen Sie die Datei. Laden Sie dann Nginx neu.

sudo systemctl reload nginx

So deaktivieren Sie TLSv1 und TLSv1.1

TLSv1 und TLSv1.1 gelten nicht mehr als sicher. Ab dem 31.01.2020 begrenzt SSL Labs Server, die TLS 1.0 oder TLS 1.1 unterstützen, auf B Klasse. Um sie zu deaktivieren, bearbeiten Sie die Konfigurationsdatei mit den SSL-Optionen von Let’s Encrypt.

sudo nano /etc/letsencrypt/options-ssl-nginx.conf

Suchen Sie die folgende Zeile.

ssl_protocols TLSv1 TLSv1.1 TLSv1.2;

Entfernen Sie die auslaufenden TLS-Versionen.

ssl_protocols TLSv1.2

Speichern und schließen Sie die Datei. Starten Sie dann Nginx neu.

sudo systemctl restart nginx

So aktivieren Sie TLS 1.3

Bitte lesen Sie den folgenden Artikel:

  • Einfaches Aktivieren von TLS 1.3 in Nginx unter Ubuntu 20.04, 18.04, 16.04

So aktivieren Sie IPv6 in Nginx

Wenn Ihr Server eine IPv6-Adresse und Ihr Domainname einen AAAA-Eintrag hat, sollten Sie IPv6 in Nginx aktivieren. Fügen Sie die folgende Zeile im HTTP-Serverblock hinzu.

listen [::]:80;

Und fügen Sie die folgende Zeile in den HTTPS-Serverblock ein.

listen [::]:443 ssl http2;

Speichern und schließen Sie die Datei. Nginx neu laden und fertig.

sudo systemctl reload nginx

Automatische Verlängerung des Zertifikats

Um das Let’s Encrypt-Zertifikat automatisch zu erneuern, bearbeiten Sie einfach die Crontab-Datei des Root-Benutzers.

sudo crontab -e

Fügen Sie dann unten die folgende Zeile hinzu.

@daily certbot renew --quiet && systemctl reload nginx

--quiet flag unterdrückt die Standardausgabe. Wenn Sie einen Standardfehler erhalten möchten, fügen Sie die folgende Zeile am Anfang der crontab-Datei hinzu.

MAILTO=[email protected]

Nginx muss neu geladen werden, damit es Clients das neue Zertifikat präsentieren kann.

PATH in Crontab setzen

Cron sendet mir manchmal folgende Nachricht, die auch in /var/log/letsencrypt/letsencrypt.log zu sehen ist Datei.

Could not choose appropriate plugin for updaters: The nginx plugin is not working; there may be problems with your existing configuration.
The error was: NoInstallationError()

Die Ursache dieses Fehlers liegt darin, dass PATH in Cron standardmäßig auf

gesetzt ist
PATH=/usr/bin:/bin

Aber die nginx-Binärdatei befindet sich unter /usr/sbin/nginx , Cron kann es mit dem Standard PATH nicht finden. Um diesen Fehler zu beheben, fügen Sie die folgende Zeile am Anfang der Crontab-Datei hinzu.

PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/snap/bin

CloudFlare-CDN

Wenn Sie das Let’s Encrypt-Zertifikat auf Ihrem Server installieren und gleichzeitig den CDN-Dienst von CloudFlare nutzen möchten, müssen Sie das Universal SSL von CloudFlare auf Ihrer Website aktivieren, d. h.

  • Verbindungen zwischen Website-Besuchern und dem CloudFlare-Edge-Server werden mit dem universellen SSL-Zertifikat von CloudFlare verschlüsselt
  • Verbindungen zwischen Ihrem Ursprungsserver und dem CloudFlare-Edge-Server werden mit einem von Let’s Encrypt ausgestellten Zertifikat verschlüsselt.

Wenn Sie das Let's Encrypt-Zertifikat auf Ihrem Ursprungsserver installieren und HTTP auf HTTPS umleiten, aber CloudFlare Universal SSL deaktivieren, beschweren sich Webbrowser, dass sich Ihre Website in einer endlosen Umleitungsschleife befindet, da CloudFlare HTTPS auf HTTP umleitet, wenn Universal SSL nicht aktiviert ist.

Das zweite, was Sie wissen müssen, ist, dass Sie, wenn Sie den CAA-Eintrag aktivieren möchten, während Sie CloudFlare Universal SSL verwenden, auch den folgenden CAA-Eintrag erstellen müssen.

example.com. IN CAA 0 issue "comodoca.com"

example.com. IN CAA 0 issue "digicert.com"

example.com. IN CAA 0 issue "globalsign.com

Folgen Sie diesem Beitrag, um den CAA-Eintrag für das universelle SSL-Zertifikat von CloudFlare hinzuzufügen.

Wie gehen Sie also vor, um das Let’s Encrypt-Zertifikat mit CloudFlare zu installieren? Nun, es gibt zwei Szenarien.

  1. Sie haben das Let’s Encrypt-Zertifikat bereits mit den obigen Schritten installiert, jetzt möchten Sie den CloudFlare CDN-Dienst aktivieren.
  2. Ihre Website verwendet den CloudFlare CDN-Dienst, jetzt möchten Sie das Let’s Encrypt-Zertifikat auf Ihrem Ursprungsserver installieren.

Das erste Szenario

Wenn Sie sich im ersten Szenario befinden, können Sie fortfahren und den CloudFlare CDN-Dienst aktivieren und auch CloudFlare Universal SSL im CloudFlare Dashboard aktivieren, indem Sie zu Crypto gehen> SSL und wählen Sie Vollständig (Streng) aus . Ihre Website wird problemlos funktionieren.

Das zweite Szenario

Wenn Sie CloudFlare CDN verwenden und jetzt Let’s Encrypt auf Ihrem Ursprungsserver installieren möchten, führen Sie den folgenden Befehl aus, um das Let’s Encrypt TLS-Zertifikat zu erhalten und zu installieren.

sudo certbot --nginx --agree-tos --redirect --uir --hsts --staple-ocsp --must-staple -d www.example.com,example.com --email [email protected]

Nachdem das Zertifikat bezogen und auf Ihrem Server installiert wurde, gehen Sie zum Cloudflare-Dashboard und aktivieren Sie CloudFlare Universal SSL.

Nächster Schritt

Ich hoffe, dieses Tutorial hat Ihnen geholfen, HTTPS auf Nginx mit Let’s Encrypt auf Ubuntu zu aktivieren . Sie können auch die ModSecurity-Firewall für Webanwendungen einrichten, um Ihre WordPress-Site vor Hackern zu schützen.

  • So richten Sie ModSecurity mit Nginx unter Debian/Ubuntu ein

Wenn Sie diesen Beitrag nützlich fanden, abonnieren Sie wie immer unseren kostenlosen Newsletter, um weitere Tipps und Tricks zu erhalten. Pass auf dich auf 🙂


Ubuntu
  1. So sichern Sie Nginx mit Lets Encrypt auf Ubuntu 20.04 / 18.04

  2. Kostenloses SSL für Nginx auf Centos von Let’s encrypt

  3. Installieren Sie das Let's Encrypt-Zertifikat mit Certbot in Ubuntu 20.04 - Wie geht das auf dem Nginx-Webserver?

  4. Sichern Sie Nginx mit Let’s Encrypt auf Ubuntu 18.04 – wie geht das?

  5. So sichern Sie Nginx mit Let’s Encrypt unter Ubuntu 20.04

So installieren Sie Nginx mit Let’s Encrypt SSL unter Ubuntu 20.04 LTS

Sichern Sie Nginx mit Let’s Encrypt SSL-Zertifikat auf Ubuntu 18.04

So sichern Sie Nginx mit dem Let’s Encrypt SSL-Zertifikat

So sichern Sie den LEMP-Server mit Let’s Encrypt Free SSL auf Ubuntu 18.04 VPS

So sichern Sie Nginx mit Let’s Encrypt unter Ubuntu 20.04

So sichern Sie Apache mit Let’s Encrypt unter Ubuntu 20.04