How to receive email using Amazon SES
I'm new to Amazon Web Services (AWS) and AWS Simple Email Service (SES).
Does AWS SES allow an app to receive emails? I could not find a reference in SES developer guide.
My app requires that received emails for a customer be identified per customer and eventually they will be stored on a database (programatically). Every customer will have an email on the domain hosting the app.
For example say the app is hosted on www.example.com
on AWS. Then customers of this myapp can have emails like: [email protected]
, [email protected]
, [email protected]
like that.
If this is not possible in AWS SES, please suggest on alternatives (for high volume emailing) on how this can be done in AWS environment?
Solution 1:
Amazon's SES is strictly for sending email. If you want to receive email you'd have to setup a mail transport agent (MTA) like Sendmail, Postfix, Qmail, etc on an EC2 server instance and point your DNS MX records to that instance. In which case you'd also likely need to utilize an Elastic IP (EIP) so you have a static IP. Not to mention you might end up with finding the IP address range blocked potentially by certain DNSBLs.
I tend to refrain from receiving email within AWS and have receiving mail servers outside on either dedicated co-located servers or VPSes as they tend to be cheaper and less encumbered.
Solution 2:
Today is your big day! AWS SES now launched Email receiving: https://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email.html
You note, that is not designed to use as personal mailbox. Current setting create perfect platform for automated receiving e-mails. Perfect for automated process of any generated reports (like a bank messages, DMARC reports, electronic invoices, etc.)
For example, here is message as was saved to S3: https://s3-eu-west-1.amazonaws.com/s3.jakub-boucek.cz/temp/lts0ahe3tucqpoii4ji0g0u3u08nrpuk1g0p3bo1 and this is output of notification delivered to my https endpoint: http://pastebin.com/yR3RjjkE
Solution 3:
Update: After I posted this answer Amazon added support for receiving email through SES. It's designed for automated processing and not usable as a typical IMAP mailbox. See https://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email.html for details.
Outdated:
Amazon SES is only for sending email.
(Source: http://aws.amazon.com/ses/)
Amazon Simple Email Service (Amazon SES) is a highly scalable and cost-effective bulk and transactional email-sending service for businesses and developers.
Receiving email is not that hard. Definitely easier than sending email, with all its anti-spam hurdles. How about setting up a Postfix server with virtual users? What kind of volume are you thinking about?
Solution 4:
Amazon SES is only for sending and it never receives mail (just bounces).
You need to verify the sender's mail address to be valid. What email address this will be is up to you. You can have Freemail-Accounts, an account on your mail server on EC2, an account on your mail server in your company or whatever email account you own. But it must be yours.