Benutzer-Werkzeuge

Webseiten-Werkzeuge


netzwerk:letsencrypt_acme_traefik

zurück

Let's Encrypt + ACME mit Traefik einrichten

Diese Seite beschreibt, wie man mit dem ACME-Protokoll automatisch TLS-Zertifikate von Let's Encrypt in einem Traefik-Setup bezieht und verwaltet.

Voraussetzungen

  • Laufender Docker-Container mit Traefik (v2+ empfohlen)
  • Eigene Domain (z. B. via dedyn.io, IONOS, etc.)
  • Öffentlich erreichbare IP oder funktionierender DynDNS
  • Portweiterleitung für HTTP (80) und HTTPS (443)

Beispielkonfiguration (Static Configuration via Datei)

In der Datei traefik.yml oder traefik.toml (abhängig vom Format):

entryPoints:
  web:
    address: ":80"
  websecure:
    address: ":443"

certificatesResolvers:
letsencrypt:
acme:
email: [deine-email@example.com](mailto:deine-email@example.com)
storage: /letsencrypt/acme.json
httpChallenge:
entryPoint: web 

'Hinweis:' Stelle sicher, dass /letsencrypt/acme.json im Container existiert und beschreibbar ist.

Docker-Compose Beispiel

services:
  traefik:
    image: traefik:v2.10
    command:
      - --api.insecure=true
      - --providers.docker=true
      - --entrypoints.web.address=:80
      - --entrypoints.websecure.address=:443
      - --certificatesresolvers.letsencrypt.acme.email=deine-email@example.com
      - --certificatesresolvers.letsencrypt.acme.storage=/letsencrypt/acme.json
      - --certificatesresolvers.letsencrypt.acme.httpchallenge.entrypoint=web
    ports:
      - "80:80"
      - "443:443"
    volumes:
      - "/var/run/docker.sock:/var/run/docker.sock"
      - "./letsencrypt:/letsencrypt"

Hinweise zur DNS-01 Challenge

Optional kann statt HTTP auch DNS verwendet werden, z. B. für Wildcard-Zertifikate:

certificatesResolvers:
  letsencrypt:
    acme:
      dnsChallenge:
        provider: cloudflare
        delayBeforeCheck: 0
      email: deine-email@example.com
      storage: /letsencrypt/acme.json

'Tipp': Für DNS-01 sind meist API-Tokens beim Provider nötig.

Probleme & Fehlerbehebung

  • 404 bei /.well-known/acme-challenge → Port 80 ist blockiert oder Traefik fängt Route nicht ab
  • Zertifikate werden nicht ausgestellt → Domain nicht öffentlich erreichbar oder falsche Challenge
  • acme.json leer oder fehlerhaft → Schreibrechte prüfen

Siehe auch

netzwerk/letsencrypt_acme_traefik.txt · Zuletzt geändert: von lars