기술 · 출처 기반 답변
AWS SES 엔드포인트란? 리전별 API 및 SMTP 엔드포인트
AWS SES 엔드포인트는 계정이 호스팅되는 리전과 연결 방식에 따라 달라집니다. API 요청의 엔드포인트는 email.region.amazonaws.com 형식이고, SMTP의 엔드포인트는 email-smtp.region.amazonaws.com 형식입니다. ID를 검증한 리전에 해당하는 엔드포인트를 사용해야 합니다.
API 엔드포인트
AWS SES API 엔드포인트는 리전별로 다릅니다. 예를 들어 SES ID가 US East(N. Virginia)에 설정되어 있다면 엔드포인트는 email.us-east-1.amazonaws.com입니다. US West(Oregon)에 설정되어 있다면 email.us-west-2.amazonaws.com을 사용하세요. 이 엔드포인트는 AWS SDK나 CLI를 통해 ID를 관리하고, 이메일을 발송하고, 수신 규칙을 설정하는 HTTPS 요청에 사용됩니다.
SMTP 엔드포인트
SMTP 엔드포인트는 Simple Mail Transfer Protocol로 메일을 보낼 때 사용합니다. 형식은 email-smtp.region.amazonaws.com입니다. 예를 들어 US East(N. Virginia)의 SMTP 엔드포인트는 email-smtp.us-east-1.amazonaws.com입니다. 이 엔드포인트는 표준 SMTP 인증을 지원하며, 사용하는 TLS 구성에 따라 보통 포트 25, 465 또는 587로 접속합니다.
리전 선택
도메인이나 이메일 주소를 검증하지 않은 리전의 엔드포인트로는 이메일을 보낼 수 없습니다. 다른 리전의 엔드포인트를 사용하려고 하면 API가 InvalidParameterValue 또는 유사한 오류를 반환합니다. 애플리케이션 설정이 SES 프로덕션 액세스 권한을 받은 리전과 일치하는지 항상 확인하세요.
연결 보안
SES 엔드포인트에 연결할 때 AWS는 보안 연결을 요구합니다. SMTP에서는 STARTTLS 또는 암시적 TLS를 사용해야 한다는 뜻입니다. API 호출에는 HTTPS가 필수입니다. 개발자는 SendHQ 무료 도구(https://sendhq.cc/tools)로 SPF, DKIM 같은 DNS 레코드가 SES 설정과 올바르게 정렬되어 있는지 확인해 전달이 이루어지도록 할 수 있습니다.
엔드포인트 문제 해결
연결 타임아웃이 발생하면 네트워크가 선택한 포트의 아웃바운드 트래픽을 허용하는지 확인하세요. 포트 25는 스팸 방지를 위해 클라우드 제공업체가 차단하는 경우가 많습니다. STARTTLS에는 포트 587, 암시적 TLS에는 포트 465를 사용하세요. AWS IAM 자격 증명에 해당 리전 엔드포인트에 대한 ses:SendRawEmail 또는 ses:SendEmail 권한이 있는지 확인하세요.
팀에서 자주 묻는 질문
AWS SES에 글로벌 엔드포인트를 사용할 수 있나요?
아니요. AWS SES는 단일 글로벌 엔드포인트를 제공하지 않습니다. ID가 검증된 리전 엔드포인트를 지정해야 합니다.
SES SMTP 엔드포인트에는 어떤 포트를 사용해야 하나요?
STARTTLS에는 포트 587, 암시적 TLS에는 포트 465를 사용하세요. 포트 25도 사용할 수 있지만 ISP와 클라우드 제공업체에서 자주 차단합니다.
내 SES 리전은 어떻게 확인하나요?
AWS Management Console의 SES 대시보드에서 확인하세요. 리전은 콘솔 오른쪽 상단이나 URL에 표시됩니다.
잘못된 엔드포인트를 사용하면 어떻게 되나요?
요청이 연결에 실패하거나, 해당 리전에서 ID가 검증되지 않았다는 오류를 반환합니다.
1차 출처
- Amazon SES 개발자 가이드 — Amazon Web Services
- 서비스 이름 및 전송 프로토콜 포트 번호 레지스트리 — IANA