Guide – SSL-Zertifikate für selbst gehostete Dienste

In der heutigen digitalen Welt ist Sicherheit essenziell. Wenn du deine eigenen Dienste hostest, solltest du diese unbedingt mit SSL-Zertifikaten absichern. Dieses Tutorial zeigt dir, wie du kostenlose SSL-Zertifikate von Let‘s Encrypt einrichtest und deine Dienste sicher machst.

 

Warum SSL-Zertifikate unverzichtbar sind

 

SSL-Zertifikate bieten mehrere Vorteile, die deine Dienste sicherer und vertrauenswürdiger machen:

  • Verschlüsselung: Sie schützen den Datenverkehr zwischen deinem Server und den Nutzern vor unbefugtem Zugriff.
  • Identität: Sie bestätigen die Echtheit deines Servers.
  • Vertrauen: Sie erhöhen das Vertrauen deiner Nutzer.
  • Technische Anforderungen: Viele moderne Webtechnologien setzen SSL voraus.

 

Voraussetzungen

Bevor du loslegst, stelle sicher, dass du Folgendes hast:

  • Einen eigenen Server (z. B. VPS oder dedizierten Server).
  • Einen Domainnamen (kostenpflichtig oder über dynamische DNS-Dienste).
  • Grundlegende Kenntnisse in der Serververwaltung.

Schritt 1: Domainnamen besorgen

Option 1: Gekaufte Domain

  • Domains wie .xyz sind oft günstig. Achte jedoch darauf, dass einige Dienste wie E-Mail-Provider .xyz-Domains blockieren können.

Option 2: Kostenlose dynamische DNS-Dienste

  • Anbieter wie DuckDNS oder No-IP bieten kostenlose Subdomains an.

 

Schritt 2: DNS-Einträge konfigurieren

 

Wildcard-Zertifikate (für mehrere Dienste)

  • Erstelle einen Wildcard-DNS-Eintrag:
*.deinedomain.com -> IP-Adresse deines Servers

Einzelne Subdomains

  • Lege für jeden Dienst einen eigenen A-Record an:
meinservice.deinedomain.com -> IP-Adresse deines Servers

 

Stelle sicher, dass die DNS-Änderungen vor dem Abrufen der Zertifikate aktiv sind. Das kann je nach Provider einige Minuten bis Stunden dauern.

 

 

Schritt 3: Let‘s Encrypt einrichten

 

Methode A: Traefik (empfohlen für mehrere Dienste)

Traefik ist ein leistungsfähiger Reverse Proxy, der Zertifikate automatisch verwaltet.

Docker-Setup

1. Erstelle eine docker-compose.yml-Datei:

version: '3'
services:
  traefik:
    image: traefik:v2.5
    command:
      - "--providers.docker=true"
      - "--providers.docker.exposedbydefault=false"
      - "--entrypoints.web.address=:80"
      - "--entrypoints.websecure.address=:443"
      - "--certificatesresolvers.myresolver.acme.tlschallenge=true"
      - "--certificatesresolvers.myresolver.acme.email=deine@email.com"
      - "--certificatesresolvers.myresolver.acme.storage=/letsencrypt/acme.json"
    ports:
      - "80:80"
      - "443:443"
    volumes:
      - "/var/run/docker.sock:/var/run/docker.sock:ro"
      - "./letsencrypt/acme.json:/letsencrypt/acme.json"
    labels:
      - "traefik.enable=true"

volumes:
  letsencrypt:

2. Initialisiere die Zertifikatsdatei:

touch ./letsencrypt/acme.json
chmod 600 ./letsencrypt/acme.json

3. Starte Traefik:

docker-compose up -d

 

Labels für deine Dienste

Füge für jeden Dienst Labels hinzu:

labels:
  - "traefik.enable=true"
  - "traefik.http.routers.meinservice.rule=Host(`meinservice.deinedomain.com`)"
  - "traefik.http.routers.meinservice.entrypoints=websecure"
  - "traefik.http.routers.meinservice.tls.certresolver=myresolver"

 

 

