SES email not reaching hotmail users

0

I'm using SES for a tiny charity that I am a member of. We have a "members@..." address for members, and an "info@..." address for external queries. I use a lambda to forward emails to these two addresses on my domain (which is on route 53) to a list of people. Since the start, our members on hotmail only get these emails in the spam folder. I don't have hotmail (and I don't even think you can get one these days), so I can't verify that they've done everything to allow-list the email. But lately, the emails aren't even getting to hotmail. They are bouncing with the following:

..."action":"failed","status":"5.6.0","diagnosticCode":"smtp;550 5.6.0 CAT.InvalidContent.Exception: DataSourceOperationException, proxyAddress: prefix not supported - ; cannot handle content of message with InternalId ...

Does this sound familiar to anyone? Anything I can do?

I have Easy DKIM turned on, and tried adding a custom FROM. I'm using Gmail and the emails arrive fine with all checks seemingly passing. We have members in several email domains, but Hotmail is the only one where I have this issue.

The latest thing I tried was to send a test email (using the send test email button in the console) to a hotmail user and it went through to their inbox, which suggests there might be something wrong with the lambda (for hotmail users only). The lambda rewrites the subject line, adding a [SVP Members] or [SVP Info] to the front of the subject line, for the members or info addresses.

1 Answer
0

Hi,

Actually, in one of my projects I have developed somehow the same logic. I configured SES for sending emails and have used Lambda for sending emails via SES. I have developed the SES configuration in Terraform. I have already checked this solution for sending to Yahoo, Gmail, Hotmail, and some company email addresses.

terraform {
  required_providers {
    aws = {
      source  = "hashicorp/aws"
      version = "~> 4.20.1"
    }
  }
  backend "s3" {
    bucket         = "my-bucket-name"
    key    = "ses/terraform.tfstate"
    region = "my-region"
  }
}

provider "aws" {
  region = "my-region"
}

variable "domainname" {
  type    = string
  default = "my-domain-name.com"
}

data "aws_route53_zone" "default" {
  name         = var.domainname
  private_zone = false
}

resource "aws_ses_domain_identity" "domain" {
  domain = var.domainname
}

#----------------------------------------------------
#         Domain Verification Record
#----------------------------------------------------
resource "aws_route53_record" "example_amazonses_verification_record" {
  zone_id = data.aws_route53_zone.default.zone_id
  name    = "_amazonses.${aws_ses_domain_identity.domain.id}"
  type    = "TXT"
  ttl     = "300"
  records = [aws_ses_domain_identity.domain.verification_token]
}

resource "aws_ses_domain_identity_verification" "example_verification" {
  domain = aws_ses_domain_identity.domain.id

  depends_on = [aws_route53_record.example_amazonses_verification_record]
}

#----------------------------------------------------
#         DKIM Record Set
#----------------------------------------------------
resource "aws_ses_domain_dkim" "example" {
  domain = aws_ses_domain_identity.domain.domain
}

resource "aws_route53_record" "example_amazonses_dkim_record" {
  count   = 3
  zone_id = data.aws_route53_zone.default.zone_id
  name    = "${element(aws_ses_domain_dkim.example.dkim_tokens, count.index)}._domainkey"
  type    = "CNAME"
  ttl     = "300"
  records = ["${element(aws_ses_domain_dkim.example.dkim_tokens, count.index)}.dkim.amazonses.com"]
}
answered a year ago

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