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

Let’s Encrypt:Holen Sie sich ein kostenloses SSL-Zertifikat mit Certbot

Schritt-für-Schritt-Anleitung zur Verwendung des Certbot von Let’s Encrypt, um ein kostenloses SSL-Zertifikat zu erhalten und es automatisch zu erneuern.

Let’s Encrypt ist vor allem Open Source und völlig kostenlos. Es ermöglicht jedem, ein vertrauenswürdiges SSL-Zertifikat auf seiner Website zu installieren und von der verbesserten Sicherheit zu profitieren, die eine verschlüsselte Verbindung bietet. Im Gegensatz zu einem selbstsignierten SSL-Zertifikat wird ein Let’s Encrypt-Zertifikat als vollständig verifiziert erkannt und zeigt das Vorhängeschloss-Symbol in der Adressleiste moderner Webbrowser an.

So funktioniert Let’s Encrypt

Vor der Ausstellung eines Zertifikats validiert Let’s Encrypt die Inhaberschaft Ihrer Domain. Der Client von Let’s Encrypt, der auf Ihrem Host ausgeführt wird, erstellt eine temporäre Datei (ein Token) mit den erforderlichen Informationen darin. Der Validierungsserver stellt dann eine HTTP-Anforderung zum Abrufen der Datei und validiert das Token, wodurch bestätigt wird, dass der DNS-Eintrag für Ihre Domain zu dem Server aufgelöst wird, auf dem der Let’s Encrypt-Client ausgeführt wird. Daher müssen die unten gezeigten Befehle auf dem Server ausgeführt werden, der Ihre Domain bedient, für die Sie das Zertifikat ausstellen.

1. Certbot installieren

Let’s Encrypt hat ein automatisches Installationsprogramm namens certbot . Der erste Schritt zur Verwendung von Let’s Encrypt zum Erhalt eines SSL-Zertifikats besteht darin, es auf Ihrem Server zu installieren.

Ubuntu:

sudo apt install certbot python3-certbot-nginx

Debian:

sudo apt install certbot

CentOS:

sudo yum install epel-release
sudo yum install certbot-nginx

2. Erhalt von Let’s Encrypt-Zertifikaten

Wichtig! Bevor Sie ein kostenloses SSL-Zertifikat von Let’s Encrypt ausstellen, müssen Sie Ihren Webserverdienst beenden. Andernfalls erhalten Sie die folgende Fehlermeldung:

Problem binding to port 80: Could not bind to IPv4 or IPv6

Wenn Sie Nginx verwenden, führen Sie Folgendes aus:

sudo systemctl stop nginx

Jetzt können wir mit der Generierung des kostenlosen Let’s Encrypt-SSL-Zertifikats fortfahren:

sudo certbot certonly --standalone --preferred-challenges http -d my-domain.com

-d Option akzeptiert einen Domainnamen. Sie können mehrere -d verwenden Optionen im einzelnen Befehl. Zum Beispiel:

sudo certbot certonly --standalone --preferred-challenges http -d my-domain.com -d www.my-domain.com 

Wenn Sie zum ersten Mal certbot ausführen , werden Sie aufgefordert, eine E-Mail-Adresse einzugeben und den Nutzungsbedingungen zuzustimmen. Danach certbot kommuniziert mit dem Let’s Encrypt-Server und führt dann eine Abfrage aus, um zu bestätigen, dass Sie die Domain kontrollieren, für die Sie ein Zertifikat anfordern.

Wenn das erfolgreich ist, certbot wird mit einer Meldung abschließen, die Ihnen mitteilt, dass der Vorgang erfolgreich war und wo Ihre Zertifikate gespeichert sind.

IMPORTANT NOTES:
 - Congratulations! Your certificate and chain have been saved at
   /etc/letsencrypt/live/my-domain.com/fullchain.pem. Your cert will
   expire on 2022-08-08. To obtain a new or tweaked version of this
   certificate in the future, simply run certbot again with the
   "certonly" option. To non-interactively renew all of your
   certificates, run "certbot renew"
 - Your account credentials have been saved in your Certbot
   configuration directory at /etc/letsencrypt. You should make a
   secure backup of this folder now. This configuration directory will
   also contain certificates and private keys obtained by Certbot so
   making regular backups of this folder is ideal.
 - If you like Certbot, please consider supporting our work by:
   Donating to ISRG / Let's Encrypt:   https://letsencrypt.org/donate
   Donating to EFF:                    https://eff.org/donate-le 

