Yuva Email Worker a Cloudflare-hez
Támogatási e-mail a Cloudflare-en keresztül.Nincs futtatandó levelezőszerver.
A Cloudflare® Email Routing fogadja a támogatási címeid levelezését, a nyílt forráskódú Yuva Email Worker pedig aláírva adja át az egyes üzeneteket a Yuvának. Megosztott postaládádban beszélgetésként jelenik meg, amelyre a csapatod válaszol.
Mi ez
Elöl az Email Routing
A Cloudflare Email Routing a domained MX-e lesz, és fogadja a leveleket. A Yuva nem figyel SMTP-n, így nincs telepítendő vagy frissen tartandó levelezőszerver.
Egy kicsi, nyílt forráskódú Worker
A Yuva Email Worker beolvassa a nyers üzenetet és a borítékot, aláírja a kérést, és elküldi a Yuvának. Az értelmezés, a szálkezelés és a spamdöntések a szerveren maradnak.
Valódi beszélgetések
A támogatási címre érkező levél megnyit vagy folytat egy beszélgetést a postaládában, és a csapat ugyanabból a panelből válaszol, mint a chatre és az alkalmazásüzenetekre.
Hogyan jut el egy üzenet az ügyféltől a csapatodhoz
- 1Egy ügyfél ír az egyik támogatási címedre, például a support@example.com címre.
- 2A Cloudflare Email Routing fogadja az üzenetet, és átadja a Yuva Email Workernek.
- 3A Worker HMAC-SHA256-tal írja alá a nyers üzenetet, mindkét borítékcímet és egy időbélyeget a Yuvával megosztott titokkal, és elküldi őket a Yuva szervered /ingress/email címére.
- 4A Yuva ellenőrzi az aláírást és azt, hogy az időbélyeg 5 percen belül van, mielőtt elolvassa az üzenetet. A hibás aláírású kérést elutasítja.
- 5A Yuva megkeresi a címzett címéhez tartozó e-mail-csatornát, és az In-Reply-To és a References alapján abba a beszélgetésbe fűzi az üzenetet, amelyhez tartozik. Minden más új beszélgetést indít. A válasz újra megnyitja a beszélgetést.
- 6A csapatod a panelen válaszol. A válasz az e-mail-csatorna saját SMTP-fiókján keresztül megy, például Amazon SES, Postmark vagy a saját relé, ugyanarról a címről és ugyanabban a szálban. A válaszok nem mennek át a Workeren.
Az elutasítások eljutnak a feladóhoz
Amikor a Yuva véglegesen elutasít egy üzenetet, például ismeretlen cím, letiltott feladó vagy túl nagy üzenet miatt, a Worker elutasítja, és a feladó állandó SMTP-hibát kap a Yuva indoklásával.
Ha a Yuva nem érhető el
Ha a Yuva szerverhibával válaszol, 20 másodpercen belül nem válaszol, vagy nem érhető el, a Worker továbbíthatja az üzenetet az általad választott címre, feltéve, hogy beállítod a FALLBACK_FORWARD értéket. Ennek a címnek az Email Routingban ellenőrzött célnak kell lennie. Az üzenet ilyenkor sima továbbításként érkezik meg, és nem jelenik meg a Yuvában. FALLBACK_FORWARD nélkül a kézbesítés hibával meghiúsul, és a küldő szerver később újra próbálkozhat.
Állítsd be néhány lépésben
Szükséged van egy Yuva szerverre és egy Cloudflare-fiókra, amely kezeli a domaint.
- 1
A Yuvában nyisd meg a Beállítások → a postaládád → Csatornák → E-mail menüpontot, és add hozzá a támogatási címet. Állíts be egy titkot a szerveren, és indítsd újra:
YUVA_INGRESS_SECRET=<openssl rand -hex 32> YUVA_INGRESS_AUTHSERV_ID=mx.cloudflare.net
- 2
Telepítsd a Workert a Cloudflare-fiókodba ugyanazzal a titokkal:
cd edge bun install bunx wrangler login bunx wrangler secret put INGRESS_SECRET bunx wrangler deploy --var YUVA_URL:https://support.example.com
- 3
A Cloudflare irányítópultján nyisd meg a domainedet → Email → Email Routing, és kapcsold be. A Cloudflare hozzáadja a saját MX- és SPF-rekordjait.
- 4
A Routing rules alatt irányítsd minden támogatási címet a yuva-edge nevű Workerhez. Gyűjtőcsatornához a gyűjtőszabályt irányítsd rá.
- 5
Küldj egy tesztüzenetet, és nézd, ahogy megjelenik a beszélgetés a panelen.
- 6
Opcionális: őrizd meg a leveleket kiesés idején, ha tartalékcímet adsz a telepítési parancshoz:
bunx wrangler deploy --var YUVA_URL:https://support.example.com --var FALLBACK_FORWARD:you@example.org
Az Email Routing a domain MX-e lesz, ezért olyan domaint vagy aldomaint használj, amelyet más levelezőszerver nem kezel.
A beállítási útmutató elolvasása →Nem kötődik a Cloudflare-hez
A Worker egy mód a /ingress/email hívására. Bármely levelezőszerver vagy relé elküldheti a nyers üzenetet ugyanazokkal az aláírt fejlécekkel, a parancsnak kézbesítő levelezőszerver pedig csővezetéken átadhatja az üzenetet a yuva ingest-email parancsnak. A kérés formátuma a Worker README-jében van dokumentálva.
Kérdések és válaszok
Kell futtatnom levelezőszervert?
Nem a bejövő levelekhez. A Yuva nem figyel SMTP-n; a leveleket a Cloudflare Email Routing fogadja, a Worker pedig továbbítja. A válaszokhoz SMTP-fiók kell az e-mail-csatornához, például Amazon SES, Postmark vagy a saját relé.
Mi történik, ha a Yuva nem működik?
Beállított FALLBACK_FORWARD esetén az üzenet helyette erre a címre kerül továbbításra. Nélküle a kézbesítés meghiúsul, és a küldő szerver újra próbálkozhat. Azokat az üzeneteket, amelyeket a Yuva szándékosan elutasít, például az ismeretlen címre küldött leveleket, elutasítja, nem továbbítja.
Milyen domaineket és címeket használhatok?
Bármely, a Cloudflare-ben kezelt domain, amelynek levelezését más szerver nem kezeli, mert az Email Routing lesz az MX-e. Minden e-mail-csatornának van egy címe, vagy a *@example.com gyűjtőcím a domain minden olyan címére, amelyet egyetlen csatorna sem birtokol pontosan. Az olyan alcím, mint a support+billing@example.com, a support@example.com csatornájához jut el.
Mekkora lehet egy üzenet?
Egy üzenet a mellékletekkel együtt legfeljebb 25 MiB lehet, ez a Cloudflare Email Routing korlátja. A Yuva üzenetenként legfeljebb 50 mellékletet tart meg, mindegyiket a szerver mellékletméret-korlátján belül (alapértelmezés szerint 25 MiB) és az engedélyezett típusok közül; a többit kihagyja.
Hamisíthat valaki levelet a Yuva szerveremre?
A Yuva minden olyan kérést elutasít, amelynek nincs érvényes HMAC-aláírása, vagy amelynek időbélyege több mint 5 percet eltér, még a törzs elolvasása előtt. Tartsd magadnál a titkot.
Használja a Yuva a Cloudflare DMARC-eredményét?
Igen, ha a YUVA_INGRESS_AUTHSERV_ID értékét mx.cloudflare.net-re állítod. A Yuva ilyenkor beolvassa a DMARC-ítéletet, amelyet az Email Routing hozzáad. Az az új beszélgetés, amely megbukik a DMARC-on, spamnek lesz jelölve.
A Cloudflare, a Cloudflare logó és a Cloudflare Workers a Cloudflare, Inc. védjegyei és/vagy bejegyzett védjegyei az Egyesült Államokban és más joghatóságokban. A Yuva független, nyílt forráskódú projekt, amely nem áll kapcsolatban a Cloudflare-rel, és azt a Cloudflare nem támogatja.