맨위로가기

포스트 오피스 프로토콜

"오늘의AI위키"는 AI 기술로 일관성 있고 체계적인 최신 지식을 제공하는 혁신 플랫폼입니다.
"오늘의AI위키"의 AI를 통해 더욱 풍부하고 폭넓은 지식 경험을 누리세요.

1. 개요

포스트 오피스 프로토콜(POP)은 사용자 클라이언트 애플리케이션이 인터넷 프로토콜(IP) 네트워크를 통해 메일 서버의 사서함에 접근할 수 있도록 하는 응용 계층 프로토콜이다. POP1, POP2를 거쳐 가장 널리 사용되는 POP3가 RFC 1939에 정의되었으며, 암호화되지 않은 로그인 방식에서 다양한 인증 방법을 지원하도록 발전했다. POP3는 전화 접속 인터넷과 같이 일시적인 연결을 가진 사용자를 위해 설계되었으며, 메시지 목록, 검색, 삭제 기능을 제공한다. IMAP과의 비교를 통해 POP의 특징을 알 수 있으며, TLS를 사용한 암호화 통신과 확장 기능을 통해 보안 및 기능을 강화했다.

더 읽어볼만한 페이지

  • 인터넷 메일 프로토콜 - 인터넷 메시지 접속 프로토콜
    인터넷 메시지 접속 프로토콜(IMAP)은 이메일을 서버에 저장하고 여러 기기에서 동기화하여 접근할 수 있도록 하는 프로토콜로, POP3에 비해 다양한 장점을 가지며 IMAPS와 STARTTLS를 통해 보안 연결을 지원하고 널리 사용된다.
  • 인터넷 메일 프로토콜 - 간이 우편 전송 프로토콜
    간이 우편 전송 프로토콜(SMTP)은 이메일 전송에 사용되는 연결 지향적인 텍스트 기반 프로토콜로, ESMTP를 통해 인증, 암호화, 8비트 데이터 전송, UTF-8 지원 등의 기능이 추가되었으며, 스팸 방지 기술과 보안 강화 프로토콜이 적용되어 안전한 이메일 전송을 위해 발전하고 있다.
포스트 오피스 프로토콜
인터넷 메일 프로토콜
종류SMTP
IMAP
POP
관련 프로토콜TLS/SSL
APOP
포스트 오피스 프로토콜 (POP)
종류응용 계층 프로토콜
기능메일 서버에서 클라이언트로 이메일 검색
포트 번호110 (암호화되지 않음)
995 (암호화됨)
최신 버전POP3
RFCRFC 1939 (POP3)
인터넷 메시지 접속 프로토콜 (IMAP)
종류응용 계층 프로토콜
기능메일 서버에서 메일을 검색하고 관리
포트 번호143 (암호화되지 않음)
993 (암호화됨)
최신 버전IMAP4
RFCRFC 3501 (IMAP4)
간이 우편 전송 프로토콜 (SMTP)
종류응용 계층 프로토콜
기능이메일 전송
포트 번호25 (암호화되지 않음)
465 (암호화됨, 레거시)
587 (암호화됨)
RFCRFC 5321
인증 관련
APOPPOP 인증 확장 프로토콜
RFC 1939에 정의됨

2. 역사

POP1은 RFC 918 (1984)에, POP2는 RFC 937 (1985)에 정의되어 있다. POP3는 원래 RFC 1081 (1988)에 정의되었다가 현재는 확장 기능을 보강한 RFC 1939에 정의되어 있다. 최초의 Post Office Protocol인 POP1은 RFC 918(1984)에서 조이스 K. 레이놀즈에 의해 명시되었다.

가장 일반적으로 사용되는 버전은 POP3이다. RFC 1081(1988)에서 시작되었지만, 가장 최근 명세는 확장 메커니즘(RFC 2449)과 인증 메커니즘(RFC 1734)으로 업데이트된 RFC 1939이다. 이는 Pine, POPmail 및 기타 초기 이메일 클라이언트와 같은 여러 POP 구현으로 이어졌다.

