Cara menerima email menggunakan Amazon SES

18

Saya baru mengenal Amazon Web Services (AWS) dan AWS Simple Email Service (SES).

Apakah AWS SES memungkinkan aplikasi menerima email? Saya tidak dapat menemukan referensi dalam panduan pengembang SES.

Aplikasi saya mengharuskan agar email yang diterima untuk pelanggan diidentifikasi per pelanggan dan akhirnya mereka akan disimpan pada basis data (secara terprogram). Setiap pelanggan akan memiliki email di domain yang menampung aplikasi.

Misalnya, aplikasi dihosting www.example.comdi AWS. Kemudian pelanggan myapp ini dapat memiliki email seperti: [email protected], [email protected], [email protected]seperti itu.

Jika ini tidak memungkinkan di AWS SES, harap sarankan alternatif (untuk email volume tinggi) tentang bagaimana hal ini dapat dilakukan di lingkungan AWS?

java_pill
sumber
Tunggu. Apakah Anda berbicara tentang mengirim atau menerima?
mailq

Jawaban:

9

SES Amazon hanya untuk mengirim email. Jika Anda ingin menerima email, Anda harus mengatur agen transport surat (MTA) seperti Sendmail, Postfix, Qmail, dll pada instance server EC2 dan arahkan catatan DNS MX Anda ke instance tersebut. Dalam hal ini Anda mungkin juga perlu menggunakan Elastic IP (EIP) sehingga Anda memiliki IP statis. Belum lagi Anda mungkin berakhir dengan menemukan rentang alamat IP yang berpotensi diblokir oleh DNSBL tertentu.

Saya cenderung menahan diri untuk tidak menerima email dalam AWS dan telah menerima server surat di luar baik pada server co-located khusus atau VPS karena cenderung lebih murah dan kurang terbebani.

Jeremy Bouse
sumber
22
Ini tidak lagi benar. Pembaruan baru Amazon SES hadir dengan penambahan aturan penerimaan, yang memungkinkan Anda untuk menyimpan email dalam berbagai cara berbeda.
Elegan. Penulisan
1
Itu masih benar, aws.amazon.com/ses (baca dua baris pertama), meskipun SES memiliki kemampuan untuk menerima email menggunakan aturan penerimaan, itu tidak dapat ditetapkan sebagai kotak surat tradisional atau pribadi.
Adnan
41

Hari ini adalah hari besarmu! AWS SES sekarang meluncurkan penerimaan Email: https://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email.html

Anda perhatikan, itu tidak dirancang untuk digunakan sebagai kotak surat pribadi. Pengaturan saat ini menciptakan platform yang sempurna untuk menerima email secara otomatis. Sempurna untuk proses otomatis dari setiap laporan yang dihasilkan (seperti pesan bank, laporan DMARC, faktur elektronik, dll.)

Misalnya, berikut adalah pesan yang disimpan ke S3: https://s3-eu-west-1.amazonaws.com/s3.jakub-boucek.cz/temp/lts0ahe3tucqpoii4ji0g0u3u08nrpuk1g0p3bo1 dan ini adalah output pemberitahuan yang dikirimkan ke titik akhir https saya : http://pastebin.com/yR3RjjkE

JakubBoucek
sumber
1
Temuan yang bagus, Jakub. Saya belum melihat pengumuman tentang ini.
EEAA
1
Saya merasa kompleks untuk mengatur SES. Adakah yang mengidentifikasi tutorial sederhana? Bisakah Gmail dikonfigurasi sebagai klien ke layanan?
blong
Hai @ blong ya, SES sangat kompleks. Tidak dapat menjadikan Gmail (atau penyedia lain) menjadikan sebagai "klien" untuk ini. Ini bukan kotak masuk klasik, SES adalah prosesor mesin untuk surat masuk. Anda dapat menggunakan SES untuk mengarahkan surel ke Gmail. Tapi itu tidak sederhana juga. Lihatlah ke proyek Email Forwarder AWS Lambda SES .
JakubBoucek
Hai @JakubBoucek, terima kasih telah menjawab pertanyaan saya. Sepertinya saya harus mencari pendekatan lain. Inilah sesuatu yang dapat saya pertimbangkan: simplyian.com/2015/01/07/...
blong
1
@ limasxgoesto0 Gunakan parser MIME apa saja, seperti: github.com/nodemailer/mailparser
JakubBoucek
3

Pembaruan: Setelah saya memposting jawaban ini Amazon menambahkan dukungan untuk menerima email melalui SES. Ini dirancang untuk pemrosesan otomatis dan tidak dapat digunakan sebagai kotak surat IMAP biasa. Lihat https://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email.html untuk detailnya.

Usang :

Amazon SES hanya untuk mengirim email.

(Sumber: http://aws.amazon.com/ses/ )

Amazon Simple Email Service (Amazon SES) adalah layanan pengiriman email massal dan transaksional yang sangat skalabel dan hemat biaya untuk bisnis dan pengembang.

Menerima email tidak terlalu sulit. Jelas lebih mudah daripada mengirim email, dengan semua rintangan anti-spamnya. Bagaimana dengan mengatur server Postfix dengan pengguna virtual? Volume apa yang Anda pikirkan?

Martijn Heemels
sumber
2
Jika Anda tidak memilih, saya akan menghargai komentar tentang alasannya. Pada saat jawaban ini ditulis (4 tahun yang lalu) itu tentu tidak salah.
Martijn Heemels
... Anda benar, jawabannya tidak salah pada saat diposting. Tetapi hari ini, informasinya salah. Jadi suara turun bukan tentang Anda, ini tentang informasi. Anda dapat mempertimbangkan suntingan atau pembaruan dengan info yang benar. (hanya saran)
agentv
2

Amazon SES hanya untuk mengirim dan tidak pernah menerima surat (hanya terpental).

Anda perlu memverifikasi alamat email pengirim agar valid. Alamat email apa ini terserah Anda. Anda dapat memiliki Freemail-Accounts, akun di server surat Anda di EC2, akun di server surat Anda di perusahaan Anda atau akun email apa pun yang Anda miliki. Tapi itu harus menjadi milikmu.

mailq
sumber
0

Pendekatan terbaik yang saya temukan adalah menginstal server mail 'dovecot' secara lokal. Setel untuk mendengarkan di 127.0.0.1 dan Maildir:

listen = 127.0.0.1
# mail_location = mbox:~/mail:INBOX=/var/mail/%u # Comment this and add next:
mail_location = maildir:~/Maildir

Kemudian instal s3fs

sudo apt install s3fs
sudo echo "s3fs#mailbox-konkove /home/kes/Maildir/new fuse _netdev,allow_other,profile=mail,uid=1000,gid=1000,use_cache=/tmp/S3,defaults,noatime,endpoint=eu-west-1 0 0" >> /etc/fstab

konfigurasikan AWS CLI

Dan konfigurasikan klien email Anda untuk mendapatkan email dari ~/Maildirmelalui protokol IMAP

Eugen Konkov
sumber