bg-tutorials

So installieren Sie ein ACME SSL-Zertifikat auf Apache & NGINX

Wenn Sie einen Webserver betreiben, ist die Sicherung mit HTTPS ein grundlegender Standard. Dank des ACME-Protokolls (Automated Certificate Management Environment) können Sie die Ausstellung und Erneuerung von SSL-Zertifikaten mit Tools wie Certbot automatisieren.

ACME SSL auf Apache und Nginx

In dieser Anleitung erfahren Sie, wie Sie ein ACME-Zertifikat auf Apache und NGINX mit Certbot unter verschiedenen Linux-Distributionen installieren. Wir behandeln Debian- und RHEL-basierte Systeme, fügen bei Bedarf Erläuterungen hinzu und führen Sie von der Installation bis zur automatischen Erneuerung.


Bevor Sie beginnen

Bevor Sie beginnen, überprüfen Sie das:

  • Sie haben sudo- oder root-Zugriff auf Ihren Server
  • Ihr Domainname verweist über DNS auf die öffentliche IP-Adresse Ihres Servers
  • Die Ports 80 und 443 sind in der Sicherheitsgruppe Ihrer Firewall oder Ihres Cloud-Anbieters geöffnet
  • Ihr System ist auf dem neuesten Stand und wird unterstützt

Schritt 1 – Installieren Sie Certbot auf Ihrem Betriebssystem

Certbot ist der ACME-Client, mit dem wir SSL-Zertifikate beantragen und erneuern werden. Wir werden die Einrichtungsanweisungen für jedes unterstützte Betriebssystem durchgehen. Wählen Sie das für Ihren Server passende aus.

Ubuntu LTS-Editionen mit APT

Aktualisieren Sie die Pakete und installieren Sie Certbot mit Ihrem bevorzugten Webserver-Plugin:

Apache:

sudo apt update
sudo apt install certbot python3-certbot-apache

NGINX:

sudo apt update
sudo apt install certbot python3-certbot-nginx

Debian-Systeme mit APT-Unterstützung

Gleicher Prozess wie bei Ubuntu:

sudo apt update
sudo apt install certbot python3-certbot-apache # for Apache
sudo apt install certbot python3-certbot-nginx # for NGINX

Auf Debian-Systemen ist die Installation von Certbot über APT die einfachste Option. Wenn Sie lieber Snap (für die neueste Version) verwenden möchten, scrollen Sie zum Abschnitt Snap weiter unten.

AlmaLinux oder Rocky Linux (RHEL-kompatibel)

Aktivieren Sie zunächst das EPEL-Repository:

sudo dnf install epel-release
sudo dnf update

Dann installieren Sie Certbot mit dem Plugin Ihrer Wahl:

Apache:

sudo dnf install certbot python3-certbot-apache

NGINX:

sudo dnf install certbot python3-certbot-nginx

Alternative: Certbot über Snap installieren (Alle Systeme)

Wenn Sie die neueste Version direkt von der Quelle erhalten möchten, verwenden Sie Snap.

1. Installieren Sie Snap (falls nicht bereits installiert):

sudo apt install snapd # Ubuntu/Debian
sudo dnf install snapd # AlmaLinux/Rocky

2. Installieren und verknüpfen Sie Certbot:

sudo snap install core
sudo snap refresh core
sudo snap install --classic certbot
sudo ln -s /snap/bin/certbot /usr/bin/certbot

Optional: Installieren Sie Certbot mit pip (für benutzerdefinierte Setups)

Diese Methode ist für fortgeschrittene Benutzer oder benutzerdefinierte Umgebungen gedacht, in denen keine Snap- oder OS-Pakete verfügbar sind. Sie sollten sie nur verwenden, wenn:

  • Sie führen Certbot in einer virtuellen Umgebung aus
  • Sie arbeiten mit minimalen Containern
  • Ihr Betriebssystem unterstützt snapd, apt oder dnf nicht einwandfrei

So installieren Sie Certbot mit pip:

python3 -m pip install --upgrade certbot

Damit wird das Certbot-Kerntool installiert, aber es wird keine automatische Erneuerung eingerichtet, und es werden keine Apache- oder NGINX-Plugins installiert. Sie müssen alles manuell konfigurieren

Wenn Sie sich nicht sicher sind, was das bedeutet, gehen Sie zurück und verwenden Sie stattdessen die Anweisungen APT, DNF oder Snap.

Sie können Plugins (wie das von NGINX) auch mit pip installieren:

python3 -m pip install certbot-nginx

Verwenden Sie pip nur, wenn Ihre Systemumgebung vollständige Kontrolle oder Isolierung erfordert.


Schritt 2 – Beantragen und installieren Sie Ihr ACME-Zertifikat

Es gibt zwei Hauptansätze: vollautomatisch oder anbieterspezifisch unter Verwendung von EAB-Zugangsdaten (External Account Binding). Beide werden im Folgenden beschrieben.

Option A: Vollständig automatisiert (Standard ACME)

Überlassen Sie Certbot alles – anfordern, verifizieren, installieren und laden Sie Ihre Serverkonfiguration neu.

Apache:

sudo certbot --apache

NGINX:

sudo certbot --nginx

Sie werden gefragt werden:

  • Welche Domain(s) Sie sichern müssen
  • Ob der gesamte HTTP-Verkehr auf HTTPS umgeleitet werden soll
  • Ihre E-Mail für Verlängerungserinnerungen