원래 POP3 명세는 암호화되지 않은 USER/PASS 로그인 메커니즘 또는 Berkeley .rhosts 접근 제어만 지원했지만, 오늘날 POP3는 사용자 이메일への 불법 접근에 대한 다양한 수준의 보호를 제공하기 위해 여러 인증 방법을 지원한다. 대부분은 POP3 확장 메커니즘에 의해 제공된다. POP3 클라이언트는 AUTH 확장을 통해 SASL 인증 방법을 지원한다. MIT 아테나 프로젝트는 Kerberized 버전도 제작했다. RFC 1460은 APOP를 코어 프로토콜에 도입했다. APOP는 도전-응답 프로토콜로, 재전송 공격과 공유 비밀의 노출을 피하기 위해 MD5 해시 함수를 사용한다. APOP를 구현하는 클라이언트에는 모질라 썬더버드, 오페라 메일, 유도라, KMail, 노벨 에볼루션, RimArts의 베키!,[3] 윈도우 라이브 메일, PowerMail, 애플 메일, 그리고 Mutt가 포함된다. RFC 1460은 RFC 1725에 의해 폐기되었고, RFC 1725는 다시 RFC 1939에 의해 폐기되었다.

POP4는 IMAP과 경쟁하기 위해 기본적인 폴더 관리, 멀티파트 메시지 지원, 메시지 플래그 관리 기능을 추가하는 비공식 제안으로만 존재한다. 그러나 2003년 이후로 개발이 진행되지 않았다. 현재 두 가지의 알려진 POP4 서버 구현이 있다. 2013년 10월 기준으로 POP4.org 도메인과 웹사이트는 다른 POP4 서버 구현을 운영하는 simbey.com에서 호스팅하고 있다.[4]

3. 목적

우편 프로토콜(POP)은 사용자 클라이언트 애플리케이션이 메일 서버에 유지되는 사서함(maildrop)에 인터넷 프로토콜(IP) 네트워크를 통해 접근할 수 있도록 한다.[2] 이 프로토콜은 메시지에 대한 목록, 검색 및 삭제 작업을 지원한다. POP3 클라이언트는 연결하여 모든 메시지를 검색하고, 클라이언트 컴퓨터에 저장한 다음, 서버에서 삭제한다.[2] POP 및 그 절차의 이러한 설계는 전화 접속과 같이 일시적인 인터넷 연결만을 가지는 사용자의 요구를 충족하기 위한 것이었다. 이를 통해 사용자는 연결 시 이메일을 검색하고, 나중에 오프라인 상태에서 검색된 메시지를 보고 조작할 수 있다.[2]

POP3 클라이언트는 검색 후에도 메일을 서버에 남겨두는 옵션을 가지고 있으며, 이러한 작동 모드에서 클라이언트는 UIDL 명령(고유 ID 목록)을 사용하여 식별된 새 메시지만 다운로드한다. 반대로, 인터넷 메시지 액세스 프로토콜(IMAP)은 여러 클라이언트 애플리케이션으로 관리할 수 있도록, 그리고 연결(온라인) 및 연결 해제(오프라인) 모드 모두를 지원하도록 일반적으로 모든 메시지를 서버에 남겨두도록 설계되었다.

POP3 서버는 서비스 요청을 위해 잘 알려진 포트 번호 110에서 수신 대기한다. POP3의 암호화된 통신은 지원되는 경우 프로토콜 시작 후 STLS 명령을 사용하여 요청하거나, 잘 알려진 TCP 포트 번호 995에서 전송 계층 보안(TLS) 또는 보안 소켓 계층(SSL)을 사용하여 서버에 연결하는 POP3S를 통해 요청한다.

클라이언트가 사용할 수 있는 메시지는 POP3 세션이 사서함을 열 때 결정되며, 해당 세션에 로컬인 메시지 번호 또는 선택적으로 POP 서버가 메시지에 할당한 고유 식별자로 식별된다. 이 고유 식별자는 사서함에 대해 영구적이고 고유하며, 클라이언트가 다른 POP 세션에서 동일한 메시지에 접근할 수 있도록 한다. 메일은 메시지 번호로 검색되고 삭제되도록 표시된다. 클라이언트가 세션을 종료하면 삭제되도록 표시된 메일이 사서함에서 제거된다.

4. 작동 방식

POP3 세션 대화는 RFC 1939에 예시되어 있다.[7]

