인터넷 메시지 접속 프로토콜
"오늘의AI위키"의 AI를 통해 더욱 풍부하고 폭넓은 지식 경험을 누리세요.
1. 개요
인터넷 메시지 접속 프로토콜(IMAP)은 원격 메일함에 접근하기 위한 프로토콜로, 1986년 마크 크리스핀에 의해 설계되었다. POP 프로토콜과는 달리, IMAP은 메일함의 내용을 서버에 유지하며, 여러 장치에서 이메일에 접근하고 관리할 수 있도록 설계되었다. IMAP은 IMAP2, IMAP3, IMAP2bis, IMAP4 등 여러 버전을 거쳐 발전했으며, 현재는 IMAP4rev1이 널리 사용된다. IMAP은 보안을 위해 SSL/TLS를 사용하여 암호화된 연결을 지원하며, 다양한 이메일 클라이언트, 서버, 웹메일 서비스에서 활용된다.
더 읽어볼만한 페이지
- 인터넷 메일 프로토콜 - 포스트 오피스 프로토콜
포스트 오피스 프로토콜(POP)은 이메일 클라이언트가 서버에서 이메일을 다운로드하는 데 사용되는 인터넷 프로토콜로, 보안 강화를 위해 SASL 인증, TLS 암호화 등의 방법이 사용되지만 폴더 관리나 메시지 상태 추적 기능은 제한적이다. - 인터넷 메일 프로토콜 - 간이 우편 전송 프로토콜
간이 우편 전송 프로토콜(SMTP)은 이메일 전송에 사용되는 연결 지향적인 텍스트 기반 프로토콜로, ESMTP를 통해 인증, 암호화, 8비트 데이터 전송, UTF-8 지원 등의 기능이 추가되었으며, 스팸 방지 기술과 보안 강화 프로토콜이 적용되어 안전한 이메일 전송을 위해 발전하고 있다.
인터넷 메시지 접속 프로토콜 | |
---|---|
지도 | |
기본 정보 | |
프로토콜 유형 | 응용 계층 프로토콜 |
기능 | 이메일 메시지 접근 및 관리 |
포트 번호 | 143 (암호화되지 않음) 993 (암호화됨, IMAPS) |
상세 정보 | |
개발 | 마크 크리핀 |
최초 개발 년도 | 1986년 |
최신 버전 | 2020년 |
표준 | RFC 9051 |
대안 프로토콜 | POP3 |
기술적 세부 사항 | |
연결 방식 | TCP 기반 연결 지향 |
인증 방식 | 일반 사용자 이름 및 암호 Kerberos 기타 인증 메커니즘 |
주요 기능 | 메시지 상태 확인 (읽음, 안 읽음, 삭제 등) 서버 기반 메시지 관리 폴더 생성 및 관리 여러 장치에서의 동시 접근 |
보안 | |
암호화 | TLS (IMAPS) SSL (IMAPS) |
보안 고려 사항 | 중간자 공격에 취약 (암호화 미사용시) 적절한 인증 및 암호화 중요 |
기타 정보 | |
관련 프로토콜 | SMTP (메일 전송) POP3 (메일 다운로드) |
사용 사례 | 이메일 클라이언트 웹메일 모바일 메일 앱 |
장점 | 서버 기반 메일 관리 여러 클라이언트에서의 동시 접근 용이 메일 삭제 및 관리가 서버에서 가능 |
단점 | 서버 부하 증가 가능성 POP3에 비해 더 많은 네트워크 트래픽 발생 가능성 |
2. 역사
IMAP은 1986년 마크 크리스핀에 의해 원격 접근 메일함 프로토콜로 설계되었다. 이는 메일함 내용을 검색하는 프로토콜인 POP와 대조적이다. POP는 사용자가 이용 중인 서버에서 클라이언트로 이메일을 다운로드하고, 다운로드가 끝난 이메일은 서버에서 삭제하는 것을 표준적인 이용 형태로 한다. 반면 IMAP은 이메일을 이메일 서버에 저장한 채로 관리한다[1] 이러한 특성으로 인해 웹메일이나 여러 대의 컴퓨터에서 동일한 계정의 이메일을 읽는 경우, 이메일의 읽지 않음 상태 등의 속성이나 이메일 폴더의 구성 등을 일원적으로 관리할 수 있는 장점이 있다.
현재 버전 4rev2(IMAP4)가 되기까지 여러 번의 반복 과정을 거쳤다. 초기 IMAP, IMAP2, IMAP3, IMAP2bis 등이 만들어졌고, 현재 IMAP이라고 할 때는 IMAP4를 가리키는 것이 일반적이다. 프로토콜의 사양이 복잡했기 때문에 널리 보급되지 않았지만, 넷스케이프나 인터넷 익스플로러에 기본적으로 포함된 이메일 소프트웨어가 IMAP4를 지원하고, 상호 접속 시험이나 프로토콜의 다양한 개정 및 확장에 의해 상호 운용성이 높아졌기 때문에 이용자가 늘어났다.
2. 1. 초기 IMAP
최초의 ''임시 메일 접근 프로토콜''은 제록스(Xerox) 리스프 머신 클라이언트와 TOPS-20 서버에서 구현되었다.최초의 임시 프로토콜 규격이나 소프트웨어 사본은 현재 남아있지 않다.[7][8] 일부 명령어와 응답은 IMAP2와 유사했지만, 임시 프로토콜은 명령어/응답 태깅이 없어서 다른 모든 버전의 IMAP과 문법적으로 호환되지 않았다.
2. 2. IMAP2
임시 프로토콜은 1988년에 정의되고, 나중에 1990년에 업데이트된 ''대화형 메일 접근 프로토콜''(IMAP2)로 빠르게 대체되었다.[1] IMAP2는 명령/응답 태깅을 도입했으며, 처음으로 공개 배포된 버전이었다.2. 3. IMAP3
IMAP3는 매우 드문 IMAP 변종이다.[16] 1991년 로 발표되었다. 이는 IMAP2에 대한 수정 사항을 제안한 에 대한 대안으로 특별히 작성되었다.[9] IMAP3는 시장에서 결코 받아들여지지 않았다.[10][11] IESG는 1993년 RFC1203 "대화형 메일 접근 프로토콜 – 버전 3"을 역사적인 프로토콜로 재분류했다. IMAP 작업 그룹은 RFC 1203(IMAP3)이 아닌 RFC 1176(IMAP2)을 시작점으로 사용했다.[12][13]2. 4. IMAP2bis
MIME의 등장과 함께 IMAP2는 MIME 본문 구조를 지원하고 IMAP2에 없던 사서함 관리 기능(생성, 삭제, 이름 변경, 메시지 업로드)을 추가하도록 확장되었다. 이 실험적인 개정판은 IMAP2bis라고 불렸으며, 그 사양은 초안이 아닌 형태로 발표된 적이 없다.[14] IMAP2bis의 인터넷 초안은 1993년 10월 IETF IMAP 작업 그룹에 의해 발표되었다. 이 초안은 미발표 ''IMAP2bis.TXT'' 문서, , 그리고 (IMAP2)와 같은 이전 사양을 기반으로 했다.[14] ''IMAP2bis.TXT'' 초안은 1992년 12월 기준으로 IMAP2에 대한 확장의 상태를 문서화했다.[15] 초기 버전의 파인은 IMAP2bis 지원과 함께 널리 배포되었다[16] (파인 4.00 이상은 IMAP4rev1을 지원한다).2. 5. IMAP4
1990년대 초 IETF에 설립된 IMAP 작업반이 IMAP2bis 설계에 대한 책임을 맡았다. IMAP 작업반은 혼란을 피하기 위해 IMAP2bis의 이름을 IMAP4로 변경하기로 결정했다.POP는 사용자가 이용 중인 서버에서 클라이언트로 이메일을 다운로드하고, 다운로드가 끝난 이메일은 서버에서 삭제하는 것을 표준적인 이용 형태로 하는 반면, IMAP은 이메일을 이메일 서버에 저장한 채로 관리한다([1] 참조). 이러한 특성으로 인해 웹메일이나 여러 대의 컴퓨터에서 동일한 계정의 이메일을 읽는 경우, 이메일의 읽지 않음 상태 등의 속성이나 이메일 폴더의 구성 등을 일원적으로 관리할 수 있는 장점이 있다. 원래는 IMAP이 개발되었지만, IMAP2, IMAP3, IMAP2bis 등이 만들어졌고, 현재 IMAP이라고 할 때는 IMAP4를 가리키는 것이 일반적이다. 프로토콜의 사양이 복잡했기 때문에 그다지 널리 보급되지 않았지만, 넷스케이프나 인터넷 익스플로러에 기본적으로 포함된 이메일 소프트웨어가 IMAP4를 지원하고, 또한 상호 접속 시험이나 프로토콜의 다양한 개정 및 확장에 의해 상호 운용성이 높아졌기 때문에 이용자가 늘어났다.
3. POP와의 비교
POP 프로토콜은 상시 접속이 아닌 네트워크 접속에서 유리하며, 사용자는 이메일의 로컬 복사본을 받아 오프라인으로 이메일을 읽을 수 있다. 이메일 폴더는 MUA에 의해 관리되며 프로토콜에는 포함되어 있지 않다. 일반적으로 이메일은 서버에서 가져온 직후 삭제되므로 서버는 읽지 않은 이메일만 보관하면 되어 서버 측 저장 용량을 줄일 수 있다. 하지만 여러 단말기에서 이메일을 가져오면 다른 단말기에서 다운로드한 로컬 복사본에 접근할 수 없고, 이메일을 서버에 저장하는 방법이 없다. 이메일을 가져올 때 이메일의 일부만 가져오는 옵션이 제공된다.
IMAP은 이러한 POP의 장점을 유지하면서 단점을 해결하였다.
3. 1. IMAP의 장점
IMAP은 온라인 및 오프라인에서 모두 사용할 수 있는 프로토콜이다. 오프라인 작업은 MUA(메일 사용자 에이전트) 측에서 트랜잭션 로그로 저장하고, 서버에 연결될 때 커밋하여 반영할 수 있다.[6]일반적으로 이메일은 서버에 항상 저장된다. 로컬 복사본을 가져올 때 서버에서 삭제할 수도 있지만, 기본적으로는 서버 측 저장 용량이 늘어난다.[6]
여러 단말기에서 이메일 상태를 통합 관리할 수 있으며, 여러 단말기에서 같은 이메일을 읽을 수 있다.[6]
이메일 폴더는 프로토콜의 일부로 표준화되어 있어, 이메일 소프트웨어 종류에 관계없이 폴더를 관리할 수 있다.[6]
이메일의 일부만 가져올 수 있다. 예를 들어, 헤더만 가져오거나 멀티파트 메시지 중 텍스트 부분만 가져오는 등의 작업이 가능하다.[6]
이메일을 서버에 저장하는 방법이 있으며, 폴더 전체의 스냅샷을 다른 서버로 전송할 수도 있다.[6]
서버 측에서 메시지 검색을 수행하여 클라이언트 측의 부하를 줄일 수 있다.[6]
IMAP4 이전의 IMAP은 원격 실행으로 인한 프로토콜 복잡성과 보안상 우려가 있었으나, IMAP4에서는 이러한 문제점이 개선되었다. 다만, 이메일 서버는 이메일 원본을 관리해야 하므로, 대규모 시스템에서는 막대한 양의 이메일 관리가 필요하다.[6]
3. 2. IMAP의 단점
IMAP은 POP의 많은 단점을 해결했지만, 추가적인 복잡성을 가지고 있다. 이러한 복잡성의 상당 부분은 서버 측의 메일디르(Maildir)나 데이터베이스 백엔드와 같은 해결 방법으로 보완된다.[17]IMAP 사양은 충분히 엄격하지 않아 유용성을 무효화하는 동작을 허용한다는 비판을 받는다. 예를 들어, 사양에서는 서버에 저장된 각 메시지에 클라이언트가 세션 간에 이미 본 메시지를 식별할 수 있도록 "고유 ID"가 있다고 명시되어 있지만, 이러한 UIDs를 거의 제한 없이 무효화할 수 있도록 허용하여 그 목적을 좌절시킨다.[17]
관리 및 리소스 관점에서 IMAP 프로토콜은 클라우드 컴퓨팅의 초기 구현으로 볼 수 있다. IMAP은 메일 서버에 사서함 구조를 유지하는 반면, POP는 사용자의 로컬 장치에 유지한다. 따라서 IMAP은 훨씬 더 많은 서버 측 리소스를 필요로 하여 사서함당 비용이 상당히 증가한다.
서버의 메일 저장, 색인 생성 및 검색 알고리즘이 신중하게 구현되지 않으면 클라이언트는 대규모 사서함을 검색할 때 엄청난 양의 서버 리소스를 소비할 수 있다.
IMAP4 클라이언트는 새 메일 도착을 알리기 위해 IMAP 서버에 TCP/IP 연결을 유지해야 한다. 메일 도착 알림은 인밴드 시그널링을 통해 이루어지며, 이는 클라이언트 측 IMAP 프로토콜 처리의 복잡성에 기여한다.[18] 푸시 IMAP이라는 비공개 제안은 알림 대신 전체 메시지를 보내 푸시 이메일을 구현하도록 IMAP을 확장했지만, 일반적으로 받아들여지지 않았다.
기본 IMAP 클라이언트를 사용하여 메시지를 보내고 서버 측 폴더에 사본을 저장하려면 메시지 콘텐츠를 두 번 전송해야 한다. 한 번은 SMTP를 통해 배달하고, 두 번째는 IMAP을 통해 보낸 편지함에 저장하기 위해서이다. 이는 IMAP의 URLAUTH 및 CATENATE와 SMTP-SUBMISSION의 BURL을 통해 해결된다. 쿠리어 메일 서버는 전용 보내는 편지함 폴더에 발신 메시지를 복사하여 IMAP을 사용하는 비표준 전송 방법을 제공한다.[19]
4. 보안
IMAP을 사용하는 이메일 클라이언트는 사용자가 명시적으로 삭제하기 전까지 메시지를 서버에 남겨둔다. 이러한 작동 방식 덕분에 여러 클라이언트가 동일한 사서함을 관리할 수 있다. 대부분의 이메일 클라이언트는 메시지를 검색하기 위해 POP 외에도 IMAP을 지원한다.[6] IMAP은 메일 저장소에 대한 접근을 제공하며, 클라이언트는 메시지의 로컬 사본을 저장할 수 있지만 이는 임시 캐시로 간주된다.
클라이언트와 서버 간 IMAP 연결을 암호화하여 보호하기 위해 TCP 포트 993을 사용하는 IMAPS를 사용할 수 있으며, 이는 SSL/TLS를 활용한다.[2][3] 2018년 1월 기준으로 TLS가 권장되는 메커니즘이다.[20]
또는, STARTTLS를 사용하여 처음에 평문을 통해 통신한 후 포트 143에 연결할 때 연결을 암호화할 수도 있다.
5. IMAP의 채용 사례
IMAP을 채용한 대표적인 사례는 다음과 같다.
종류 | 이름 | 개발사 |
---|---|---|
서버 | Courier-IMAP | |
https://www.washington.edu/imap/ UW IMAP | ||
Cyrus IMAP 서버 | ||
Dovecot | ||
클라이언트 | 이메일 | 애플 |
Becky! 인터넷 메일 | ||
유도라 | ||
가우초 인터넷 메일러 | ||
그누스 | ||
뮤 | ||
마이크로소프트 엔투라주 | 마이크로소프트 | |
마이크로소프트 아웃룩 익스프레스 | 마이크로소프트 | |
마이크로소프트 아웃룩 | 마이크로소프트 | |
모질라 썬더버드 | 모질라 | |
멋 | ||
오페라 M2 | ||
슈리켄 Shuriken Pro4 | ||
실피드 | ||
스윗메일 쿠로 | ||
스윗메일 나메라 | ||
웹메일 클라이언트 | 라운드큐브 | |
스쿼럴메일 | ||
서비스 | 모바일미 | 애플 |
AIM 메일 | AOL | |
지메일 | 구글 | |
아웃룩닷컴 | 마이크로소프트 |
5. 1. 서버
- Courier-IMAP
- https://www.washington.edu/imap/ UW IMAP
- Cyrus IMAP 서버
- Dovecot
5. 2. 클라이언트
IMAP을 사용하는 이메일 클라이언트는 일반적으로 사용자가 명시적으로 삭제하기 전까지 메시지를 서버에 남겨둔다. 이러한 IMAP 동작의 특성으로 여러 클라이언트가 동일한 사서함을 관리할 수 있다. 대부분의 이메일 클라이언트는 메시지를 검색하기 위해 POP 외에도 IMAP을 지원한다.[6] IMAP은 메일 저장소에 대한 접근을 제공한다. 클라이언트는 메시지의 로컬 사본을 저장할 수 있지만, 이는 임시 캐시로 간주된다.IMAP를 지원하는 대표적인 이메일 클라이언트는 다음과 같다.
클라이언트 이름 | 개발사 |
---|---|
이메일 | 애플 |
Becky! 인터넷 메일 | |
유도라 | |
가우초 인터넷 메일러 | |
그누스 | |
뮤 | |
마이크로소프트 엔투라주 | 마이크로소프트 |
마이크로소프트 아웃룩 익스프레스 | 마이크로소프트 |
마이크로소프트 아웃룩 | 마이크로소프트 |
모질라 썬더버드 | 모질라 |
멋 | |
오페라 M2 | |
슈리켄 Shuriken Pro4 | |
실피드 | |
스윗메일 쿠로 | |
스윗메일 나메라 | |
윈비프 | |
완더러스트 | |
슈마루 메일 |
5. 3. 웹메일 클라이언트
웹메일 클라이언트에는 다음이 포함된다.- 라운드큐브
- 스쿼럴메일
5. 4. 서비스
6. RFC
참조
[1]
서적
Network+ Guide to Networks
https://books.google[...]
Delmar
2020-12-25
[2]
서적
Open Source E-mail Security
https://books.google[...]
Sams Publishing
2020-12-25
[3]
서적
Practical UNIX and Internet Security
https://books.google[...]
"O'Reilly Media, Inc."
2020-12-25
[4]
서적
Red Hat Linux System Administration Handbook
Prentice Hall
[5]
문서
Microsoft's Outlook client uses MAPI, a Microsoft proprietary protocol, to communicate with a Microsoft Exchange Server. IBM's Notes client works in a similar fashion when communicating with a IBM Lotus Domino server.
[6]
서적
Managing IMAP
O'Reilly
[7]
메일링리스트
Re: [imap5] Designing a new replacement protocol for IMAP
http://www.ietf.org/[...]
2012-02-13
[8]
웹사이트
Service Name and Transport Protocol Port Number Registry
https://www.iana.org[...]
Iana.org
2013-07-17
[9]
웹사이트
Interactive Mail Access Protocol – Version 3
http://tools.ietf.or[...]
IETF
2010-08-21
[10]
웹사이트
IMAP2, IMAP2bis, IMAP3, IMAP4, IMAP4rev1 (LAN Mail Protocols)
http://stason.org/TU[...]
2010-08-21
[11]
웹사이트
IMAP Overview, History, Versions and Standards
http://www.tcpipguid[...]
2010-08-21
[12]
웹사이트
Protocol Action: Interactive Mail Access Protocol — Version 3 to Historic (IETF mail archive)
http://www.ietf.org/[...]
2010-08-21
[13]
웹사이트
Innosoft and POP/IMAP protocols? (mail archive)
http://www.pmdf.proc[...]
2010-08-21
[14]
웹사이트
Interactive Mail Access Protocol – Version 2bis (internet draft)
http://tools.ietf.or[...]
IETF
2010-08-21
[15]
웹사이트
IMAP2BIS – Extensions to the IMAP2 protocol (draft)
https://web.archive.[...]
2010-08-21
[16]
웹사이트
RFC 2061 – IMAP4 compatibility with IMAP2BIS
http://tools.ietf.or[...]
IETF
2010-08-21
[17]
웹사이트
IMAP implementation in Sup, an e-mail client written in Ruby
https://web.archive.[...]
rubyforge.com
2011-02-22
[18]
웹사이트
IMAP IDLE: The best approach for 'push' e-mail
http://www.isode.com[...]
Isode.com
2009-07-30
[19]
웹사이트
Courier-IMAP: Sending mail via an IMAP connection
http://www.courier-m[...]
Double Precision, Inc
2013-09-24
[20]
IETF
[21]
웹사이트
IMAP(アイ マップ)とは? 意味や使い方 - コトバンク
https://kotobank.jp/[...]
コトバンク
2023-08-20
[22]
웹사이트
IMAPとは (Internet Message Access Protocol) アイマップ: - IT用語辞典バイナリ
https://www.sophia-i[...]
IT用語辞典バイナリ
2023-08-20
[23]
웹사이트
IMAPとは - 意味をわかりやすく - IT用語辞典 e-Words
https://e-words.jp/w[...]
IT用語辞典 e-words
2023-08-20
[24]
웹사이트
IMAP とは? - @IT
https://atmarkit.itm[...]
ITmedia
2023-08-20
본 사이트는 AI가 위키백과와 뉴스 기사,정부 간행물,학술 논문등을 바탕으로 정보를 가공하여 제공하는 백과사전형 서비스입니다.
모든 문서는 AI에 의해 자동 생성되며, CC BY-SA 4.0 라이선스에 따라 이용할 수 있습니다.
하지만, 위키백과나 뉴스 기사 자체에 오류, 부정확한 정보, 또는 가짜 뉴스가 포함될 수 있으며, AI는 이러한 내용을 완벽하게 걸러내지 못할 수 있습니다.
따라서 제공되는 정보에 일부 오류나 편향이 있을 수 있으므로, 중요한 정보는 반드시 다른 출처를 통해 교차 검증하시기 바랍니다.
문의하기 : help@durumis.com