SMTP 에 대하여 알아보겠습니다.
링크 : https://www.cloudflare.com/ko-kr/learning/email-security/what-is-smtp/
SMTP(Simple Mail Transfer Protocol)
네트워크를 통해 메일을 전송하는 기술 표준입니다.
SMTP는 이메일 클라이언트와 메일 서버 간의 데이터 교환 프로세스를 정의합니다.
SMTP 작동 방식
사용자는 이메일 클라이언트 상호작용 합니다.
이메일 클라이언트
사용자가 엑세스하여 이메일을 전송하는 컴퓨터나 웹 응용 프로그램을 말합니다.
메일 서버는 이메일의 전송, 수신, 전달을 위한 특화된 컴퓨터입니다.
사용자는 메일 서버와 직접 상호 작용하지 않습니다.
1. SMTP 연결 열림
- TCP(전송 제어 프로토콜)을 이용하여 클라이언트와 서버 간 TCP 연결로 시작합니다.
(TCP 참고 글 : https://seoyeome.site/32)
2. 이메일 데이터 전송
- 클라이언트가 이메일 헤더(대상 및 제목 줄 포함), 이메일 본문, 기타 추가 구성 요소로 이루어진 이메일 콘텐츠와 함께 명령을 서버에 보냅니다.
3. 메일 전송 에이전트(MTA)
- 서버가 메일 전송 에이전트(MTA)라는 프로그램을 실행합니다.
MTA는 수신자의 이메일 주소 도메인을 확인하고 발신자와 다를 경우 수신자의 IP 주소를 찾도록 DNS에 쿼리합니다.
4. 연결 닫힘
- 데이터 전송이 완료되면 클라이언트가 서버에 알림을 보내며 서버가 연결을 닫습니다.
클라이언트가 SMTP 연결을 새로 열지 않는 한 서버는 클라이언트로부터 이메일 데이터를 추가로 받지 않습니다.
SMTP 서버란?
SMTP 프로토콜을 사용해 이메일을 전송하고 수신할 수 있는 메일 서버입니다.
이메일 클라이언트는 이메일 전송을 시작할 수 있게 이메일 공급자의 SMTP 서버와 직접 연결합니다.
- 메일 제출 에이전트(MSA) : 이메일 클라이언트로부터 이메일을 수신합니다.
- 메일 전송 에이전트(MTA) : 전달망의 다음 서버로 이메일을 전송합니다.
- 메일 전달 에이전트(MDA) : MTA에서 이메일을 수신해서 수신자의 받은메일함에 보관합니다.
SMTP 사용 포트
- 25를 많이 사용합니다. 이 포트를 악용하여 스팸을 대량 전송하려고 하므로, 현재는 최종 사용자 네트워크의 방화벽에서 이 포트를 차단하는 경우가 많습니다.
- 587 : 이메일 제출용 기본 포트입니다. 이 포트를 통과하는 SMTP 통신은 TLS 암호화를 이용합니다.
- 2525 : SMTP와 공식적으로 연결되어 있지는 않지만, 일부 이메일 서비스에서는 앞의 포트가 차단된 경우 2525 포트로 SMTP 전송이 제공됩니다.
'Network' 카테고리의 다른 글
웹소켓(Web Socket)이란? (3) | 2024.10.21 |
---|---|
[인프런] HTTP 웹 기본 지식 (1) | 2022.12.07 |
MIME(Multipurpose Internet Mail Extensions) 타입 (0) | 2022.10.30 |
REST(Representational State Transfer) API (0) | 2022.09.18 |