POP3 서버는 TCP 포트 110에서 연결을 대기한다. 클라이언트가 연결을 열면, 서버는 "+OK" 응답과 함께 준비되었음을 알린다. 이후 클라이언트는 APOP 명령어를 사용하여 사용자 이름과 MD5 해시된 비밀번호를 전송하여 인증을 시도한다. 인증에 성공하면 서버는 "+OK" 응답과 함께 메일함의 메시지 개수와 총 용량을 알린다.

클라이언트는 STAT 명령으로 메일함 상태를 확인하고, LIST 명령으로 각 메시지의 번호와 크기를 확인할 수 있다. RETR 명령으로 특정 메시지를 가져오고, DELE 명령으로 메시지를 삭제한다. 모든 작업을 완료한 후에는 QUIT 명령으로 연결을 종료한다.

선택적인 APOP 명령어를 지원하지 않는 POP3 서버는 클라이언트가 USER 및 PASS 명령어를 사용하여 로그인하도록 한다. 클라이언트는 USER 명령으로 사용자 이름을 보내고, 서버가 "+OK"로 응답하면 PASS 명령으로 비밀번호를 전송한다. 인증에 성공하면 서버는 "+OK" 응답을 보낸다.

5. 사용자 인증 방법

인증 방식으로는 평문 USER/PASS 인증이 널리 사용되고 있다. 서버/클라이언트 양쪽 모두가 지원한다면, APOP 명령어나 확장 기능인 SASL 메커니즘을 이용한 AUTH 명령어 등을 사용하여 인증을 암호화하고, 비밀번호 유출을 방지할 수 있다.

하지만, 이러한 방식을 사용하더라도 인증 부분만 암호화될 뿐, 다른 이메일 헤더나 본문 등의 내용은 평문 그대로이다. 따라서, TLS를 사용하여 모든 것을 암호화하는 것이 권장된다.

6. 암호화

전송 계층 보안(TLS) 또는 보안 소켓 계층(SSL)을 사용하여 통신을 암호화하는 방식으로 POP3S(암시적 TLS)와 STARTTLS가 규정되어 있다. POP3S는 995번 포트를 사용한다. STARTTLS 확장 기능을 사용하면 표준 POP3 포트에서 별도의 포트를 사용하는 대신 ''STARTTLS'' 명령어를 사용하여 TLS 또는 SSL을 협상할 수 있다. 일부 클라이언트와 서버는 TCP 포트 995(POP3S)를 사용하는 대체 포트 방식을 사용한다.

7. 확장 기능

RFC 2449에서는 일반 확장을 수용하고 TOP 및 UIDL과 같은 선택적 명령어 지원을 체계적으로 알리기 위해 확장 메커니즘을 제안했다. 이 RFC는 확장을 장려하려는 의도가 아니었으며, POP3의 역할은 주로 메일함 처리의 다운로드 및 삭제 요구 사항에 대한 간단한 지원을 제공하는 것이라는 점을 재확인했다.[5]

이러한 확장은 기능(capabilities)이라고 하며 CAPA 명령어로 나열된다. APOP를 제외하고 선택적 명령어는 초기 기능 집합에 포함되었다. ESMTP(RFC 5321)의 사례를 따라 X로 시작하는 기능은 로컬 기능을 나타낸다.

STARTTLS 확장 기능을 사용하면 표준 POP3 포트에서 별도의 포트를 사용하는 대신 ''STARTTLS'' 명령어를 사용하여 전송 계층 보안(TLS) 또는 보안 소켓 계층(SSL)을 협상할 수 있다. 일부 클라이언트와 서버는 TCP 포트 995(POP3S)를 사용하는 대체 포트 방식을 사용한다.

데몬 인터넷(Demon Internet)은 도메인당 여러 계정을 허용하는 POP3 확장 기능을 도입했으며, 이는 "표준 전화 접속 POP3 서비스"(SDPS)로 알려지게 되었다. 각 계정에 접근하려면 사용자 이름에 호스트 이름을 포함해야 한다. 예를 들어 "john@hostname" 또는 "john+hostname"과 같다.[5] 구글 앱스(Google Apps)도 같은 방식을 사용한다.[6]

