Gå til indhold
Yuva

Yuva Email Worker til Cloudflare

Support-e-mail via Cloudflare.Ingen mailserver at køre.

Cloudflare® Email Routing modtager mailen til dine supportadresser, og den open source Yuva Email Worker afleverer hver besked til Yuva, signeret. Den lander i din delte indbakke som en samtale, dit team besvarer.

Hvad det er

Email Routing foran

Cloudflare Email Routing bliver dit domænes MX og modtager mailen. Yuva lytter ikke efter SMTP, så der er ingen mailserver at installere eller holde opdateret.

En lille open source-Worker

Yuva Email Worker læser den rå besked og kuverten, signerer forespørgslen og sender den til Yuva. Parsing, trådning og spamafgørelser bliver på serveren.

Rigtige samtaler

Mail til en supportadresse åbner eller fortsætter en samtale i indbakken, og teamet svarer fra det samme panel som chat og appbeskeder.

Hvordan en besked kommer fra kunden til dit team

  1. 1En kunde skriver til en af dine supportadresser, for eksempel support@example.com.
  2. 2Cloudflare Email Routing modtager beskeden og giver den videre til Yuva Email Worker.
  3. 3Worker signerer den rå besked, begge kuvertadresser og et tidsstempel med HMAC-SHA256 under en hemmelighed, du deler med Yuva, og sender dem til /ingress/email på din Yuva-server.
  4. 4Yuva tjekker signaturen og at tidsstemplet ligger inden for 5 minutter, før den læser beskeden. En forespørgsel med en forkert signatur afvises.
  5. 5Yuva finder e-mailkanalen for modtageradressen og trådsætter beskeden efter In-Reply-To og References i den samtale, den hører til. Alt andet starter en ny samtale. Et svar genåbner samtalen.
  6. 6Dit team svarer i panelet. Svaret sendes gennem e-mailkanalens egen SMTP-konto, såsom Amazon SES, Postmark eller dit eget relay, fra samme adresse og i samme tråd. Svar går ikke gennem Worker.

Afvisninger når afsenderen

Når Yuva afviser en besked endegyldigt, for eksempel en ukendt adresse, en blokeret afsender eller en for stor besked, afviser Worker den, og afsenderen får en permanent SMTP-fejl med Yuvas begrundelse.

Hvis Yuva ikke kan nås

Hvis Yuva svarer med en serverfejl, ikke svarer inden for 20 sekunder eller ikke kan nås, kan Worker videresende beskeden til en adresse, du vælger, så længe du har sat FALLBACK_FORWARD. Adressen skal være en verificeret destination i Email Routing. Beskeden ankommer så som en almindelig videresendelse og vises ikke i Yuva. Uden FALLBACK_FORWARD mislykkes leveringen med en fejl, og den afsendende server kan forsøge igen senere.

Sæt det op i få trin

Du skal bruge en Yuva-server og en Cloudflare-konto, der administrerer domænet.

  1. 1

    I Yuva skal du åbne Indstillinger → din indbakke → Kanaler → E-mail og tilføje supportadressen. Sæt en hemmelighed på serveren, og genstart den:

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

    Udrul Worker på din Cloudflare-konto med den samme hemmelighed:

    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

    I Cloudflare-dashboardet skal du åbne dit domæne → Email → Email Routing og aktivere det. Cloudflare tilføjer sine MX- og SPF-poster.

  4. 4

    Under Routing rules skal du sende hver supportadresse til Worker yuva-edge. For en catch-all-kanal skal du pege catch-all-reglen på den.

  5. 5

    Send en testbesked, og se samtalen dukke op i panelet.

  6. 6

    Valgfrit: behold mail under et udfald ved at tilføje en reserveadresse til udrulningskommandoen:

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

Email Routing bliver domænets MX, så brug et domæne eller underdomæne, som ingen anden mailserver håndterer.

Læs opsætningsvejledningen →

Ikke bundet til Cloudflare

Worker er én måde at kalde /ingress/email på. Enhver mailserver eller ethvert relay kan sende den rå besked med de samme signerede headere, og en mailserver, der afleverer til en kommando, kan sende beskeden videre til yuva ingest-email. Forespørgselsformatet er dokumenteret i Workers README.

Spørgsmål og svar

Skal jeg køre en mailserver?

Ikke til indgående mail. Yuva lytter ikke efter SMTP; Cloudflare Email Routing modtager mailen, og Worker giver den videre. Svar kræver en SMTP-konto til e-mailkanalen, såsom Amazon SES, Postmark eller dit eget relay.

Hvad sker der, når Yuva er nede?

Når FALLBACK_FORWARD er sat, videresendes beskeden i stedet til den adresse. Uden den mislykkes leveringen, og den afsendende server kan forsøge igen. Beskeder, som Yuva afviser med vilje, såsom mail til en ukendt adresse, afvises og videresendes ikke.

Hvilke domæner og adresser kan jeg bruge?

Ethvert domæne, du administrerer i Cloudflare, og hvis mail ingen anden server håndterer, fordi Email Routing bliver dets MX. Hver e-mailkanal har en adresse, eller catch-all-adressen *@example.com for alle domænets adresser, som ingen kanal har præcis. En underadresse som support+billing@example.com når kanalen for support@example.com.

Hvor stor kan en besked være?

En besked kan være op til 25 MiB inklusive vedhæftede filer, hvilket er grænsen for Cloudflare Email Routing. Yuva beholder op til 50 vedhæftede filer pr. besked, hver inden for serverens grænse for størrelse på vedhæftede filer (som standard 25 MiB) og de tilladte typer; resten udelader den.

Kan nogen forfalske mail til min Yuva-server?

Yuva afviser enhver forespørgsel uden en gyldig HMAC-signatur eller med et tidsstempel, der er mere end 5 minutter forskudt, før den læser indholdet. Hold hemmeligheden for dig selv.

Bruger Yuva DMARC-resultatet fra Cloudflare?

Ja, når du sætter YUVA_INGRESS_AUTHSERV_ID til mx.cloudflare.net. Yuva læser så den DMARC-afgørelse, som Email Routing tilføjer. En ny samtale, der ikke består DMARC, markeres som spam.

Cloudflare, Cloudflare-logoet og Cloudflare Workers er varemærker og/eller registrerede varemærker tilhørende Cloudflare, Inc. i USA og andre jurisdiktioner. Yuva er et uafhængigt open source-projekt, der hverken er tilknyttet eller godkendt af Cloudflare.