How2-Host

Certbot unter Debian 12 für Nginx installieren – Schritt-für-Schritt-Anleitung

In dieser Anleitung erfährst du, wie du unter Debian 12 mit Certbot und Nginx ein kostenloses SSL-Zertifikat von Let's Encrypt installierst und automatisch erneuerst. Sicher, einfach und ohne Kosten.

1 min Lesezeit
Certbot unter Debian 12 für Nginx installieren – Schritt-für-Schritt-Anleitung

HTTPS ist heute Standard. Ein gültiges SSL-Zertifikat schützt nicht nur die Kommunikation zwischen Browser und Server, sondern steigert auch das Vertrauen deiner Besucher – und verbessert das Google-Ranking.

Die einfachste Möglichkeit, kostenlos ein solches Zertifikat zu bekommen, bietet Let's Encrypt – und das passende Tool dazu heißt Certbot.

In diesem Artikel lernst du:

  • wie du Certbot unter Debian 12 installierst,
  • wie du Nginx für HTTPS konfigurierst,
  • und wie du deine Zertifikate automatisch erneuern lässt.

Voraussetzungen

  • Ein Server mit Debian 12 (Bookworm)
  • Nginx ist installiert und läuft (sudo systemctl status nginx)
  • Eine registrierte Domain, die auf deinen Server zeigt (A-/AAAA-Record)
  • Root-Zugriff oder sudo-Rechte

1. Certbot und das Nginx-Plugin installieren

Schritt 1: Paketquellen aktualisieren

``bash sudo apt update ``

Schritt 2: Certbot für Nginx installieren

``bash sudo apt install certbot python3-certbot-nginx -y ``

Diese Pakete beinhalten:

  • certbot: Das Hauptprogramm
  • python3-certbot-nginx: Plugin zur Automatisierung für Nginx

2. Zertifikat mit Certbot einrichten

Vorbereitung

Stelle sicher, dass in deiner Nginx-Konfiguration ein funktionierender HTTP-Server für deine Domain existiert:

```nginx server { listen 80; server_name deine-domain.de www.deine-domain.de;

location / { proxy_pass http://localhost:3001; ... } } ```

Speichern, dann Konfiguration prüfen und neu laden:

``bash sudo nginx -t sudo systemctl reload nginx ``

Schritt 3: Zertifikat anfordern und HTTPS automatisch konfigurieren

``bash sudo certbot --nginx -d deine-domain.de -d www.deine-domain.de ``

Certbot prüft deine Konfiguration und richtet HTTPS automatisch ein – inklusive Redirect von HTTP auf HTTPS, wenn du zustimmst.

Du wirst gefragt:

  • ob du HTTP zu HTTPS umleiten willst (empfohlen)
  • eine E-Mail-Adresse für wichtige Benachrichtigungen

Nach erfolgreicher Einrichtung:

Deine Website ist nun per HTTPS erreichbar!

3. Zertifikate automatisch erneuern

Let's Encrypt-Zertifikate sind 90 Tage gültig, sollten aber spätestens nach 60 Tagen erneuert werden. Certbot bringt einen Timer mit:

Status prüfen:

``bash sudo systemctl status certbot.timer ``

Falls noch nicht aktiviert:

``bash sudo systemctl enable --now certbot.timer ``

Manuelle Erneuerung testen (optional):

``bash sudo certbot renew --dry-run ``

4. Zertifikatsspeicherorte (zur Info)

  • Zertifikat: /etc/letsencrypt/live/deine-domain.de/fullchain.pem
  • Schlüssel: /etc/letsencrypt/live/deine-domain.de/privkey.pem

Diese werden automatisch von Certbot verwaltet – nicht selbst ändern.

Fehlerbehebung

Fehler: Failed to restart nginx.service: Access denied

Das tritt auf, wenn du keinen Root-Zugriff hast. Verwende in diesem Fall:

``bash sudo certbot ... ``

Oder prüfe, ob du in einer eingeschränkten Umgebung (z. B. chroot oder Webhosting-Panel) arbeitest.

Fazit

Mit Certbot und Let's Encrypt stattest du deinen Nginx-Webserver auf Debian 12 in wenigen Minuten mit einem gültigen SSL-Zertifikat aus. Die Einrichtung ist einfach, kostenlos und sicher – und mit dem certbot.timer sogar wartungsfrei.

Wenn deine Website grün verschlüsselt im Browser erscheint, hast du alles richtig gemacht.