컴퓨팅에서 로컬 이메일 클라이언트는 원격 메일 서버로부터 이메일을 TCP/IP 연결을 통해 가져오기 위해 애플리케이션 계층 인터넷 표준 프로토콜인 '''Kerberized Post Office Protocol'''( '''KPOP''' )을 사용할 수 있다. KPOP 프로토콜은 POP3 프로토콜을 기반으로 하며, Kerberos 보안을 추가하고 기본적으로 TCP 1109번 포트를 사용하는 점(POP3는 110번 포트 사용)이 다르다. 하나의 메일 서버 소프트웨어 구현은 Cyrus IMAP 서버에서 찾을 수 있다.

8. IMAP과의 비교

인터넷 메시지 액세스 프로토콜(IMAP)은 더 최근의 사서함 접근 프로토콜이다. 주요 차이점은 다음과 같다.


  • POP는 더 단순한 프로토콜이므로 구현이 용이하다.
  • POP는 이메일 서버에서 로컬 컴퓨터로 메시지를 이동하지만, 이메일 클라이언트에서 서버에 메시지를 남겨두는 옵션이 일반적으로 있다. IMAP은 기본적으로 메시지를 이메일 서버에 남겨두고 로컬 사본만 다운로드한다.
  • POP는 사서함을 단일 저장소로 취급하며 폴더 개념이 없다.
  • IMAP 클라이언트는 서버에 헤더 또는 지정된 메시지 본문을 요청하거나 특정 조건을 충족하는 메시지를 검색하는 등 복잡한 쿼리를 수행한다. 메일 저장소의 메시지는 다양한 상태 플래그(예: "삭제됨" 또는 "답변됨")로 표시될 수 있으며, 사용자가 명시적으로 제거할 때까지(나중 세션까지도 가능함) 저장소에 남아 있다. IMAP은 원격 사서함을 로컬 사서함처럼 조작할 수 있도록 설계되었다. IMAP 클라이언트 구현 및 시스템 관리자가 원하는 메일 아키텍처에 따라 사용자는 클라이언트 시스템에 메시지를 직접 저장하거나 서버에 저장하거나 또는 두 가지 중 하나를 선택할 수 있다.
  • POP는 사서함의 현재 상태에 대한 ''정적''인 뷰를 제공하며, 세션 ''중''에 상태의 외부 변경 사항을 표시하는 메커니즘을 제공하지 않는다(클라이언트는 업데이트된 뷰를 얻으려면 다시 연결하고 다시 인증해야 함).
  • IMAP은 ''동적'' 뷰를 제공하며, 새로 도착한 메시지뿐만 아니라 다른 동시 연결 클라이언트가 사서함에 대해 수행한 변경 사항을 포함하여 상태의 외부 변경 사항에 대한 응답을 보낸다.
  • POP는 RETR 명령어로 전체 메시지를 검색할 수 있으며, 서버가 지원하는 경우 헤더와 지정된 수의 본문 줄을 TOP 명령어로 액세스할 수 있다.
  • IMAP을 사용하면 클라이언트가 개별 MIME 파트를 별도로 검색할 수 있다. 예를 들어, 첨부 파일을 검색하지 않고 일반 텍스트를 검색하거나 여러 첨부 파일 중 하나만 검색할 수 있다.
  • IMAP은 서버의 플래그를 사용하여 메시지 상태를 추적한다. 예를 들어, 메시지가 읽혔는지, 회신했는지, 전달했는지 또는 삭제했는지 여부를 추적한다.
  • POP는 UIDL 명령어를 지원하는 서버에 대해 각 메시지에 고유 식별자를 연결하는 기능을 제공한다. 이는 최대 70자까지의 표준 가시(공백 아님) 7비트 ASCII 문자의 문자열일 수 있다.
  • IMAP은 대신 각 폴더에 로컬로 각 메시지에 대한 고유한 숫자 식별자를 폴더별 UIDVALIDITY 번호와 함께 제공한다.
  • 위의 두 메시지 식별 방법(POP UIDL 및 IMAP UID)은 두 프로토콜을 모두 지원하는 서버 구현이 IMAP UID 및 UIDVALIDITY 값을 결합하여 POP3 UIDL 문자열을 의도적으로 생성하지 않는 한 전혀 관련이 없다.

9. 관련 RFC

