Amazon SES에서 인바운드 이메일이 도착하지 않거나 Amazon S3 버킷에 저장되지 않는 이유는 무엇입니까?

최종 업데이트 날짜: 2020년 6월 11일

인바운드 이메일을 Amazon Simple Storage Service(Amazon S3) 버킷으로 보내는 Amazon Simple Email Service(Amazon SES) 수신 규칙을 설정했습니다. 하지만 인바운드 이메일이 도착하거나 S3 버킷에 저장되지 않습니다. 이 문제를 해결하려면 어떻게 해야 합니까?

해결 방법

인바운드 이메일이 S3 버킷에 저장되지 않는 원인을 찾아서 해결하려면 다음을 확인하십시오.

Amazon SES 도메인 확인

Amazon SES에서 인바운드 이메일을 수신하려면 이메일 도메인의 인증 프로세스를 완료해야 합니다.

Mail Exchange 레코드(MX 레코드)

Amazon SES에서 인바운드 이메일을 수신하려면 도메인의 DNS 설정에서 MX 레코드를 설정하거나 Amazon SES 인바운드 메일 서버로 이메일을 전달하도록 수신 메일 서버를 설정해야 합니다. MX 레코드는 Amazon SES를 사용하는 AWS 리전의 엔드포인트를 참조합니다.

macOS 또는 Linux 운영 체제를 사용하여 레코드가 존재하는지 확인하려면 dig 명령을 실행합니다.

참고: example.com을 자신의 도메인으로 바꿉니다.  

dig MX example.com +short

MX 레코드가 존재하는 경우, 명령이 MX 레코드를 반환합니다.

example.com.           60      IN      MX      10 inbound-smtp.eu-west-1.amazonaws.com

Windows 운영 체제를 사용하여 레코드가 존재하는지 확인하려면 nslookup 명령을 실행합니다.

  1. 명령 프롬프트에서 NSLOOKUP을 입력합니다. 그런 다음, Enter를 누릅니다.
  2. > 프롬프트에서 set type=MX를 입력합니다. 그런 다음, Enter를 누릅니다.
  3. 다음 > 프롬프트에서 자신의 도메인을 입력합니다. 예를 들어 example.com을 입력합니다. 그런 다음, Enter를 누릅니다.

MX 레코드가 존재하는 경우, 명령이 MX 레코드를 반환합니다.

Non-authoritative answer:
example.com    MX preference = 10, mail exchanger = inbound-smtp.eu-west-1.amazonaws.com

수신 규칙 설정

인바운드 이메일을 Amazon S3로 보내는 데 사용하는 수신 규칙이 활성 규칙 세트에 있는지 확인합니다. 이메일에 적용하려면 규칙이 활성 규칙 세트에 있어야 합니다.

또한, Amazon SES 콘솔에서 수신 규칙을 확인하고 다음의 설정을 확인합니다.

  • Enabled: 이 옵션이 선택되었는지 확인합니다. 이메일에 적용하려면 수신 규칙을 활성화해야 합니다.
  • Require TLS: 이 옵션이 선택되었을 경우 Amazon SES가 TLS로 암호화되지 않은 인바운드 이메일을 거부합니다.
  • Recipient: 단일 이메일 자격 증명 또는 이메일 도메인을 입력할 수 있습니다. 또는 모든 인증된 도메인에 규칙을 적용하려면 이 필드를 비워둘 수 있습니다. 단일 이메일 자격 증명을 수신자로 설정할 경우, 자격 증명이 Amazon S3에 저장하려는 이메일을 수신하는지 확인합니다. 다른 자격 증명에서 수신한 이메일은 Amazon S3로 전송되지 않습니다. 수신자를 이메일 도메인 또는 모든 인증된 도메인으로 설정했을 경우, 다른 활성 수신 규칙을 검토하고 규칙이 중복되지 않는지 확인하십시오.
    참고: Amazon SES는 규칙 세트에 구성된 순서대로 수신 규칙을 실행합니다.
  • 객체 키 접두사: 객체 키 접두사를 설정하면 S3 버킷에서 이 접두사를 확인하여 인바운드 이메일을 찾아야 합니다.

S3 버킷 권한

S3 버킷으로 인바운드 이메일을 보내려면 버킷 정책에 필요한 권한을 Amazon SES에 부여해야 합니다.

버킷 정책을 검토하고 Amazon SES에 s3:PutObject를 위한 권한이 있는지 확인하십시오. 또한, 버킷 정책에서 s3:PutObject에 대한 Amazon SES 권한을 명시적으로 거부하는 "Effect": "Deny" 문을 수정합니다.

암호화

AWS Key Management Service(AWS KMS)로 인바운드 이메일을 암호화하려면 Amazon SES 수신 규칙을 생성하는 단계에서 암호화 키를 선택할 수 있습니다. 키 정책에 대한 필수적인 권한을 Amazon SES에 부여해야 합니다.

Amazon SES 이메일 수신을 위한 IP 주소 필터

Amazon SES에 대한 인바운드 이메일의 IP 주소 필터를 설정하려면 인바운드 이메일이 필터에서 허용한 IP 주소에서 전송되었는지 확인하십시오.

이메일 파일 크기

S3 버킷에 인바운드 이메일을 저장하려면 이메일 파일 용량(헤더 포함)이 30MB 이내여야 합니다.