Traefik DNS Challenge Provider (basiert auf LEGO)

Wichtig

Damit diese Integration genutzt werden kann, MUSS erst ein DNS-API-Benutzer anhand der Anleitung (Benutzer im Kundenportal erstellen) erstellt sein!

Für Traefik existiert ebenfalls eine DNS-Challenge-Schnittstelle, welche mit der Servercow-DNS-API kommunizieren kann.

Dies ist möglich, da Traefik (ebenfalls ein Go-Produkt) den LEGO Let's-Encrypt-Client verwendet und damit auch dessen DNS-Challenge-Provider.

Allerdings ist die Dokumentation dazu etwas spärlich, weshalb wir diese hier mitliefern.

Achtung

Diese Anleitung erklärt NICHT die generelle Konfiguration von Traefik! Ein Grundwissen über die Konfiguration von Traefik wird vorausgesetzt!

Um eine DNS-Challenge als Provider anzugeben, muss diese in die traefik.yml oder traefik.toml eingefügt werden:

#...
certificatesResolvers:
  myresolver:
    acme:
      # ...
      dnsChallenge:
        provider: servercow
        delayBeforeCheck: 0
      # ...
# ...
[certificatesResolvers.myresolver.acme]
# ...
[certificatesResolvers.myresolver.acme.dnsChallenge]
  provider = "servercow"
  delayBeforeCheck = 0
# ...

Hinweis

Damit der DNS-Provider auch funktioniert, müssen dem Traefik noch Umgebungsvariablen mitgegeben werden. Dies kann bei einer lokalen Installation einfach via export erfolgen. Die gängigere Methode, Traefik zu installieren, ist jedoch Docker, weswegen wir die Variablendeklaration auch anhand dieses Beispiels zeigen.

Fügen Sie einfach den Abschnitt environment in Ihrer Traefik-docker-compose.yml mit diesem Inhalt hinzu oder erstellen Sie ihn:

docker-compose.yml
    #...
    environment:
      SERVERCOW_USERNAME: "IHR_API_NUTZER"
      SERVERCOW_PASSWORD: "IHR_API_NUTZER_PASSWORT"
    #...
Werden Traefik diese Informationen mitgegeben, wird er diese Credentials nutzen, um die Zertifikate per DNS-Challenge über die Servercow-API zu beziehen.

Erinnerung

Dienste, welche durch Traefik erreicht werden sollen, müssen erst noch die DNS-Challenge als Zertifikatsresolver aktivieren (per Label oder config).

Hat alles geklappt, bezieht Traefik nun die Zertifikate per DNS-Challenge über die Servercow-DNS-API.

Debugging

Wir empfehlen, bei dem ersten Zertifikatsdurchlauf den Debugging-Modus von Traefik in der traefik.yml/traefik.toml zu aktivieren, damit Fehlermeldungen genauer analysiert werden können.