POP1은 RFC 918 (1984)에, POP2는 RFC 937 (1985)에 정의되어 있다. POP3는 원래 RFC 1081 (1988)에 정의되었다가 현재는 확장 기능을 보강한 RFC 1939에 정의되어 있다.


  • RFC 918 – 우편국 프로토콜(POST OFFICE PROTOCOL)
  • RFC 937 – 우편국 프로토콜 버전 2(POST OFFICE PROTOCOL – VERSION 2)
  • RFC 1081 – 우편국 프로토콜 버전 3(Post Office Protocol – Version 3)
  • RFC 1939 – 우편국 프로토콜 버전 3 (STD 53)(Post Office Protocol – Version 3 (STD 53))
  • RFC 1957 – 우편국 프로토콜(POP3) 구현에 대한 몇 가지 관찰(Some Observations on Implementations of the Post Office Protocol (POP3))
  • RFC 2195 – 간단한 인증/응답을 위한 IMAP/POP 인증 확장(IMAP/POP AUTHorize Extension for Simple Challenge/Response)
  • RFC 2384 – POP URL 스키마(POP URL Scheme)
  • RFC 2449 – POP3 확장 메커니즘(POP3 Extension Mechanism)
  • RFC 2595 – IMAP, POP3 및 ACAP과 함께 TLS 사용(Using TLS with IMAP, POP3 and ACAP)
  • RFC 3206 – SYS 및 AUTH POP 응답 코드(The SYS and AUTH POP Response Codes)
  • RFC 5034 – 우편국 프로토콜(POP3) 간단한 인증 및 보안 계층(SASL) 인증 메커니즘(The Post Office Protocol (POP3) Simple Authentication and Security Layer (SASL) Authentication Mechanism)
  • RFC 8314 – 평문은 구식으로 간주됨: 이메일 제출 및 액세스를 위한 전송 계층 보안(TLS) 사용(Cleartext Considered Obsolete: Use of Transport Layer Security (TLS) for Email Submission and Access)

참조

[1] 서적 Network+ Guide to Networks https://books.google[...] Delmar
[2] 서적 Windows to Linux https://books.google[...] Prentice Hall
[3] 웹사이트 Becky! tutorial http://journal.mycom[...] 2001-04-26
[4] 웹사이트 POP4 specification although pop is used to receive mail after system is not online. http://www.pop4.org/[...] 2011-10-17
[5] 웹사이트 Demon Online Help Centre http://e.demon.net/h[...] E.demon.net 2013-07-17
[6] 웹사이트 Google Apps and Gmail differences http://mail.google.c[...]
[7] RFC RFC 1939 https://datatracker.[...]
[8] 웹사이트 POP3(ぽっぷすりー)とは? 意味や使い方 - コトバンク https://kotobank.jp/[...] コトバンク 2023-08-20
[9] 웹사이트 パソコン用語集 POP3 https://www.fmworld.[...] 富士通 2023-08-20
[10] 웹사이트 メールアプリの登録で悩む「POP」と「IMAP」、両者の違いを改めて比較 https://xtech.nikkei[...] 日経XTECH 2023-08-20
[11] 웹사이트 ポップスリー | 現代人のカタカナ語辞典 | 情報・知識&オピニオン imidas - イミダス https://imidas.jp/ka[...] イミダス 2023-08-20
[12] 웹사이트 IPA:APOP方式におけるセキュリティ上の弱点(脆弱性)の注意喚起について https://www.ipa.go.j[...]
[13] 웹사이트 情報処理推進機構:セキュリティセンター:脆弱性関連情報取扱い:脆弱性関連情報の調査結果 JVN#19445002 APOP におけるパスワード漏えいの脆弱性 http://www.ipa.go.jp[...]
[14] JVN APOP におけるパスワード漏えいの脆弱性 2007-04-19



본 사이트는 AI가 위키백과와 뉴스 기사,정부 간행물,학술 논문등을 바탕으로 정보를 가공하여 제공하는 백과사전형 서비스입니다.
모든 문서는 AI에 의해 자동 생성되며, CC BY-SA 4.0 라이선스에 따라 이용할 수 있습니다.
하지만, 위키백과나 뉴스 기사 자체에 오류, 부정확한 정보, 또는 가짜 뉴스가 포함될 수 있으며, AI는 이러한 내용을 완벽하게 걸러내지 못할 수 있습니다.
따라서 제공되는 정보에 일부 오류나 편향이 있을 수 있으므로, 중요한 정보는 반드시 다른 출처를 통해 교차 검증하시기 바랍니다.

문의하기 : help@durumis.com