Der Certbot ist ein Befehlszeilendienstprogramm zum Abrufen kostenloser SSL-Zertifikate von der Let’s Encrypt-Zertifizierungsstelle. Es ermöglicht Ihnen, ein neues SSL-Zertifikat anzufordern, die Autorisierung durchzuführen und Ihren Webserver für SSL-Einstellungen zu konfigurieren. Sie können auch SSL-Zertifikate für andere Dienste wie Mailserver, Proxy- und VPN-Server erhalten.
Dieses Tutorial hilft Ihnen bei der Installation des Let’s Encrypt-Clients auf einem CentOS 8-Linux-System.
Voraussetzungen
Vor der Installation von Certbot auf CentOS 8 müssen Sie Folgendes erfüllen:
- Ein CentOS 8 Linux-System mit sudo-Benutzerzugriff.
- Apache (HTTP)-Webserver mit virtuellem Host, der mit einer Domäne konfiguriert ist.
- Domain oder Subdomain muss auf die IP-Adresse des Webservers verweisen.
Schritt 1 – EPEL Repo aktivieren
Das EPEL-Repository enthält aktualisierte Certbot-Pakete für die RPM-basierten Systeme. Sie müssen das EPEL-Repository (Extra Packages for Enterprise Linux) auf Ihrem System mit den folgenden Befehlen aktivieren:
sudo dnf install https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm
sudo dnf config-manager --set-enabled PowerTools
Schritt 2 – Certbot installieren
Certbot ist als RPM-Paket für die Installation auf CentOS 8-Systemen verfügbar. Sie können es aus dem EPEL-Repository installieren, das Sie bereits auf Ihrem System aktiviert haben.
Öffnen Sie ein Terminal und führen Sie den folgenden Befehl aus, um certbot zu installieren:
sudo dnf install certbot python3-certbot-apache
sudo dnf install certbot python3-certbot-nginx
Schritt 3 – Fordern Sie ein neues SSL-Zertifikat an
Jetzt können Sie SSL-Zertifikate von Let’s encrypt basierend auf dem Webserver anfordern.
- Apache (HTTPD) – Führen Sie auf Systemen, auf denen der Apache-Webserver ausgeführt wird, den folgenden Befehl aus. Dies listet alle Domains/Subdomains auf, die auf Ihrem Webserver konfiguriert sind. Wählen Sie die entsprechenden Nummern aus, um das Zertifikat anzufordern.
sudo certbot --apache
- Nginx – Die Systeme, die mit dem Nginx-Webserver ausgeführt werden, verwenden den folgenden Befehl, um die SSL-Zertifikate anzufordern.
sudo certbot --nginx
- Nur Zertifikat erhalten – Wenn Sie sich mit der Standard-SSL-Konfiguration unsicher fühlen, können Sie das Zertifikat nur beim Erstellen einer Konfiguration erhalten. Erstellen Sie den virtuellen Host dann manuell.
sudo certbot certonly --apache
sudo certbot certonly --nginx
In allen oben genannten Fällen muss die Domain von DNS auf Ihren Server verweisen. Stellen Sie außerdem sicher, dass /.well-known/acme-challenge vom Webserver bedient werden.
Schritt 4 – SSL-Setup testen
Sobald das SSL-Zertifikat auf dem Webserver installiert ist, besuchen Sie https://your-domain.com/ in einem Webbrowser und suchen Sie nach dem SSL-Schlosssymbol in der URL-Leiste. Sie können auch einen Sicherheitsscan für die SSL-Einrichtung unter https://www.ssllabs.com/ssltest/ durchführen.
Schritt 5 – Bestehendes SSL-Zertifikat erneuern
Alle von Let’s encrypt ausgestellten Zertifikate sind nur 3 Monate gültig. Es ermöglicht Ihnen, ein Zertifikat vor Ablauf von 30 Tagen oder weniger zu erneuern. Mit dem Dienstprogramm Certbot können Sie SSL mit einer einzigen Befehlszeile erneuern. Sie können dies auch in einem Cronjob planen.
Führen Sie den folgenden Befehl aus, um alle Zertifikate auf diesem System zu erneuern.
sudo certbot renew
Sie können auch einen Probelauf ohne tatsächliche Erneuerung des Zertifikats durchführen. Damit können Sie überprüfen, ob die SSL-Erneuerung funktioniert, wenn sie mit Cronjob geplant ist.
sudo certbot renew --dry-run
Schlussfolgerung
In diesem Tutorial haben Sie gelernt, certbot auf einem CentOS 8-Linux-System zu installieren. Hat Ihnen auch geholfen, neue Zertifikate für Ihre Webserver zu erstellen.