SES Email Receiving not saving to S3 bucket

0

I've followed this instruction set to the letter;

https://repost.aws/knowledge-center/ses-receive-inbound-emails

But the bucket didn't have a test email, so I followed the troubleshooting at;

https://repost.aws/knowledge-center/ses-troubleshoot-inbound-emails

And still no emails. I'm at a lost for what I'm missing here. My domain is hosted through Route 53 and has the MX records, dig confirmed this, although I'm confused as the dig only replies MX for (subdomain)(domain).com and not (domain).com, but sending email to that subdomain.domain from a third party gives a 550 error of no mail server whereas domain.com will eventually return a send failure, but no bounces or failures from SES. The instructional MX value it gives is "10 feedback-smtp.us-east-2.amazonses.com", however on the email receiving help page the value is "inbound-smtp.us-east-2.amazonaws.com". I've put both versions into my MX records to see if either worked, and still nothing. My S3 bucket has the exact configuration the above link provides, and I've triple checked to make sure all the info has been correctly replaced, and it has the SES_SETUP object in it. I have a configuration set for redirects that use the same domain name so emails sent don't show the SES tag. The Email-Forwarding rule has an active status, with no recipient conditions, TLS optional, and the only action being to save to the S3 bucket. Default encryption to the bucket is through S3 managed keys and not KMS. All services are on us-east-2, which I confirmed has email receiving capabilities.

EDIT: I did click "Publish records to DNS" since I'm using route 53 next the custom MAIL FROM domain, and it did it automatically the first time, but didn't seem to work. So after much tinkering, I believe the 'behavior on MX failure' setting was set to default MX, and I couldn't find what the default was. After setting it to reject on MX failure it now shows temporary failed.

Picture of the MX record on route 53

From what you said it seems I need to verify 'subdomain.domain.com' as another verified identity, instead of just 'domain.com', is that right? When verifying a new identity, it forces a subdomain, so the MAIL FROM is always an extra subdomain, and its set to auto publish those records to route 53. With this exact setup it added the setup file to S3 from SES earlier, but it seems due to MX failure behavior change to reject its now failing.

As show in the identity creator if I try to verify 'subdomain.domain.com'

EDIT 2: I misunderstood how subdomains are created in route 53. I wrongly assumed they would be created automatically from the record publishing, but I need to create a second hosted zone, with subdomain.domain.com, and move the MX there record instead of my original hosted zone. After this, I verified that subdomain, without a custom MAIL FROM. Both domains return the proper dig response. The main domain is now showing verified even with reject message behavior. Sending emails to @subdomain.domain.com still fails with a mailbox not found, and sending to just @domain.com has not replied failure yet, but nothing saves to S3 still. Continues to happen if the MX record is moved back to the main domain zone. This is message I usually get when sending to @domain.com after some time;

Response error from gmail, doesn't accept request to connect

1 Answer
0

You say there are no errors - but then go on to say that emails to subdomain.domain.com fail (which makes sense because it doesn't seem as if you have that registered with SES); and emails to domain.com eventually fail. My guess here is that the MX record for domain.com is not set correctly - something you mention but then say that you've fixed.

If emails to domain.com are timing out or failing in some other way then that's why you're not seeing them in S3. Check the MX record and make sure it is configured correctly.

profile pictureAWS
EXPERT
answered 5 months ago
  • Thanks for your response, I've updated my original question with more context. It seems the behavior on MX failure on default may have been masking a bad MX record, but they should auto publish to route 53 based on the initial setup configuration. Note, the one identity in the picture added 'services' in front, originally its just my domain name, and I added 'services' as the subdomain.

You are not logged in. Log in to post an answer.

A good answer clearly answers the question and provides constructive feedback and encourages professional growth in the question asker.

Guidelines for Answering Questions