BIMI über Cloudflare DNS hosten — Dashboard, API und Workers
Cloudflare DNS ist DNS-Hoster, NICHT Mail-Hoster — der BIMI-Record wird im Cloudflare-Dashboard angelegt, das eigentliche Mail-Backend (DMARC, SPF, DKIM, MTA-STS) läuft bei einem externen Anbieter (Microsoft 365, Google Workspace, Mailcow, Postfix) oder bei Cloudflare Email Routing. Dieser DEEP DIVE zeigt das vollständige Setup im Dashboard, die programmatische Verwaltung über die Cloudflare API, das Worker-Pattern für Multi-Tenant-Setups, den Email-Routing-Sonderfall sowie CAA-Records für die VMC-Aussteller DigiCert, Sectigo und GlobalSign. DNSSEC bei Cloudflare nutzt Algorithmus 13 (ECDSAP256SHA256) als zeichengenaues Direktzitat: „Algorithm 13 - Cloudflare's preferred cipher choice“.
BIMI über Cloudflare DNS — Dashboard, API, Workers und Email Routing
Cloudflare DNS ist einer der am weitesten verbreiteten DNS-Hosting-Dienste weltweit — kostenlos für unbegrenzte Domains, mit globaler Anycast-Performance und 1-Click-DNSSEC nach Algorithmus 13 (ECDSAP256SHA256). Direktzitat aus der offiziellen Cloudflare-Dokumentation (developers.cloudflare.com/dns/dnssec, Abruf 2026-05-19): „Algorithm 13 - Cloudflare's preferred cipher choice“. Der BIMI-Record nach dem IETF Internet-Draft Version 14 (1. Mai 2026) wird im Cloudflare-Dashboard als TXT-Record mit Namen default._bimi angelegt — der ECDSAP256SHA256-signierte Zone-Apex schützt damit auch den BIMI-Selector vor DNS-Hijacking.
Wichtige Klarstellung — Cloudflare DNS ist DNS-Hoster, NICHT Mail-Hoster: Cloudflare betreibt keinen klassischen SMTP-Mailserver mit Postfächern. Der MX-Record zeigt entweder auf einen externen Mailserver (Microsoft 365 unter *.mail.protection.outlook.com, Google Workspace unter smtp.google.com, eigener Postfix/Mailcow auf VPS), auf Proton Mail oder auf Cloudflare Email Routing (Forward-Service mit Hostnamen route1.mx.cloudflare.net, route2.mx.cloudflare.net, route3.mx.cloudflare.net; Quelle developers.cloudflare.com/email-routing, Abruf 2026-05-19). DMARC, SPF und DKIM gehören jeweils zum Mail-Backend — Cloudflare DNS stellt nur den TXT-Record bereit, der von Empfänger-Mailservern (Gmail, Apple Mail, Yahoo, GMX, WEB.DE, Fastmail, AOL) als BIMI-Selector aufgelöst und ausgewertet wird.
Hardening-Pfad: MX (Mail-Backend) → SPF → DKIM → DMARC → DMARC-Enforcement → MTA-STS → DNS-Sicherheit Cloudflare → BIMI Cloudflare (dieser Guide). Bedrohungs-Cluster: BIMI plus DNSSEC bei Cloudflare hilft Empfängern, Email-Spoofing und Phishing visuell zu erkennen — der DNSSEC-Algorithmus 13 schützt zusätzlich vor DNS-Cache-Poisoning auf den BIMI-Selector selbst.
Für Agenturen und MSPs, die BIMI über viele Kundendomains ausrollen, ist die curl-API aus Schritt 4 der Einstieg — der nächste Reifegrad ist Infrastructure-as-Code. Der offizielle Cloudflare-Provider für Terraform und für das quelloffene OpenTofu verwaltet DNS-Records deklarativ: Der BIMI-TXT-Record, die CAA-Records für die VMC-Aussteller und der DNSSEC-Status liegen als versionierter Code im Git-Repository statt als manueller Klick im Dashboard. Drei konkrete Vorteile für die BIMI-Pflege: (1) Reproduzierbarkeit — eine neue Kundendomain erhält denselben BIMI- und CAA-Satz per Modul-Aufruf, kein Copy-Paste-Drift. (2) Review-Workflow — die VMC-Rotation nach 397 Tagen wird zum Pull-Request, der vor dem Merge geprüft wird, statt zur stillen Dashboard-Änderung. (3) Drift-Detection — ein terraform plan beziehungsweise tofu plan zeigt sofort, wenn jemand den BIMI-Record manuell verändert hat. Der Cloudflare-API-Token für die Pipeline erhält den minimalen Scope Zone:Read plus DNS:Edit (siehe Schritt 4) und wird im CI-Secret-Store hinterlegt, nie im Repository.
DMARC-Voraussetzung beim dahinterliegenden Mail-Backend prüfen
BIMI verlangt DMARC mit p=quarantine oder p=reject — sonst ignoriert jeder BIMI-fähige Empfänger (Gmail, Apple Mail, Yahoo, GMX, WEB.DE, Fastmail, AOL) den Record kommentarlos. Cloudflare DNS hostet zwar den DMARC-TXT-Record (_dmarc), die Enforcement-Verantwortung liegt aber beim Mail-Backend hinter dem MX. Prüfen Sie zuerst DMARC-Status und Stack-Pattern.
# DMARC-Status für Domain mit Cloudflare-DNS-Hosting prüfen
dig TXT _dmarc.ihre-domain.de +short
# Erwartet: "v=DMARC1; p=quarantine; rua=mailto:..." oder p=reject
# Bei p=none: BIMI bleibt wirkungslos.
# Cloudflare-NS-Pattern (Stack-Detection)
dig NS ihre-domain.de +short
# Erwartet: zwei *.ns.cloudflare.com (zufaellig zugewiesen, z.B.
# "alex.ns.cloudflare.com." + "kate.ns.cloudflare.com.")
# Wo liegt der Mailserver? (DMARC-Verantwortung)
dig MX ihre-domain.de +short
# Cloudflare Email Routing: route1-3.mx.cloudflare.net
# Microsoft 365: .mail.protection.outlook.com
# Google Workspace: smtp.google.com
# Eigener Mailcow/Postfix: mail.ihre-domain.de Bei Microsoft 365 verwaltet Exchange Online die SPF-/DKIM-/DMARC-Auswertung am eingehenden Edge — bei Google Workspace übernimmt Gmail Receiving das. Bei Mailcow oder Postfix auf einem eigenen Hetzner/Netcup-Server konfigurieren Sie OpenDMARC oder Rspamd. Cloudflare Email Routing ist ein reiner Forward-Service — die DMARC-Auswertung erfolgt im Ziel-Postfach (z.B. Gmail-Konto oder eigener IMAP-Server). In allen Fällen ist die DMARC-Policy p=quarantine oder p=reject Pflicht für BIMI-Anzeige.
SVG Tiny PS Logo auf eigenem Webspace oder CDN hosten
Cloudflare DNS hostet keinen statischen Webserver — das SVG-Logo (SVG Tiny Portable/Secure, baseProfile=tiny-ps, quadratischer viewBox, deckender Hintergrund, keine animate/script/externe Referenzen) muss separat gehostet werden. Empfohlene Optionen im Cloudflare-Ökosystem: Cloudflare Pages (kostenlos, automatisches HTTPS, Custom Domain), Cloudflare R2 (S3-kompatibler Object Storage mit Public Bucket und Custom-Domain-Binding) oder Cloudflare Workers (Edge-Function mit direkter SVG-Response). Außerhalb von Cloudflare funktionieren Bunny.net, eigener IONOS/Hetzner-Webspace oder ein Azure Blob Storage mit Custom-Domain-Mapping ebenso — wichtig ist HTTPS mit gültigem TLS-Zertifikat und Content-Type image/svg+xml.
Wenn das SVG ohnehin in einem Worker-Repository liegt (z.B. zusammen mit dem VMC-PEM für CI/CD), kann ein Cloudflare Worker das SVG direkt mit korrektem Content-Type: image/svg+xml und Cache-Control: public, max-age=86400 an die BIMI-l-URL ausliefern. Vorteil: keine Bucket-/Pages-Konfiguration nötig, alles über Wrangler deploybar. Beispiel-Worker-Logik: bei GET-Request auf /bimi/logo.svg liest der Worker das SVG aus einem KV-Namespace oder R2-Bucket und gibt es mit dem korrekten Header-Set zurück. Wichtig: Cloudflare Workers haben einen Cache, der nach Logo-Rotation explizit per Purge-Endpunkt invalidiert werden muss.
Das VMC-Zertifikat im PEM-Format (.pem) muss öffentlich ohne Authentifizierung von DigiCert-/Sectigo-/GlobalSign-validierenden Empfänger-Mailservern erreichbar sein. Wenn Cloudflare Access oder Bot Management aktiviert ist, schließen Sie die /bimi/*-Pfade explizit von Access-Policies und JS-Challenges aus — sonst sieht der Gmail-Receiver einen HTML-Login-Screen statt der PEM-Datei und ignoriert den BIMI-Record.
BIMI-Record im Cloudflare Dashboard anlegen
Im Cloudflare-Dashboard navigieren Sie zu Websites → (Zone auswählen) → DNS → Records → Add record. Type: TXT, Name: default._bimi (Cloudflare ergänzt automatisch den Zone-Apex zu default._bimi.ihre-domain.de), Content: der vollständige BIMI-Record-String, Proxy-Status: kein Proxy möglich (TXT-Records sind grundsätzlich „DNS only“), TTL: Auto (Cloudflare-Standard 5 Minuten Edge-TTL und 300s authoritativ) oder manueller Override (60s bis 1h für aktive Rotationen, 3600s für stabile Setups).
; BIMI-Record im Cloudflare Dashboard anlegen
; Dashboard -> DNS -> Records -> Add record
; Type: TXT
; Name: default._bimi
; Content: v=BIMI1; l=https://ihre-domain.de/bimi/logo.svg; a=https://ihre-domain.de/bimi/vmc.pem
; TTL: Auto (Cloudflare-Default 5 Minuten) — oder manueller Override
;
; Cloudflare schreibt im Zone-File:
default._bimi.ihre-domain.de. IN TXT "v=BIMI1; l=https://ihre-domain.de/bimi/logo.svg; a=https://ihre-domain.de/bimi/vmc.pem"
; Variante OHNE VMC (Yahoo/Fastmail/AOL — kein Gmail-Häkchen):
default._bimi.ihre-domain.de. IN TXT "v=BIMI1; l=https://ihre-domain.de/bimi/logo.svg; a="
; CAA-Records für VMC-Issuer (verhindert Mis-Issuance durch andere CAs):
ihre-domain.de. IN CAA 0 issue "digicert.com" ; DigiCert (VMC)
ihre-domain.de. IN CAA 0 issue "sectigo.com" ; Sectigo (VMC)
ihre-domain.de. IN CAA 0 issue "globalsign.com" ; GlobalSign (VMC)
ihre-domain.de. IN CAA 0 issue "letsencrypt.org" ; Let's Encrypt (TLS für Logo-Hosting)
ihre-domain.de. IN CAA 0 iodef "mailto:security@ihre-domain.de" VMC werden ausschließlich von DigiCert, Sectigo und GlobalSign nach den Mark Type Verified Mark Certificate Guidelines des CA/Browser Forum ausgestellt. Wenn Sie CAA-Records am Apex setzen, müssen alle drei VMC-CAs als issue-Tags eingetragen sein, sonst verweigert die Wunsch-CA die VMC-Ausstellung. Zusätzlich brauchen Sie letsencrypt.org (oder eine andere TLS-CA) für das HTTPS-Zertifikat des SVG-/VMC-Hosters. Cloudflare DNS unterstützt CAA-Records nativ im Add-record-Dialog (Type-Dropdown → CAA → Tag → Value).
Wenn Sie Cloudflare Email Routing als Mail-Forward-Service nutzen (MX-Pattern route1-3.mx.cloudflare.net), gilt: Die DMARC-Auswertung erfolgt im Ziel-Postfach (z.B. ihre-marke@gmail.com), nicht bei Cloudflare. SPF muss include:_spf.mx.cloudflare.net enthalten, DKIM signiert Cloudflare automatisch nach Aktivierung. Für BIMI gilt: Der TXT-Record liegt am Apex der eigenen Domain (nicht bei *.mx.cloudflare.net) — die BIMI-Anzeige beim Empfänger funktioniert nur, wenn das Ziel-Postfach (Gmail/Apple/Yahoo) den weitergeleiteten Header-From mit Ihrer Domain verarbeitet und die ursprüngliche DKIM-Signatur intakt bleibt. Cloudflare Email Routing signiert outbound nicht — d.h. wenn Sie über Cloudflare Email Routing als Sender verwenden möchten, brauchen Sie zusätzlich einen externen SMTP-Sender (M365/Google/Mailcow), denn Email Routing leitet nur eingehende Mails weiter.
Cloudflare API und Workers für programmatisches BIMI-Management
Für Multi-Tenant-Setups (Agenturen, MSPs, Plattformen mit vielen Kundendomains) ist das manuelle Anlegen über das Dashboard nicht skalierbar. Die Cloudflare API bietet einen REST-Endpunkt für DNS-Records: POST /zones/{zone_id}/dns_records für Initial-Anlage, PATCH /zones/{zone_id}/dns_records/{record_id} für Logo-/VMC-Rotation, GET /zones/{zone_id}/dns_records?type=TXT&name=default._bimi.ihre-domain.de zum Auslesen der Record-ID. Authentifizierung per API-Token mit den Scopes Zone:Read und DNS:Edit (kein Account-API-Key — Token mit minimalem Scope ist Pflicht).
# BIMI-Record per Cloudflare API anlegen (Initial-Setup)
# Doku: https://developers.cloudflare.com/api/
curl -X POST \
"https://api.cloudflare.com/client/v4/zones/$ZONE_ID/dns_records" \
-H "Authorization: Bearer $CF_API_TOKEN" \
-H "Content-Type: application/json" \
--data '{
"type": "TXT",
"name": "default._bimi",
"content": "v=BIMI1; l=https://ihre-domain.de/bimi/logo.svg; a=https://ihre-domain.de/bimi/vmc.pem",
"ttl": 3600,
"comment": "BIMI v1 — Logo + VMC für Gmail-Häkchen"
}'
# Logo-/VMC-Rotation per PATCH (z.B. nach VMC-Renewal nach 397 Tagen)
curl -X PATCH \
"https://api.cloudflare.com/client/v4/zones/$ZONE_ID/dns_records/$RECORD_ID" \
-H "Authorization: Bearer $CF_API_TOKEN" \
-H "Content-Type: application/json" \
--data '{
"content": "v=BIMI1; l=https://ihre-domain.de/bimi/logo-v2.svg; a=https://ihre-domain.de/bimi/vmc-2027.pem"
}'
# RECORD_ID per GET ermitteln (Filter nach Name)
curl -X GET \
"https://api.cloudflare.com/client/v4/zones/$ZONE_ID/dns_records?type=TXT&name=default._bimi.ihre-domain.de" \
-H "Authorization: Bearer $CF_API_TOKEN"
# DNSSEC-Status (Algorithmus 13 ECDSAP256SHA256) verifizieren
curl -X GET \
"https://api.cloudflare.com/client/v4/zones/$ZONE_ID/dnssec" \
-H "Authorization: Bearer $CF_API_TOKEN"
# Erwartet (Auszug): "algorithm": "13", "digest_type": "2", "status": "active"
Für noch tiefere Automatisierung bieten Cloudflare Workers ein Edge-Programmiermodell: Ein Worker kann bei einem VMC-Renewal-Event (Webhook von DigiCert) automatisch die neue VMC-URL im BIMI-Record per Cloudflare-API-Call patchen, parallel den TLSA-Record am MX-Host aktualisieren und ein Audit-Log in einen Cloudflare-KV-Namespace schreiben. Zusätzlich validieren Sie mit dem Wolf-Agents Email Security Check — dieser erkennt Cloudflare-DNS automatisch über das NS-Pattern *.ns.cloudflare.com, unterscheidet Email Routing (MX route1-3.mx.cloudflare.net) vom externen Mail-Backend, validiert den BIMI-Record gegen Internet-Draft V14, prüft SVG-Tiny-PS-Konformität und VMC-Erreichbarkeit. Das Monitoring überwacht alle 6 Stunden auf BIMI-Drift.
Häufige Fehler bei BIMI über Cloudflare DNS
BIMI-Record mit Proxy „on“ (orange Wolke) gesetzt
Problem: BIMI-Record im Cloudflare-Dashboard angelegt, aber Empfänger zeigt kein Logo. Ursache: TXT-Records lassen sich nicht proxyen — der orange-Proxy-Schalter existiert für TXT nicht. Wenn dagegen der A-/AAAA-Record des SVG-Hosters mit „Proxied“ steht, kann Bot Management oder Cloudflare Access den Gmail-Receiver blockieren und ein HTML-Challenge-Page statt der SVG-Datei zurückgeben. Lösung: A-/AAAA-Record für den SVG-/VMC-Host auf „DNS only“ (graue Wolke) setzen ODER explizite Bot-Management-Ausnahme für /bimi/*-Pfade konfigurieren.
Cloudflare Email Routing als „BIMI-Sender“ missverstanden
Problem: Domain nutzt Cloudflare Email Routing als MX, Marketing-Team versendet aus einem externen Tool, BIMI zeigt sich nicht in Gmail. Ursache: Cloudflare Email Routing ist ein reiner Inbound-Forward-Service, kein Outbound-SMTP — wenn das externe Versende-Tool die DKIM-Signatur nicht mit der Domain alignt, fällt DMARC und damit BIMI durch. Lösung: Outbound-SMTP-Provider (Scaleway TEM, Postmark, Amazon SES) korrekt mit DKIM und SPF in den Cloudflare-DNS einbinden — Cloudflare Email Routing bleibt für Inbound zuständig.
CAA-Records blockieren VMC-Ausstellung
Problem: CAA mit nur letsencrypt.org gesetzt, DigiCert-VMC-Validierung schlägt fehl. Ursache: CAA mit issue-Tag erlaubt nur die explizit gelisteten CAs zur Zertifikatsausstellung. Lösung: Mindestens digicert.com für VMC ergänzen — wenn Sie Sectigo oder GlobalSign als VMC-CA wählen, deren CAA-Identifier zusätzlich eintragen. Das Cloudflare-DNSSEC sichert den CAA-Record zusätzlich vor Manipulation ab.
API-Token mit zu breitem Scope
Problem: CI/CD-Pipeline nutzt Cloudflare-API-Token mit Account-Admin-Rechten für BIMI-Updates. Ursache: Default-Tokens werden oft mit „Edit zone DNS“ plus „All Zones“ konfiguriert. Lösung: Token mit minimalem Scope erstellen: Zone:Read + DNS:Edit, beschränkt auf eine Zone — bei Mandanten-Setups einen Token pro Mandant. Token-Rotation alle 90 Tage automatisieren.
Compliance: NIS2 lit. a + lit. h, BSI TR-03108, DSGVO mit Cloudflare DNS
Eine BIMI-Plus-VMC-Konfiguration über Cloudflare DNS erfüllt zwei NIS2-Buchstaben gleichzeitig: lit. a (Risikoanalyse und Sicherheit für Informationssysteme) durch die visuelle Brand-Identity-Authentifizierung und lit. h (Kryptografie und Verschlüsselung) durch die Kombination aus VMC-X.509-PKI-Logo-Bindung und Cloudflare-DNSSEC mit Algorithmus 13 (ECDSAP256SHA256, „Cloudflare's preferred cipher choice“). Cloudflare ist nach ISO 27001, SOC 2 Type II und PCI DSS zertifiziert und bietet die EU Data Boundary (Frankfurter Datenresidenz für DNS-Logs für EU-Kunden, Rollout seit 2024). Für sensible Branchen (Gesundheit, Justiz, Verteidigung) kann der US-Konzern-Hintergrund ein CLOUD-Act-Risiko darstellen — Alternative ist deSEC (Berlin), Hetzner DNS (DE/FI) oder Hostpoint (CH).
Cloudflare-DNS-BIMI-Compliance-Stack: NIS2 lit. a (Brand-Identity-Authentifizierung) + NIS2 lit. h (VMC-Kryptografie X.509 + DNSSEC ECDSAP256SHA256) + NIS2 lit. c (Global Anycast-Redundanz, BIMI-Selector hochverfügbar) + BSI TR-03108 (DMARC-Enforcement-Voraussetzung) + DSGVO Art. 32 (Phishing-Schutz visuell) + EU Data Boundary 2024. Wolf-Agents-USP: Der Email Security Check erkennt Cloudflare-DNS-Hosting automatisch über das NS-Pattern *.ns.cloudflare.com, unterscheidet Email Routing (MX route1-3.mx.cloudflare.net) vom externen Mail-Backend, validiert die kombinierte DMARC-BIMI-VMC-Kette, prüft SVG-Tiny-PS-Konformität, warnt bei abgelaufenen VMCs (Standardlaufzeit 397 Tage) und korreliert den BIMI-Record mit dem DNSSEC-Status — kein anderer DACH-Scanner deckt diese fünf Cloudflare-spezifischen Drift-Klassen ab. Cross-Verweis: Email-Spoofing und Phishing.
BIMI-Anleitung für weitere Provider:
Wie steht Ihre Domain bei BIMI · Cloudflare DNS?
Prüfen Sie es jetzt — kostenlos, ohne Registrierung, mit 165 Prüfpunkte.