Methode B: Certbot (für einzelne Dienste)

 

1. Certbot installieren:

sudo apt update
sudo apt install certbot

2. Zertifikat abrufen

sudo certbot certonly --standalone -d deinedomain.com

3. Automatische Erneuerung testen:

sudo certbot renew --dry-run

 

Schritt 4: Ports öffnen und Firewall konfigurieren

 

Erforderliche Ports

  • Eingehend:
    • Port 80 (HTTP) für die HTTP-01 Challenge.
    • Port 443 (HTTPS) für den Zugriff auf deine Dienste.
  • Ausgehend:
    • Port 443 (HTTPS) für die Kommunikation mit Let‘s Encrypt.

Hinweis: Nach der Zertifikatserneuerung kannst du Port 80 schließen, wenn du ihn nicht für andere Dienste benötigst.

 

Firewall-Regeln einrichten

Für ufw:

sudo ufw allow 80
sudo ufw allow 443
sudo ufw enable

 

 

Schritt 5: Automatische Erneuerung einrichten

Certbot

Certbot richtet automatisch einen Cronjob ein. Stelle sicher, dass alle abhängigen Dienste nach der Erneuerung neu geladen werden:

sudo certbot renew --post-hook "systemctl reload nginx"

Traefik

Traefik erneuert Zertifikate automatisch 30 Tage vor Ablauf. Du musst nichts weiter einrichten.

 

Zusätzliche Tipps

  • DNS-01 Challenge: Für Wildcard-Zertifikate verwende DNS-Provider-APIs wie Cloudflare.
  • OCSP Stapling: Aktiviere OCSP Stapling, um die Leistung deiner Website zu verbessern.
  • ECDSA-Schlüssel: Für bessere Leistung und Sicherheit nutze ECDSA-Schlüssel (P-256 oder P-384).

 

Fehlerbehebung

  • DNS-Validierung schlägt fehl: Warte einige Minuten und prüfe die DNS-Einträge erneut.
  • Ports blockiert: Stelle sicher, dass keine anderen Dienste die benötigten Ports nutzen.
  • Traefik-Probleme: Überprüfe die Rechte von acme.json und die Konfiguration.

 

Egal ob mit Traefik oder Certbot – die Einrichtung wird nach etwas Übung zur Routine. Viel Erfolg.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht.

Latest

Ihr kotzt mich an

Ihr kotzt mich an

Junge, wie mich diese dummen, unreflektierten Sprüche wie „Mauer wieder drum“ oder „Verschenkt den Osten an Russland“ seit gestern überall abfucken. Mal davon abgesehen, dass all diese Verfasser damit auch auf all die stabilen Menschen wie mich scheißen, die aus persönlichen Gründen hier nicht wegkönnen, und uns damit ebenfalls nur das Ekelhafteste wünschen. Es ist […]
7. September 2026
Demokratiefestival Magdeburg
Demokatiefestival-Magdeburg Blick aus der Masse zur Bühne

Demokratiefestival Magdeburg

Schön, in diesen Zeiten mitten in Ostdeutschland mal wieder unter „normalen“ Menschen gewesen zu sein. Zwischen all den Abgedrifteten und Faschos verliert man ja schnell mal den Glauben an die Menschheit.
6. September 2026
MelonLand – Ein bisschen altes Internet

MelonLand – Ein bisschen altes Internet

Neulich stolperte ich über MelonLand sowie deren Surf Navigator und trieb seither schon mehrfach von Blog zu Blog. Kann nicht mal wirklich sagen, was mich dort so anzieht, hat aber sicher auch damit zu tun, dass gefühlt immer mehr Blogs optische Zwillinge sind oder einen auf ultra-minimalistisch machen. Je weniger, desto besser. Optisch ist das […]
6. September 2026