Linux

Eine Website mit Nginx und kostenlosem SSL-Zertifikat (Let's Encrypt)

Von null zu einer Website mit HTTPS in zehn Minuten: Nginx, deine Domain und ein Zertifikat von Let's Encrypt, das sich selbst erneuert.

1 Min. LesezeitAktualisiert am 6. Oktober 2026

Bevor du anfängst, muss deine Domain per A-Eintrag auf die IP des VPS zeigen (so geht's). Ohne das kann das Zertifikat nicht ausgestellt werden. In den Beispielen heißt die Domain meinedomain.de.

1. Nginx installieren und die Ports öffnen

apt install -y nginx
ufw allow 'Nginx Full'

Wenn du die IP des VPS im Browser öffnest, siehst du schon die Willkommensseite von Nginx.

2. Deine Website

mkdir -p /var/www/meinedomain
echo '<h1>Es funktioniert!</h1>' > /var/www/meinedomain/index.html

Lege /etc/nginx/sites-available/meinedomain an:

server {
    listen 80;
    server_name meinedomain.de www.meinedomain.de;
    root /var/www/meinedomain;
    index index.html;

    location / {
        try_files $uri $uri/ =404;
    }
}
ln -s /etc/nginx/sites-available/meinedomain /etc/nginx/sites-enabled/
nginx -t && systemctl reload nginx

nginx -t prüft auf Fehler, bevor irgendetwas angewendet wird.

3. Das SSL-Zertifikat

apt install -y certbot python3-certbot-nginx
certbot --nginx -d meinedomain.de -d www.meinedomain.de

Certbot fragt nach einer E-Mail-Adresse (um dich zu warnen, falls etwas schiefgeht) und danach, ob du die Bedingungen akzeptierst. Es konfiguriert Nginx selbst, einschließlich der Weiterleitung von HTTP auf HTTPS.

4. Automatische Erneuerung

Die Zertifikate gelten 90 Tage, und certbot erneuert sie von selbst. Prüfe, ob die Erneuerung funktionieren wird:

certbot renew --dry-run

Wenn etwas schiefgeht

  • Certbot kann die Domain nicht validieren: Prüfe mit nslookup meinedomain.de, ob sie auf deine IP zeigt und ob Port 80 offen ist.
  • Cloudflare: Mit der orangen Wolke funktioniert es auch; wenn es beim Ausstellen Probleme gibt, stell die Wolke auf grau, stelle das Zertifikat aus und schalte sie wieder auf orange.
  • 502-Fehler: Wenn Nginx als Proxy für eine Anwendung dient (Node, PHP …), läuft diese Anwendung nicht oder lauscht auf einem anderen Port.

Ähnliche Artikel

Zurück zum Hilfe-Center

Nicht gefunden, was du suchst?

Eröffne ein Ticket in deinem Panel – wir antworten in unter 5 Minuten.