Naar de inhoud springen
Yuva

Yuva Email Worker voor Cloudflare

Support-e-mail via Cloudflare.Geen mailserver om te draaien.

Cloudflare® Email Routing ontvangt de mail voor je supportadressen en de open-source Yuva Email Worker levert elk bericht ondertekend af bij Yuva. Het komt in je gedeelde inbox terecht als een gesprek waar je team op antwoordt.

Wat het is

Email Routing ervoor

Cloudflare Email Routing wordt de MX van je domein en ontvangt de mail. Yuva luistert niet op SMTP, dus er is geen mailserver om te installeren of bij te houden.

Een kleine open-source Worker

De Yuva Email Worker leest het ruwe bericht en de enveloppe, ondertekent het verzoek en post het naar Yuva. Parsen, threading en spambeslissingen blijven op de server.

Echte gesprekken

Mail naar een supportadres opent of vervolgt een gesprek in de inbox, en het team antwoordt vanuit hetzelfde paneel als bij chat en appberichten.

Hoe een bericht van de klant bij je team komt

  1. 1Een klant schrijft naar een van je supportadressen, bijvoorbeeld support@example.com.
  2. 2Cloudflare Email Routing ontvangt het bericht en geeft het door aan de Yuva Email Worker.
  3. 3De Worker ondertekent het ruwe bericht, beide enveloppe-adressen en een tijdstempel met HMAC-SHA256 onder een geheim dat je met Yuva deelt, en stuurt ze naar /ingress/email op je Yuva-server.
  4. 4Yuva controleert de handtekening en of het tijdstempel binnen 5 minuten valt voordat het het bericht leest. Een verzoek met een onjuiste handtekening wordt geweigerd.
  5. 5Yuva zoekt het e-mailkanaal voor het ontvangeradres en plaatst het bericht via In-Reply-To en References in het gesprek waartoe het behoort. Al het andere start een nieuw gesprek. Een antwoord heropent het gesprek.
  6. 6Je team antwoordt in het paneel. Het antwoord wordt verzonden via het eigen SMTP-account van het e-mailkanaal, zoals Amazon SES, Postmark of je eigen relay, vanaf hetzelfde adres en in dezelfde thread. Antwoorden gaan niet via de Worker.

Weigeringen bereiken de afzender

Als Yuva een bericht definitief weigert, bijvoorbeeld door een onbekend adres, een geblokkeerde afzender of een te groot bericht, weigert de Worker het en krijgt de afzender een permanente SMTP-fout met de reden van Yuva.

Als Yuva onbereikbaar is

Als Yuva met een serverfout antwoordt, niet binnen 20 seconden antwoordt of onbereikbaar is, kan de Worker het bericht doorsturen naar een adres naar keuze, mits je FALLBACK_FORWARD instelt. Dat adres moet een geverifieerde bestemming in Email Routing zijn. Het bericht komt dan aan als een gewone doorgestuurde mail en verschijnt niet in Yuva. Zonder FALLBACK_FORWARD mislukt de bezorging met een fout en kan de verzendende server het later opnieuw proberen.

Stel het in een paar stappen in

Je hebt een Yuva-server nodig en een Cloudflare-account dat het domein beheert.

  1. 1

    Open in Yuva Instellingen → je inbox → Kanalen → E-mail en voeg het supportadres toe. Stel een geheim in op de server en herstart die:

    YUVA_INGRESS_SECRET=<openssl rand -hex 32>
    YUVA_INGRESS_AUTHSERV_ID=mx.cloudflare.net
  2. 2

    Zet de Worker in je Cloudflare-account in, met hetzelfde geheim:

    cd edge
    bun install
    bunx wrangler login
    bunx wrangler secret put INGRESS_SECRET
    bunx wrangler deploy --var YUVA_URL:https://support.example.com
  3. 3

    Open in het Cloudflare-dashboard je domein → Email → Email Routing en schakel het in. Cloudflare voegt zijn MX- en SPF-records toe.

  4. 4

    Stuur onder Routing rules elk supportadres naar de Worker yuva-edge. Laat voor een vangnetkanaal de vangnetregel ernaar verwijzen.

  5. 5

    Stuur een testbericht en zie het gesprek in het paneel verschijnen.

  6. 6

    Optioneel: bewaar mail tijdens een storing door een terugvaladres toe te voegen aan het implementatiecommando:

    bunx wrangler deploy --var YUVA_URL:https://support.example.com --var FALLBACK_FORWARD:you@example.org

Email Routing wordt de MX van het domein, dus gebruik een domein of subdomein dat geen andere mailserver afhandelt.

De installatiehandleiding lezen →

Niet gebonden aan Cloudflare

De Worker is één manier om /ingress/email aan te roepen. Elke mailserver of relay kan het ruwe bericht met dezelfde ondertekende headers posten, en een mailserver die aan een commando levert kan het bericht doorpijpen naar yuva ingest-email. Het verzoekformaat is gedocumenteerd in de README van de Worker.

Vragen en antwoorden

Moet ik een mailserver draaien?

Niet voor inkomende mail. Yuva luistert niet op SMTP; Cloudflare Email Routing ontvangt de mail en de Worker geeft die door. Antwoorden hebben een SMTP-account voor het e-mailkanaal nodig, zoals Amazon SES, Postmark of je eigen relay.

Wat gebeurt er als Yuva uitvalt?

Met FALLBACK_FORWARD ingesteld wordt het bericht in plaats daarvan naar dat adres doorgestuurd. Zonder mislukt de bezorging en kan de verzendende server het opnieuw proberen. Berichten die Yuva met opzet weigert, zoals mail naar een onbekend adres, worden geweigerd, niet doorgestuurd.

Welke domeinen en adressen kan ik gebruiken?

Elk domein dat je in Cloudflare beheert en waarvan geen andere server de mail afhandelt, omdat Email Routing de MX ervan wordt. Elk e-mailkanaal heeft een adres, of het vangnetadres *@example.com voor elk adres van het domein dat geen enkel kanaal precies heeft. Een subadres zoals support+billing@example.com komt aan in het kanaal van support@example.com.

Hoe groot mag een bericht zijn?

Een bericht mag inclusief bijlagen maximaal 25 MiB zijn, de limiet van Cloudflare Email Routing. Yuva bewaart maximaal 50 bijlagen per bericht, elk binnen de maximale bijlagegrootte van de server (standaard 25 MiB) en van een toegestaan type; de rest laat het weg.

Kan iemand mail naar mijn Yuva-server vervalsen?

Yuva weigert elk verzoek zonder geldige HMAC-handtekening of met een tijdstempel dat meer dan 5 minuten afwijkt, voordat het de body leest. Houd het geheim voor jezelf.

Gebruikt Yuva het DMARC-resultaat van Cloudflare?

Ja, als je YUVA_INGRESS_AUTHSERV_ID instelt op mx.cloudflare.net. Yuva leest dan het DMARC-oordeel dat Email Routing toevoegt. Een nieuw gesprek dat DMARC niet haalt, wordt als spam gemarkeerd.

Cloudflare, het Cloudflare-logo en Cloudflare Workers zijn handelsmerken en/of gedeponeerde handelsmerken van Cloudflare, Inc. in de Verenigde Staten en andere rechtsgebieden. Yuva is een onafhankelijk open-sourceproject, niet verbonden aan of goedgekeurd door Cloudflare.