소개

Amazon Simple Email Service(SES)는 개발자가 이메일을 신뢰할 수 있고 저렴하게 보낼 수 있도록 지원하는 클라우드 기반 이메일 전송 서비스입니다. 이 블로그 글에서는 AWS SES를 사용하여 이메일을 전송하는 방법에 대해 단계별 안내를 제공합니다.

필요 사항

시작하기 전에 다음 사항이 필요합니다.

  • AWS 계정
  • 이메일 주소를 확인하는 ID
  • 이메일을 전송할 SMTP 클라이언트(예: nodemailer) 또는 AWS CLI

1단계: SES 활성화

AWS 콘솔에 로그인하고 SES 서비스 활성화로 이동합니다. “지금 시작하기” 버튼을 클릭하여 SES을 활성화합니다.

2단계: 이메일 주소 확인

SES를 활성화한 후에는 이메일 주소를 확인해야 합니다. SES 콘솔에서 “보낸 사람 주소” 탭으로 이동하고 확인하려는 이메일 주소를 추가합니다. 확인 이메일이 수신된 후 클릭하여 주소를 확인합니다.

3단계: SMTP 클라이언트 구성

이메일을 보내려면 SMTP 클라이언트를 구성해야 합니다. SMTP 클라이언트의 설정은 사용하는 클라이언트에 따라 다릅니다. 일반적으로 다음 설정이 필요합니다.

  • SMTP 호스트: email-smtp.us-east-1.amazonaws.com
  • SMTP 포트: 587
  • SMTP 사용자 이름: AWS 액세스 키 ID
  • SMTP 암호: AWS 비밀 액세스 키

4단계: 이메일 전송

SMTP 클라이언트를 구성한 후 이메일을 전송할 수 있습니다. 코드에서 다음과 유사하게 SMTP 클라이언트를 사용하여 이메일을 전송할 수 있습니다.

const nodemailer = require('nodemailer');

// SMTP 클라이언트 생성
const transporter = nodemailer.createTransport({
  host: 'email-smtp.us-east-1.amazonaws.com',
  port: 587,
  secure: false, // TLS 사용
  auth: {
    user: 'AWS_ACCESS_KEY_ID',
    pass: 'AWS_SECRET_ACCESS_KEY'
  }
});

// 이메일 옵션 설정
const mailOptions = {
  from: '보낸 사람 이메일 주소',
  to: '수신자 이메일 주소',
  subject: '이메일 제목',
  text: '이메일 내용'
};

// 이메일 전송
transporter.sendMail(mailOptions, (err, info) => {
  if (err) {
    console.error(err);
  } else {
    console.log('이메일이 성공적으로 전송되었습니다.');
  }
});

AWS CLI를 사용한 이메일 전송

AWS CLI를 사용하여 이메일을 전송하려면 다음 명령을 실행합니다.

aws ses send-email \
--from "보낸 사람 이메일 주소" \
--to "수신자 이메일 주소" \
--subject "이메일 제목" \
--text "이메일 내용"

결론

AWS SES를 사용하여 이메일을 전송하면 신뢰할 수 있고 저렴하게 이메일을 전송할 수 있습니다. 이 단계별 안내를 따르면 이메일 전송을 빠르고 쉽게 시작할 수 있습니다.