Lompat ke konten
Yuva

Yuva Email Worker untuk Cloudflare

Email dukungan lewat Cloudflare.Tidak ada server surat untuk dijalankan.

Cloudflare® Email Routing menerima surat untuk alamat dukungan Anda, dan Yuva Email Worker yang open source menyerahkan setiap pesan ke Yuva, bertanda tangan. Pesan itu masuk ke kotak masuk bersama Anda sebagai percakapan yang dijawab tim Anda.

Apa itu

Email Routing di depan

Cloudflare Email Routing menjadi MX domain Anda dan menerima surat. Yuva tidak mendengarkan SMTP, jadi tidak ada server surat yang perlu dipasang atau dijaga tetap mutakhir.

Worker open source yang kecil

Yuva Email Worker membaca pesan mentah dan amplop, menandatangani permintaan, dan mengirimkannya ke Yuva. Penguraian, pengutasan, dan keputusan spam tetap di server.

Percakapan nyata

Surat ke alamat dukungan membuka atau melanjutkan percakapan di kotak masuk, dan tim menjawab dari panel yang sama dengan obrolan dan pesan aplikasi.

Bagaimana pesan sampai dari pelanggan ke tim Anda

  1. 1Seorang pelanggan menulis ke salah satu alamat dukungan Anda, misalnya support@example.com.
  2. 2Cloudflare Email Routing menerima pesan dan meneruskannya ke Yuva Email Worker.
  3. 3Worker menandatangani pesan mentah, kedua alamat amplop, dan stempel waktu dengan HMAC-SHA256 menggunakan rahasia yang Anda bagikan dengan Yuva, lalu mengirimnya ke /ingress/email di server Yuva Anda.
  4. 4Yuva memeriksa tanda tangan dan bahwa stempel waktu berada dalam 5 menit sebelum membaca pesan. Permintaan dengan tanda tangan yang salah ditolak.
  5. 5Yuva menemukan saluran email untuk alamat penerima dan mengutaskan pesan berdasarkan In-Reply-To dan References ke percakapan tempatnya berada. Yang lain memulai percakapan baru. Balasan membuka kembali percakapan.
  6. 6Tim Anda menjawab di panel. Balasan dikirim lewat akun SMTP milik saluran email itu, seperti Amazon SES, Postmark, atau relay Anda sendiri, dari alamat yang sama dan di utas yang sama. Balasan tidak melewati Worker.

Penolakan sampai ke pengirim

Saat Yuva menolak sebuah pesan secara permanen, misalnya alamat tidak dikenal, pengirim yang diblokir, atau pesan yang terlalu besar, Worker menolaknya dan pengirim mendapat kesalahan SMTP permanen beserta alasan dari Yuva.

Jika Yuva tidak dapat dijangkau

Jika Yuva menjawab dengan kesalahan server, tidak menjawab dalam 20 detik, atau tidak dapat dijangkau, Worker dapat meneruskan pesan ke alamat yang Anda pilih, selama Anda mengatur FALLBACK_FORWARD. Alamat itu harus berupa tujuan terverifikasi di Email Routing. Pesan lalu tiba sebagai penerusan biasa dan tidak muncul di Yuva. Tanpa FALLBACK_FORWARD, pengiriman gagal dengan kesalahan dan server pengirim dapat mencoba lagi nanti.

Siapkan dalam beberapa langkah

Anda memerlukan server Yuva dan akun Cloudflare yang mengelola domain.

  1. 1

    Di Yuva, buka Pengaturan → kotak masuk Anda → Saluran → Email lalu tambahkan alamat dukungan. Atur rahasia di server dan mulai ulang:

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

    Deploy Worker ke akun Cloudflare Anda, dengan rahasia yang sama:

    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

    Di dasbor Cloudflare, buka domain Anda → Email → Email Routing lalu aktifkan. Cloudflare menambahkan rekaman MX dan SPF-nya.

  4. 4

    Di Routing rules, arahkan setiap alamat dukungan ke Worker yuva-edge. Untuk saluran catch-all, arahkan aturan catch-all ke sana.

  5. 5

    Kirim pesan uji dan lihat percakapannya muncul di panel.

  6. 6

    Opsional: simpan surat saat gangguan dengan menambahkan alamat cadangan ke perintah deploy:

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

Email Routing menjadi MX domain, jadi gunakan domain atau subdomain yang tidak ditangani server surat lain.

Baca panduan penyiapan →

Tidak terikat pada Cloudflare

Worker adalah salah satu cara memanggil /ingress/email. Server surat atau relay apa pun dapat mengirim pesan mentah dengan header bertanda tangan yang sama, dan server surat yang mengirim ke sebuah perintah dapat menyalurkan pesan ke yuva ingest-email. Format permintaannya didokumentasikan di README Worker.

Tanya jawab

Apakah saya perlu menjalankan server surat?

Bukan untuk surat masuk. Yuva tidak mendengarkan SMTP; Cloudflare Email Routing menerima surat dan Worker meneruskannya. Balasan memerlukan akun SMTP untuk saluran email, seperti Amazon SES, Postmark, atau relay Anda sendiri.

Apa yang terjadi saat Yuva mati?

Dengan FALLBACK_FORWARD diatur, pesan diteruskan ke alamat itu. Tanpanya pengiriman gagal dan server pengirim dapat mencoba lagi. Pesan yang sengaja ditolak Yuva, seperti surat ke alamat tidak dikenal, ditolak dan tidak diteruskan.

Domain dan alamat apa yang bisa saya gunakan?

Domain apa pun yang Anda kelola di Cloudflare dan yang suratnya tidak ditangani server lain, karena Email Routing menjadi MX-nya. Setiap saluran email punya sebuah alamat, atau catch-all *@example.com untuk setiap alamat domain yang tidak persis dimiliki saluran mana pun. Subalamat seperti support+billing@example.com sampai ke saluran support@example.com.

Seberapa besar sebuah pesan boleh?

Sebuah pesan dapat berukuran hingga 25 MiB termasuk lampiran, yaitu batas Cloudflare Email Routing. Yuva menyimpan hingga 50 lampiran per pesan, masing-masing dalam batas ukuran lampiran server (25 MiB secara bawaan) dan jenis yang diizinkan; sisanya diabaikan.

Bisakah seseorang memalsukan surat ke server Yuva saya?

Yuva menolak setiap permintaan tanpa tanda tangan HMAC yang valid atau dengan stempel waktu yang meleset lebih dari 5 menit, sebelum membaca isinya. Simpan rahasia untuk Anda sendiri.

Apakah Yuva memakai hasil DMARC dari Cloudflare?

Ya, saat Anda mengatur YUVA_INGRESS_AUTHSERV_ID ke mx.cloudflare.net. Yuva lalu membaca vonis DMARC yang ditambahkan Email Routing. Percakapan baru yang gagal DMARC ditandai sebagai spam.

Cloudflare, logo Cloudflare, dan Cloudflare Workers adalah merek dagang dan/atau merek dagang terdaftar dari Cloudflare, Inc. di Amerika Serikat dan yurisdiksi lain. Yuva adalah proyek open source independen, tidak berafiliasi dengan atau didukung oleh Cloudflare.