Alle Originalinhalte werden auf Ukrainisch erstellt. Noch nicht alle Inhalte wurden übersetzt. Einige Beiträge sind möglicherweise nur auf Ukrainisch verfügbar.Mehr erfahren
Was ist _acme-challenge und warum bittet Cloudflare, es in DNS hinzuzufügen?
Vor kurzem erhielt ich während der automatischen Verlängerung des SSL-Zertifikats eine E-Mail von Cloudflare mit der Bitte, den DNS-Eintrag _acme-challenge hinzuzufügen.
Auf den ersten Blick erschien die Situation seltsam: Cloudflare hatte bereits ein Universal-SSL-Zertifikat für die Domain, das sowohl die Hauptdomain als auch Wildcard abdeckte:
example.com
*.example.com
Aber für die nächste Verlängerung bat Cloudflare, den TXT-Eintrag manuell hinzuzufügen.
Lass uns klären, was das ist und wofür es benötigt wird. Aber zuerst überprüfte ich, ob es sich tatsächlich um eine E-Mail von Cloudflare handelte und nicht um einen raffinierten Versuch, die Domain zu stehlen. Nach der Überprüfung machte ich mich daran, das _acme-challenge zu klären.
ACME ist ein Protokoll, das die automatisierte Ausstellung und Verlängerung von SSL/TLS-Zertifikaten ermöglicht. Es wird unter anderem von Let's Encrypt und anderen Zertifizierungsstellen verwendet.
Bei der Überprüfung muss nachgewiesen werden, dass die Person oder der Dienst, der das Zertifikat anfordert, tatsächlich die Kontrolle über die Domain hat.
Eine Möglichkeit, dies zu tun, ist die DNS-01 challenge.
In diesem Fall wird ein TXT-Eintrag in etwa folgender Form erstellt:
_acme-challenge.example.com
mit einem bestimmten Wert:
y_DgjAHPWuxNmcyKLHhljRL-5e734ndz99rk_DLeSrF
Der Wert wird automatisch generiert und ist Teil der spezifischen Überprüfung.
Wie erfolgt die Überprüfung
In vereinfachter Form sieht der Prozess so aus:
Cloudflare / ACME
↓
generiert challenge
↓
benötigter TXT-Eintrag
↓
_acme-challenge.example.com
↓
DNS
↓
Überprüfung durch die Zertifizierungsstelle
↓
Zertifikat verlängert
Die Zertifizierungsstelle überprüft DNS und sucht nach dem erforderlichen TXT-Eintrag.
Wenn der Wert mit dem erwarteten übereinstimmt, ist die Kontrolle über die Domain bestätigt.
Warum hat Cloudflare mich gebeten, es manuell hinzuzufügen
In meinem Fall schickte Cloudflare eine E-Mail mit der Mitteilung, dass die Überprüfung nicht automatisch durchgeführt werden konnte.
Zu den möglichen Gründen nannte Cloudflare:
Verwendung einer partiellen CNAME-DNS-Konfiguration;
Vorhandensein eines Wildcard-Zertifikats;
Die Domain wird nicht mehr über das Cloudflare-Netzwerk aufgelöst;
Cloudflare kann den erforderlichen Validierungs-Eintrag nicht selbst hinzufügen.
Besonders wichtig in meinem Fall war das wildcard-Zertifikat.
In den Einstellungen der Edge-Zertifikate war das Zertifikat für:
example.com
*.example.com
Das bedeutet, dass Cloudflare ein Zertifikat verwendete, das nicht nur die Domain selbst, sondern auch alle ihre Subdomains abdeckt.
Für Wildcard-Zertifikate wird die DNS-basierte Validierung verwendet.
Welchen Eintrag muss ich hinzufügen
Cloudflare hat einen spezifischen TXT-Eintrag gesendet, der zu DNS hinzugefügt werden musste.
Er sieht ungefähr so aus:
Type: TXT
Name: _acme-challenge
Content: <eindeutiger Wert von Cloudflare>
Infolgedessen wird der vollständige DNS-Name sein:
_acme-challenge.example.com
Wichtig: Es ist nicht erforderlich, dafür einen separaten A-Eintrag oder CNAME zu erstellen, wenn Cloudflare ausdrücklich nach TXT fragt.
Es ist auch nicht notwendig, einen TXT-Wert zu erfinden — es muss genau der verwendet werden, den Cloudflare bereitgestellt hat.
Warum beginnt _acme-challenge mit _
Dies ist ein Dienst-DNS-Name.
Der Unterstrich (_) wird häufig für spezielle DNS-Mechanismen verwendet, die nicht für den normalen Zugriff über einen Browser bestimmt sind.
Deshalb:
_acme-challenge.example.com
bedeutet nicht, dass eine neue Subdomain auf der Website erschienen ist.
Es handelt sich um einen Dienst-Eintrag, der für die ACME-Validierung verwendet wird.
Ist es notwendig, den TXT-Eintrag für immer zu belassen?
Nicht unbedingt.
Wenn der Eintrag für eine spezifische einmalige Überprüfung erstellt wurde, könnte er nach Abschluss dieser Überprüfung nicht mehr benötigt werden.
Aber hier muss man vorsichtig sein.
Wenn Sie die automatische Verlängerung von Zertifikaten eingerichtet haben und DNS-01 verwenden, kann das System solche Einträge selbst erstellen und löschen.
Deshalb sollten Sie nicht einfach alle _acme-challenge-Einträge löschen, ohne zu verstehen, wofür sie verwendet werden.
Warum kann es mehrere solcher Einträge geben
Im DNS können mehrere TXT-Einträge für ein _acme-challenge angezeigt werden.
Mehrere Validierungs-Einträge können existieren, wenn gleichzeitig verschiedene Überprüfungen durchgeführt werden oder mehrere Zertifikate eine Domain verwenden.
Deshalb sollte man alte Einträge nicht willkürlich löschen.
Was ist mit Universal SSL bei Cloudflare?
Das kann ebenfalls verwirrend sein.
Bei Cloudflare im Abschnitt SSL/TLS → Edge Certificates können mehrere Zertifikate gleichzeitig angezeigt werden.
Zum Beispiel:
Universal SSL → Managed
Backup → Managed
Dabei kann ein Zertifikat ein späteres Ablaufdatum haben als ein anderes.
Deshalb bedeutet eine E-Mail mit der Bitte um Validierung nicht automatisch, dass das aktuelle HTTPS bereits nicht mehr funktioniert.
Cloudflare kann ein anderes Zertifikat innerhalb seines Verwaltungssystems vorbereiten oder verlängern.
Was passiert, wenn _acme-challenge nicht hinzugefügt wird
Wenn Cloudflare die Kontrolle über die Domain nicht bestätigen kann und das erforderliche Zertifikat nicht vor Ablauf verlängern kann, kann das Zertifikat aus dem Cloudflare Edge entfernt werden.
Infolgedessen können Benutzer beim Zugriff auf die Website einen TLS/SSL-Fehler erhalten.
Deshalb sollten solche E-Mails von Cloudflare besser nicht ignoriert werden.
Was ich in meinem Fall gemacht habe
Cloudflare hat mir einen TXT-Eintrag für _acme-challenge gesendet.
Ich habe ihn zu den DNS-Einträgen von Cloudflare hinzugefügt. Denn Namecheap (der Domain-Registrar) verweist auf Cloudflare. Also liegt es an den Cloudflare-Konfigurationen.
Aber beachten Sie, dass selbst wenn die Website über Cloudflare läuft, das nicht immer bedeutet, dass Cloudflare die autoritativen DNS-Einträge verwaltet.
Wenn DNS bei einem anderen Anbieter liegt, kann Cloudflare nicht immer selbst den erforderlichen _acme-challenge erstellen (oder wie in meinem Fall - konnte es nicht selbst erstellen).
Die Idee dahinter ist einfach: Einmal das Delegieren von _acme-challenge einrichten, danach kann Cloudflare automatisch Validierungs-Einträge während der nächsten Zertifikatsverlängerungen platzieren.
Eine andere Möglichkeit ist die Verwendung einer vollständigen DNS-Konfiguration von Cloudflare, bei der die autoritativen Nameserver der Domain auf Cloudflare verweisen.
In diesem Fall hat Cloudflare die volle Kontrolle über DNS und kann automatisch die erforderlichen Validierungs-Einträge erstellen. Lassen Sie uns zusammenfassen:
_acme-challenge ist kein Fehler und kein „falscher“ Subdomain.
Es ist ein Dienst-DNS-Eintrag, der für die ACME DNS-01-Validierung verwendet wird — zur Bestätigung, dass Sie die Domain kontrollieren.
Wenn Cloudflare bittet, hinzuzufügen:
_acme-challenge
als TXT-Eintrag, bedeutet das, dass es eine DNS-Überprüfung benötigt, um ein SSL/TLS-Zertifikat auszustellen oder zu verlängern.
In meinem Fall trat dies während der Verlängerung des Cloudflare Universal SSL auf, wobei das Zertifikat Wildcard *.<domain> beinhaltete. Deshalb wurde die Frage der DNS-Validierung besonders relevant.