VexCore HVDocs

Let's Encrypt ohne DNS-API

Mit einem Challenge-Alias bekommen Sie ein Let's-Encrypt-Zertifikat auch dann, wenn Ihr DNS-Anbieter keine API hat – z. B. mit einer kostenlosen deSEC-Zone unter dedyn.io.

Let's Encrypt sucht den Prüfeintrag (TXT) unter _acme-challenge.<Name>. Bietet Ihr DNS-Anbieter keine API, legen Sie dort einmalig einen CNAME-Eintrag an, der auf eine Hilfszone bei einem unterstützten Anbieter zeigt. Proxmox setzt den TXT-Eintrag dann in dieser Hilfszone – bei der ersten Bestellung und bei jeder Erneuerung.

_acme-challenge.vexcore.firma.de.  CNAME  _acme-challenge.firma-acme.dedyn.io.
WoWer pflegt ihn
A-Eintrag vexcore.firma.de → IP des Hostsbei Ihrem bisherigen DNS-Anbieter (oder lokales DNS)Sie, einmalig
CNAME _acme-challenge.vexcore.firma.debei Ihrem bisherigen DNS-AnbieterSie, einmalig
TXT _acme-challenge.firma-acme.dedyn.ioin der HilfszoneProxmox, automatisch

Als Hilfszone eignet sich jede Zone bei einem unterstützten Anbieter, z. B. eine eigene Zone bei Cloudflare oder eine kostenlose deSEC-Zone unter dedyn.io. Das folgende Beispiel verwendet deSEC.

Beispiel: kostenlose deSEC-Zone

Hilfszone bei deSEC anlegen

Registrieren Sie sich kostenlos bei deSEC und legen Sie einen Namen unter dedyn.io an, z. B. firma-acme.dedyn.io. Erstellen Sie in Ihrem deSEC-Konto ein API-Token und notieren Sie es.

Die Zone dient nur als Ablage für den Prüfeintrag. Sie müssen darin nichts weiter einrichten.

DNS-Plugin für deSEC (Schritt 2 des Assistenten)

Öffnen Sie Settings → HTTPS → Set up Let's Encrypt… und legen Sie das ACME-Konto an wie unter Let's Encrypt mit DNS-API beschrieben.

In Schritt DNS provider klicken Sie auf New plugin und wählen als DNS provider den Eintrag für deSEC.

Proxmox gibt für deSEC keine einzelnen Eingabefelder vor. Der Assistent zeigt deshalb ein Textfeld API data — one KEY=value per line. Tragen Sie dort eine Zeile ein, mit Ihrem Token statt <Token>:

DEDYN_TOKEN=<Token>

DEDYN_TOKEN ist der Name, den das deSEC-Skript von Proxmox (acme.sh) erwartet. Klicken Sie auf Create plugin.

Name und Alias eintragen (Schritt 3)

In Schritt Names on the certificate:

  1. Kreuzen Sie My DNS provider has no API — use a challenge alias an.
  2. Tragen Sie den Namen ein, z. B. vexcore.firma.de.
  3. Tragen Sie darunter die Hilfszone als Challenge alias ein: firma-acme.dedyn.io – ohne _acme-challenge. davor; das ergänzt Proxmox selbst.
  4. Wählen Sie neben dem Namen das deSEC-Plugin (Plugin for firma-acme.dedyn.io).

Der Assistent zeigt jetzt den CNAME-Eintrag, den Sie anlegen müssen, mit Kopier-Schaltflächen.

CNAME bei Ihrem DNS-Anbieter anlegen

Legen Sie bei dem Anbieter, der firma.de verwaltet, einmalig an:

NameTypZiel
_acme-challenge.vexcore.firma.deCNAME_acme-challenge.firma-acme.dedyn.io
  • Viele Anbieter erwarten als Name nur den Teil vor der Domain, hier _acme-challenge.vexcore.
  • Ein TXT-Eintrag unter demselben Namen muss vorher weg – ein CNAME kann nicht neben anderen Einträgen stehen.

CNAME prüfen

Klicken Sie auf Check CNAME. VexCore HV fragt öffentliche DNS-Server (1.1.1.1 und 9.9.9.9) – nicht das DNS Ihres Netzwerks, denn Let's Encrypt sieht nur das öffentliche DNS. Mögliche Ergebnisse:

MeldungBedeutung
… points to _acme-challenge.firma-acme.dedyn.io.Alles richtig.
No CNAME at … yetEintrag fehlt – oder wurde gerade erst angelegt und ist noch nicht sichtbar. Einige Minuten warten.
… points to …, not to …Der CNAME zeigt auf ein falsches Ziel.
… has a TXT record instead of the CNAMETXT-Eintrag entfernen und CNAME anlegen.
Couldn't check …Öffentliches DNS vom Host aus nicht erreichbar; die Prüfung ist nur ein Hinweis.

Speichern und bestellen

Klicken Sie auf Save names for <Node> und dann in Schritt 4 auf Order certificate.

Vor der Bestellung prüft VexCore HV die CNAME-Einträge noch einmal. Fehlt einer, fragt es „Order anyway?“. Es blockiert nie – ein neuer Eintrag kann einige Minuten brauchen –, aber fehlgeschlagene Prüfungen zählen gegen das Limit von Let's Encrypt (5 pro Name und Stunde). Warten Sie im Zweifel, bis Check CNAME den Eintrag bestätigt.

Gut zu wissen

  • Mehrere Namen können dieselbe Hilfszone verwenden. Jeder Name braucht seinen eigenen CNAME.
  • Der A-Eintrag für vexcore.firma.de bleibt bei Ihrem bisherigen Anbieter bzw. in Ihrem lokalen DNS – der Challenge-Alias betrifft nur die Prüfung.
  • Cloudflare als Hilfszone: Ein Plugin mit CF_Zone_ID gilt nur für genau eine Zone. Für eine Hilfszone in einer anderen Domain brauchen Sie ein eigenes Plugin mit deren Zone ID oder ein Token mit Zone → Read ohne Zone ID.
  • Die Erneuerung läuft ohne Ihr Zutun über denselben Weg, solange der CNAME bestehen bleibt und das Token der Hilfszone gültig ist.
  • Schlägt eine Bestellung wegen des Alias fehl, prüft VexCore HV die CNAME-Einträge sofort erneut und zeigt das Ergebnis unter der Fehlermeldung – siehe Fehlerbehebung.

Auf dieser Seite