3. Zertifikate verifizieren

Listen Sie Ihre Zertifikate auf, die in /etc/letsencrypt/live/my-domain.com Verzeichnis.

ls -l /etc/letsencrypt/live/my-domain.com/
total 4
-rw-r--r-- 1 root root 692 Mar  10 08:24 README
lrwxrwxrwx 1 root root  37 Mar  10 08:24 cert.pem -> ../../archive/my-domain.com/cert1.pem
lrwxrwxrwx 1 root root  38 Mar  10 08:24 chain.pem -> ../../archive/my-domain.com/chain1.pem
lrwxrwxrwx 1 root root  42 Mar  10 08:24 fullchain.pem -> ../../archive/my-domain.com/fullchain1.pem
lrwxrwxrwx 1 root root  40 Mar  10 08:24 privkey.pem -> ../../archive/my-domain.com/privkey1.pem

4. Ändern Sie die Webserver-Konfiguration

Damit Ihr Webserver das kostenlose SSL-Zertifikat von Let’s Encrypt verwenden kann, müssen Sie es in seiner Konfiguration angeben. Wenn Sie beispielsweise Nginx verwenden, müssen Sie Ihrer Domänenkonfigurationsdatei /etc/nginx/sites-enabled/my-domain.conf den folgenden Block hinzufügen

server {
    listen 443;
    server_name my-domain.com;
    ssl on;
    ssl_certificate /etc/letsencrypt/live/my-domain.com/fullchain.pem;
    ssl_certificate_key /etc/letsencrypt/live/my-domain.com/privkey.pem;
}

Das ist es. Alle Dinge sind eingestellt und erledigt. Jetzt müssen Sie nur noch Ihren Webserver starten:

sudo systemctl start nginx

Schließlich können Sie überprüfen, ob Ihre Website jetzt SSL-geschützt ist. Öffnen Sie einfach die Website im Browser und prüfen Sie, ob das Vorhängeschloss-Symbol verfügbar ist.

5. Automatische Erneuerung der Let’s Encrypt-Zertifikate

Die Zertifikate sind 90 Tage gültig. Sie können 30 Tage vor Ablauf verlängert werden. Hier fügen wir einen Cron-Job hinzu, der sie automatisch verlängert.

Öffnen Sie also zuerst die Crontab-Datei:

sudo crontab -e

Fügen Sie danach den certbot hinzu Befehl zur wöchentlichen Ausführung:

@weekly certbot renew --pre-hook "systemctl stop nginx" --post-hook "systemctl start nginx" --renew-hook "systemctl reload nginx" --quiet 

Fazit

In diesem Tutorial haben wir gesehen, wie man ein kostenloses SSL-Zertifikat von Let’s Encrypt installiert, um eine Website zu sichern. Außerdem können Sie auf der offiziellen Let’s Encrypt-Website weitere Informationen und Details finden.


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

  2. Sichern von ISPConfig 3.1 mit einem kostenlosen SSL-Zertifikat von Lets Encrypt

  3. Top 7 kostenlose SSL-Zertifikatsdienste

  4. Installieren Sie Let’s Encrypt SSL auf HAProxy

  5. So erhalten Sie ein kostenloses SSL-Zertifikat mit SSL It! und Let’s Encrypt auf Plesk

So erneuern Sie SSL-Zertifikate von Let’s Encrypt automatisch

So installieren Sie Let’s Encrypt SSL mit Apache unter CentOS 7

So installieren Sie Let’s Encrypt SSL mit DirectAdmin

So verwenden Sie Let’s Encrypt mit Cloudflare

So sichern Sie Apache mit Let’s Encrypt SSL-Zertifikat auf CentOS 8

Wie aktiviere ich das kostenlose SSL-Zertifikat von Let’s encrypt für meine Domain in Plesk?