Certbot kümmert sich hinter den Kulissen um die Validierung und die Webserver-Konfiguration.

Option B: Verwendung eines externen ACME-Anbieters (z. B. Sectigo) mit EAB

Wenn Ihr Anbieter eine externe Kontobindung verlangt, verwenden Sie diese Methode:

sudo certbot --nginx \
--non-interactive \
--agree-tos \
--email [email protected] \
--server https://acme.sectigo.com/v2/DV \
--eab-kid YOUR_EAB_KID \
--eab-hmac-key YOUR_EAB_HMAC_KEY \
--domain example.com \
--domain www.example.com \
--cert-name my-website-cert

Ersetzen Sie --nginx durch --apache für die Apache-Einrichtung.

Sie erhalten --eab-kid und --eab-hmac-key von Ihrem Zertifikatsanbieter, wenn Sie ein ACME-Konto registrieren.

Option C: Certbot im manuellen Modus verwenden

Wenn Sie nicht möchten, dass Certbot Ihre Webserver-Konfiguration ändert, oder wenn Sie eine benutzerdefinierte Konfiguration verwenden, können Sie ein Zertifikat manuell anfordern.

Hier sehen Sie, wie Sie das mit der Webroot-Methode machen:

sudo certbot certonly --webroot \
-w /var/www/html \
-d example.com \
-d www.example.com \
--email [email protected] \
--agree-tos \
--non-interactive

  • –certonly weist Certbot an, das Zertifikat auszustellen, es aber nicht zu installieren
  • -w gibt das Stammverzeichnis für Ihre Website an (muss über Port 80 öffentlich zugänglich sein)

Nach der Ausstellung konfigurieren Sie Ihren Webserver manuell mit den Zertifikatsdateien, die sich in:

/etc/letsencrypt/live/yourdomain.com/

Anmerkung: Dieser Pfad wird unabhängig davon verwendet, welchen ACME-Anbieter Sie wählen, es sei denn, Sie überschreiben das Speicherverzeichnis mit den erweiterten Flags (–config-dir, –work-dir).

Stellen Sie sicher, dass Sie Ihren Webserver neu laden, nachdem Sie die Zertifizierungspfade in Ihre Konfiguration übernommen haben.


Schritt 3 – Prüfen Sie, ob alles funktioniert

Besuchen Sie Ihre Domain in einem Browser. Sie sollten das sichere Vorhängeschloss sehen oder nur das erfolgreiche Laden der Seite in Chrome. Um zu überprüfen, ob der Server läuft:

sudo systemctl status apache2 # Debian/Ubuntu (Apache)
sudo systemctl status httpd # AlmaLinux/Rocky (Apache)
sudo systemctl status nginx # All systems (NGINX)

Und um das Zertifikat vom Terminal aus einzusehen:

openssl s_client -connect yourdomain.com:443

Achten Sie in der Ausgabe auf gültige Daten und den Namen der CA Ihres Anbieters.


Schritt 4 – Automatische Erneuerung einrichten

Das ACME-Protokoll unterstützt die automatische Erneuerung von Zertifikaten, und Certbot ist so konzipiert, dass dies nahtlos über einen eingebauten systemd-Timer oder Cron-Job abgewickelt wird. Das Verhalten bei der Erneuerung hängt jedoch von Ihrem Zertifikatsanbieter ab:

Kostenlose CAs (wie Let’s Encrypt) stellen Zertifikate mit einer Gültigkeit von 90 Tagen aus und unterstützen häufige Erneuerungsprüfungen.

Kommerzielle Zertifizierungsstellen (wie Sectigo oder Digicert) stellen oft über ACME Zertifikate mit einer Gültigkeitsdauer von 1 Jahr aus, befolgen aber dennoch den ACME-Erneuerungsprozess. Certbot verarbeitet diese ebenfalls automatisch, nur weniger häufig.

Prüfen Sie, ob eine Erneuerung geplant ist

Certbot richtet standardmäßig einen System-Timer oder Cron-Job ein. Sie können bestätigen, dass er aktiv ist mit:

systemctl list-timers | grep certbot

Dadurch wird sichergestellt, dass Certbot Ihre Zertifikate regelmäßig überprüft (in der Regel zweimal täglich) und sie nur dann erneuert, wenn sie sich innerhalb des Erneuerungsfensters befinden (in der Regel 30 Tage vor Ablauf).


Letzte Worte

Certbot und das ACME-Protokoll machen die SSL-Verwaltung einfach. In dieser Anleitung finden Sie alles, was Sie brauchen, um ein ACME-Zertifikat auf Apache und NGINX zu installieren, mit automatischer Erneuerung, klarer Validierung und voller Kontrolle, wenn nötig.

Sparen Sie 10% auf SSL-Zertifikate, wenn Sie noch heute bestellen!

Schnelle Ausstellung, starke Verschlüsselung, 99,99% Browser-Vertrauen, engagierter Support und 25-tägige Geld-zurück-Garantie. Gutscheincode: SAVE10

A detailed image of a dragon in flight
Geschrieben von

Erfahrener Content-Autor, spezialisiert auf SSL-Zertifikate. Verwandeln Sie komplexe Cybersicherheitsthemen in klare, ansprechende Inhalte. Tragen Sie durch wirkungsvolle Narrative zur Verbesserung der digitalen Sicherheit bei.