릴레이 서버 기술적 구조

SMTP 릴레이 프로세스

 
클라이언트 → [SMTP AUTH] → 릴레이 서버 → [DNS MX 조회] → 목적지 서버

릴레이 서버는 다음과 같은 기술적 단계를 거칩니다:

  1. 연결 수락: TCP 25번 포트에서 SMTP 연결 수신
  2. 인증 검증: SMTP AUTH 또는 IP 기반 인증 수행
  3. 메일 큐잉: 전송할 메일을 큐에 저장
  4. DNS 조회: 수신 도메인의 MX 레코드 조회
  5. 전달 시도: 목적지 서버로 SMTP 연결 및 전송
  6. 재시도 관리: 실패 시 백오프 알고리즘으로 재시도

릴레이 인증 메커니즘

SMTP AUTH 방식

  • PLAIN: Base64 인코딩된 사용자명/비밀번호
  • LOGIN: 대화형 인증 방식
  • CRAM-MD5: 챌린지-응답 기반 해시 인증
  • DIGEST-MD5: 더 강화된 다이제스트 인증

IP 기반 릴레이 제어

 
# Postfix 예시
mynetworks = 192.168.1.0/24, 10.0.0.0/8
relay_domains = example.com, partner.com

릴레이 서버 구성 유형

1. 스마트 호스트 릴레이

 
# 모든 외부 메일을 특정 서버로 전송
relayhost = [smtp.isp.com]:587
smtp_sasl_auth_enable = yes
smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd
smtp_use_tls = yes

2. 백업 MX 릴레이

 
# DNS MX 레코드 설정
example.com.    IN MX 10 mail.example.com.
example.com.    IN MX 20 backup.example.com.

3. 멀티 홉 릴레이

 
내부서버 → 경계릴레이 → ISP릴레이 → 목적지

큐 관리 시스템

큐 구조 (Postfix 예시)

  • maildrop: 로컬에서 제출된 메일
  • incoming: 외부에서 수신된 메일
  • active: 현재 처리중인 메일
  • deferred: 전송 실패하여 재시도 대기중인 메일
  • corrupt: 손상된 메일 파일

재시도 알고리즘

 
# 백오프 간격 설정
minimal_backoff_time = 300s
maximal_backoff_time = 4000s
maximal_queue_lifetime = 5d

보안 및 스팸 방지

릴레이 보안 설정

 
# 오픈 릴레이 방지
smtpd_relay_restrictions = 
    permit_mynetworks,
    permit_sasl_authenticated,
    reject_unauth_destination

# 연결 제한
smtpd_client_connection_count_limit = 50
smtpd_client_connection_rate_limit = 30

헤더 검증

 
# 릴레이 시 헤더 추가/수정
smtp_header_checks = regexp:/etc/postfix/header_checks
/^Received:/    PREPEND X-Relay-Server: relay.example.com

성능 최적화

연결 풀링

 
# 동시 연결 수 제한
smtp_destination_concurrency_limit = 20
smtp_destination_rate_delay = 1s

메모리 및 디스크 관리

 
# 큐 파일 관리
queue_file_attribute_count_limit = 100
message_size_limit = 50MB
mailbox_size_limit = 1GB

모니터링 및 로깅

로그 분석 포인트

 
# 릴레이 성공/실패 추적
tail -f /var/log/maillog | grep "relay="
# 큐 상태 모니터링
postqueue -p
# 통계 정보
pflogsumm /var/log/maillog

메트릭 수집

  • 릴레이 처리량 (msgs/min)
  • 큐 크기 및 지연 시간
  • 인증 실패율
  • 대상 서버 응답 시간

고가용성 구성

로드 밸런싱

 
# DNS 라운드 로빈
smtp.example.com.  IN A 192.168.1.10
smtp.example.com.  IN A 192.168.1.11

클러스터링

  • 공유 큐 저장소 (NFS, GlusterFS)
  • 데이터베이스 기반 설정 동기화
  • 장애 감지 및 자동 복구

릴레이 서버는 단순한 전달 기능을 넘어 메일 시스템의 신뢰성, 보안성, 성능을 좌우하는 핵심 구성요소입니다. 적절한 설정과 모니터링을 통해 안정적인 메일 서비스를 제공할 수 있습니다.

+ Recent posts