Gå til innholdet
Yuva

Yuva Email Worker for Cloudflare

Støtte-e-post via Cloudflare.Ingen e-postserver å drifte.

Cloudflare® Email Routing tar imot e-posten til støtteadressene dine, og den åpne Yuva Email Worker leverer hver melding til Yuva, signert. Den havner i den delte innboksen din som en samtale teamet ditt svarer på.

Hva det er

Email Routing foran

Cloudflare Email Routing blir domenets MX og tar imot e-posten. Yuva lytter ikke etter SMTP, så det er ingen e-postserver å installere eller holde oppdatert.

En liten åpen kildekode-Worker

Yuva Email Worker leser den rå meldingen og konvolutten, signerer forespørselen og sender den til Yuva. Parsing, trådsetting og søppelpostavgjørelser blir på serveren.

Ekte samtaler

E-post til en støtteadresse åpner eller fortsetter en samtale i innboksen, og teamet svarer fra samme panel som chat og appmeldinger.

Hvordan en melding kommer fra kunden til teamet ditt

  1. 1En kunde skriver til en av støtteadressene dine, for eksempel support@example.com.
  2. 2Cloudflare Email Routing tar imot meldingen og sender den videre til Yuva Email Worker.
  3. 3Worker signerer den rå meldingen, begge konvoluttadressene og et tidsstempel med HMAC-SHA256 under en hemmelighet du deler med Yuva, og sender dem til /ingress/email på Yuva-serveren din.
  4. 4Yuva sjekker signaturen og at tidsstempelet er innenfor 5 minutter før den leser meldingen. En forespørsel med feil signatur avvises.
  5. 5Yuva finner e-postkanalen for mottakeradressen og setter meldingen i tråd etter In-Reply-To og References i samtalen den tilhører. Alt annet starter en ny samtale. Et svar åpner samtalen igjen.
  6. 6Teamet ditt svarer i panelet. Svaret sendes gjennom e-postkanalens egen SMTP-konto, som Amazon SES, Postmark eller ditt eget relé, fra samme adresse og i samme tråd. Svar går ikke gjennom Worker.

Avvisninger når avsenderen

Når Yuva avviser en melding for godt, for eksempel en ukjent adresse, en blokkert avsender eller en for stor melding, avviser Worker den, og avsenderen får en permanent SMTP-feil med Yuvas begrunnelse.

Hvis Yuva ikke kan nås

Hvis Yuva svarer med en serverfeil, ikke svarer innen 20 sekunder eller ikke kan nås, kan Worker videresende meldingen til en adresse du velger, så lenge du har satt FALLBACK_FORWARD. Adressen må være et verifisert mål i Email Routing. Meldingen kommer da som en vanlig videresending og vises ikke i Yuva. Uten FALLBACK_FORWARD mislykkes leveringen med en feil, og avsenderserveren kan prøve igjen senere.

Sett det opp i noen få trinn

Du trenger en Yuva-server og en Cloudflare-konto som administrerer domenet.

  1. 1

    I Yuva åpner du Innstillinger → innboksen din → Kanaler → E-post og legger til støtteadressen. Sett en hemmelighet på serveren og start den på nytt:

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

    Distribuer Worker til Cloudflare-kontoen din, med samme hemmelighet:

    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-dashbordet åpner du domenet ditt → Email → Email Routing og aktiverer det. Cloudflare legger til sine MX- og SPF-poster.

  4. 4

    Under Routing rules sender du hver støtteadresse til Worker yuva-edge. For en fanger-alt-kanal peker du fanger-alt-regelen til den.

  5. 5

    Send en testmelding og se samtalen dukke opp i panelet.

  6. 6

    Valgfritt: behold e-post under et utfall ved å legge til en reserveadresse i distribusjonskommandoen:

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

Email Routing blir domenets MX, så bruk et domene eller underdomene som ingen annen e-postserver håndterer.

Les oppsettveiledningen →

Ikke bundet til Cloudflare

Worker er én måte å kalle /ingress/email på. Enhver e-postserver eller ethvert relé kan sende rå melding med de samme signerte hodene, og en e-postserver som leverer til en kommando kan sende meldingen videre til yuva ingest-email. Forespørselsformatet er dokumentert i Workers README.

Spørsmål og svar

Må jeg drifte en e-postserver?

Ikke for innkommende e-post. Yuva lytter ikke etter SMTP; Cloudflare Email Routing tar imot e-posten og Worker sender den videre. Svar trenger en SMTP-konto for e-postkanalen, som Amazon SES, Postmark eller ditt eget relé.

Hva skjer når Yuva er nede?

Når FALLBACK_FORWARD er satt, videresendes meldingen i stedet til den adressen. Uten den mislykkes leveringen, og avsenderserveren kan prøve igjen. Meldinger Yuva avviser med vilje, som e-post til en ukjent adresse, avvises og videresendes ikke.

Hvilke domener og adresser kan jeg bruke?

Et hvilket som helst domene du administrerer i Cloudflare, og som ingen annen server håndterer e-post for, fordi Email Routing blir MX-en. Hver e-postkanal har en adresse, eller fanger-alt-adressen *@example.com for alle adresser i domenet som ingen kanal har nøyaktig. En underadresse som support+billing@example.com når kanalen til support@example.com.

Hvor stor kan en melding være?

En melding kan være opptil 25 MiB inkludert vedlegg, som er grensen for Cloudflare Email Routing. Yuva beholder opptil 50 vedlegg per melding, hvert innenfor serverens grense for vedleggsstørrelse (som standard 25 MiB) og de tillatte typene; resten utelater den.

Kan noen forfalske e-post til Yuva-serveren min?

Yuva avviser enhver forespørsel uten gyldig HMAC-signatur eller med et tidsstempel som avviker mer enn 5 minutter, før den leser innholdet. Hold hemmeligheten for deg selv.

Bruker Yuva DMARC-resultatet fra Cloudflare?

Ja, når du setter YUVA_INGRESS_AUTHSERV_ID til mx.cloudflare.net. Yuva leser da DMARC-avgjørelsen som Email Routing legger til. En ny samtale som ikke består DMARC, merkes som søppelpost.

Cloudflare, Cloudflare-logoen og Cloudflare Workers er varemerker og/eller registrerte varemerker som tilhører Cloudflare, Inc. i USA og andre jurisdiksjoner. Yuva er et uavhengig åpen kildekode-prosjekt, verken tilknyttet eller godkjent av Cloudflare.