소개
이메일 전송은 현대 비즈니스에 필수적입니다. 안정적이고 보안성이 강화된 SMTP(Simple Mail Transfer Protocol) 서버는 이러한 요구를 충족하는 데 필수적입니다. 이 블로그 글에서는 Amazon Web Services(AWS)를 사용하여 SMTP 서버를 구축하는 방법에 대한 단계별 가이드를 제공합니다.
1단계: EC2 인스턴스 생성
- AWS 콘솔에 로그인합니다.
- EC2 서비스를 엽니다.
- 인스턴스 시작을 클릭합니다.
- Amazon Linux AMI와 같은 Linux 배포판을 선택합니다.
- 필요한 인스턴스 유형을 선택합니다(t2.micro 권장).
- 인스턴스에 보안 그룹을 추가하여 25번 포트(SMTP)의 트래픽을 허용합니다.
2단계: Postfix 설치 및 구성
- 인스턴스에 SSH 연결합니다.
- 다음 명령을 사용하여 Postfix를 설치합니다.
sudo yum install postfix
- Postfix를 시작하고 활성화합니다.
sudo systemctl start postfix
sudo systemctl enable postfix
- Postfix를 편집하고 다음 구성 옵션을 설정합니다(main.cf).
myhostname = <인스턴스의 공개 DNS 이름>
mydomain = <이메일 주소의 도메인 이름>
3단계: DNS 레코드 추가
- AWS Route 53 또는 다른 DNS 공급자를 사용하여 SPF 및 DKIM DNS 레코드를 설정합니다.
- SPF 레코드는 이메일 서버가 해당 도메인에서 이메일을 보낼 수 있음을 확인합니다.
- DKIM 레코드는 전송된 이메일이 위조되지 않았음을 확인합니다.
4단계: SES 연동(선택 사항)
- Amazon SES(Simple Email Service)와 통합하여 확장성과 신뢰성을 향상시킬 수 있습니다.
- SES 콘솔에서 SMTP 자격 증명을 생성합니다.
- Postfix 구성 파일(main.cf)에서 다음 옵션을 설정합니다.
relayhost = [SES SMTP 서버 호스트명]
smtp_sasl_auth_enable = yes
smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd
- 파일 /etc/postfix/sasl_passwd를 생성하고 다음을 추가합니다.
[SES SMTP 서버 호스트명] [SES SMTP 사용자 이름]:[SES SMTP 비밀번호]
5단계: 테스트 및 문제 해결
- telnet 명령을 사용하여 서버와 연결합니다.
telnet [인스턴스의 공개 IP 또는 도메인 이름] 25
- HELO 명령으로 인사합니다. 올바른 환영 메시지가 표시되어야 합니다.
- 이메일 메시지를 보냅니다. 예:
MAIL FROM:<보낸 사람의 이메일 주소>
RCPT TO:<수신자의 이메일 주소>
DATA
...이메일 메시지...
.
결론
이 단계별 가이드를 따라하면 AWS를 사용하여 안정적이고 보안성이 강화된 SMTP 서버를 구축할 수 있습니다. 이 서버를 통해 이메일을 안전하고 효과적으로 전송하여 비즈니스 통신을 향상시킬 수 있습니다.