Methode zur Erhaltung von Wildcard-Zertifikaten für ESA im CNAME-Modus

Domain ist in Alibaba Cloud DNS oder Drittanbietern gehostet, kann nicht migriert werden, benötigt aber Wildcard. Alibaba Cloud ESA bietet 10 Zertifikate, was offensichtlich nicht ausreicht.

Hier teile ich eine Methode zur Erhaltung von Wildcard-Zertifikaten und erkläre am Ende das Prinzip.

Es müssen zwei Schnittstellen bearbeitet werden:

  1. ESA
  2. Domain-Verwaltung (oder Drittanbieter-DNS-Verwaltung)

Schritte

  1. ESA: DNS -> Einstellungen: Zum NS-Zugriffsmodus wechseln, bestätigen Sie direkt, keine weiteren Aktionen erforderlich.
  2. ESA: Beantragen Sie ein kostenloses Edge-Zertifikat, nur für *.example.com, verwenden Sie Ihre eigene Domain
  3. ESA: Öffnen Sie die Dropdown-Leiste des beantragten Zertifikats, erhalten Sie den TXT-Eintrag, Host-Eintrag: _acme-challenge.example.com, Eintragswert: -PewtWrH93avbM_bScUILtcNwCHifNvjZIa2VgT9seQ
  4. Domain-Verwaltung: Erstellen Sie einen TXT-Eintrag, fügen Sie den Host-Eintrag und Eintragswert aus dem vorherigen Schritt ein
  5. Warten Sie auf das Wildcard-Zertifikat, wenn es innerhalb von 10 Minuten nicht erhalten wird, liegt ein Fehler vor, prüfen Sie diesen selbst.
  6. ESA: DNS -> Einstellungen: Zum CNAME-Zugriffsmodus wechseln, bestätigen Sie direkt, keine weiteren Aktionen erforderlich.

Prinzip

Alle kostenlosen Zertifikate stammen von letsencrypt, es gibt zwei Authentifizierungsmethoden:

  1. HTTP-01 Challenge: Der Validierungsserver von Let’s Encrypt greift über HTTP auf eine bestimmte Datei auf Ihrem Server zu (unter dem Pfad .well-known/acme-challenge/), um die Kontrolle über die Domain zu bestätigen.
  2. DNS-01 Challenge: Diese Methode erfordert, dass Sie einen TXT-Eintrag in den DNS-Einträgen Ihrer Domain hinzufügen. Durch das Hinzufügen eines bestimmten TXT-Eintrags im DNS können Sie nachweisen, dass Sie die Kontrolle über die Domain besitzen.

Wildcard-Zertifikate können nur über DNS-01 Challenge erhalten werden, was bedeutet, dass DNS-Einträge konfiguriert werden müssen. Daher verlangt ESA, dass die Domain auf die ESA-Plattform migriert wird, um ein Wildcard-Zertifikat zu beantragen. Der Schritt “ESA: DNS -> Einstellungen: Zum NS-Zugriffsmodus wechseln” ist eine Schlussfolgerung aus der Analyse der API-Rückgabe von ApplyCertificate und hat keine tatsächliche Wirkung, dient nur dazu, die Alibaba Cloud-Validierung zu umgehen.

Der Kernschritt ist, beim Antrag auf ein Zertifikat bei Let’s Encrypt den vorbestimmten TXT-Eintrag auf den NS-Server der Domain zu schreiben, egal ob dieser von Domain-Verwaltung oder ESA stammt, um zu beweisen, dass die Domain Ihnen gehört.

Zusammenfassung

ESA und Domain-Verwaltung gehören beide zu Alibaba Cloud, können jedoch keine Daten austauschen. ESA hat offensichtlich die Fähigkeit, zu prüfen, ob eine Domain zu diesem Konto gehört. Um ein Wildcard-Zertifikat zu erhalten, muss lediglich eine DNS-Weiterleitungsregel in Domain-Verwaltung hinzugefügt und autorisiert werden, aber dies wurde nicht umgesetzt. Die Erfahrung lässt noch Raum für Verbesserungen.

Möglicherweise kann das mit dieser Methode erhaltene Zertifikat nicht aktualisiert werden. Sie können andere Methoden verwenden, um das Zertifikat zu ESA zu synchronisieren: https://api.aliyun.com/api/ESA/2024-09-10/SetCertificate