Internet Message Access Protocol

Internet Message Access Protocol
Internet Message Access Protocol
Familie: Internetprotokollfamilie
Einsatzgebiet: Lesen und Verwalten von E-Mails
Ports: 143/TCP [1]
993/TCP (nur mit TLS)
IMAP im TCP/IP‑Protokollstapel:
Anwendung IMAP
Transport TCP
Internet IP (IPv4, IPv6)
Netzzugang Ethernet Token
Bus
Token
Ring
FDDI
Standard: RFC 3501

Das Internet Message Access Protocol (IMAP), ursprünglich Interactive Mail Access Protocol, ist ein Netzwerkprotokoll, das ein Netzwerkdateisystem für E-Mails bereitstellt.

IMAP wurde in den 1980er Jahren entworfen, um entstandene Abhängigkeiten von einzelnen Personal Computern aufzulösen.[2] Zu diesem Zweck bietet IMAP über Verfahren wie beim Post Office Protocol hinaus Funktionen, durch die Benutzer Ordnerstrukturen und Einstellungen auf Mailservern speichern können und Clients allenfalls Kopien dessen beherbergen müssen. Während ein Benutzer von POP nach Verlust seines PC entweder alle E-Mails verloren hat oder selbst gelöschte E-Mails nochmals erhält, behält ein Benutzer von IMAP über verschiedenste Geräte einheitlichen Zugriff. Das Simple Mail Access Protocol ist ein Ansatz, die Funktionalität von IMAP mit dem Simple Mail Transfer Protocol zu vereinen, das ansonsten zum Senden von E-Mails erforderlich bleibt.

Inhaltsverzeichnis

Protokolleigenschaften

IMAP ist ein textbasiertes Protokoll zum Zugriff auf E-Mails, die sich auf einem Mailserver befinden. Ein Mail-Client stellt Anfragen an den Server nur nach aktuell benötigten Informationen. Möchte ein Nutzer z. B. den Inhalt eines Ordners sehen, holt sich der Client eine aktuelle Nachrichtenliste des betreffenden Ordners vom Server. Soll der Inhalt einer Mail angezeigt werden, wird dieser vom Server geladen. Da alle Daten weiterhin auf dem Server verbleiben, zeigen – auch bei der Benutzung von mehreren Clients – alle den gleichen, aktuellen Datenbestand einer Mailbox an. Zudem wird eine lokale Speicherung der Daten unnötig und erweiterte Möglichkeiten wie das Durchsuchen von Mails werden serverseitig durchgeführt.

Mit IMAP ist auch der Zugriff auf verschiedene Ordner innerhalb einer Mailbox möglich. Viele Server können eingehende Mails auch direkt in verschiedene Ordner einsortieren (filtern). Durch das Setzen von Zugriffsrechten für Ordner einer Mailbox können auch mehrere Benutzer gleichzeitig auf dieselben Daten zugreifen. Die Erweiterung IMAP IDLE ermöglicht eine sofortige Benachrichtigung an Clients (pushing), wenn eine neue Mail eintrifft. So wird unnötiger Datenverkehr vermieden, der bei ständigen Anfragen (polling) eines Clients anfallen würde. Verfügt man über keine Internetverbindung zu seinem Mailserver, ist i. d. R. auch kein Zugriff mehr auf die Mails möglich. Einige Clients lösen dieses Problem, indem sie lokale Kopien der Mails anlegen, auf die sie im Offline-Modus zurückgreifen können. Bei einer wiederhergestellten Internetverbindung werden die Daten wieder mit dem Mailserver abgeglichen (synchronisiert).

Wegen der zentralen Speicherung der Daten auf einem externen Server muss auch der eigene Datenschutz berücksichtigt werden. Die Verbindung zum Server sollte deshalb verschlüsselt werden.

Beispiel einer IMAP-Sitzung (IMAP4rev1-Beispiel aus RFC 3501, 8. Kapitel – gekürzt):

Client Server Erklärung
* OK IMAP4rev1 Service Ready Server begrüßt den Client
a001 login mrc secret Client meldet sich an
a001 OK LOGIN completed Server bestätigt Anmeldung
a002 select inbox Client wählt inbox als aktiven Ordner
* 18 EXISTS

* FLAGS (\Answered \Flagged \Deleted \Seen \Draft)
* 2 RECENT
* OK [UNSEEN 17] Message 17 is the first unseen message
a002 OK [READ-WRITE] SELECT completed

18 Mails vorhanden

definierte Flags
2 dringliche Mails (z. B. neue Mails)
Mail Nr. 17 ist ungelesen. Alle älteren wurden bereits gelesen.
Client darf Änderungen an Mails durchführen

a003 fetch 12 full Client fordert Infos zu Mail Nr. 12
* 12 FETCH (FLAGS (\Seen)
INTERNALDATE "17-Jul-1996 02:44:25 -0700"
RFC822.SIZE 4286
ENVELOPE ("Wed, 17 Jul 1996 02:23:25 -0700 (PDT)"
"IMAP4rev1 WG mtg summary and minutes"
(("Terry Gray" NIL "gray" "cac.washington.edu"))
(("Terry Gray" NIL "gray" "cac.washington.edu"))
(("Terry Gray" NIL "gray" "cac.washington.edu"))
((NIL NIL "imap" "cac.washington.edu"))
(("John Klensin" NIL "KLENSIN" "MIT.EDU"))
NIL NIL
"<B27397-0100000@cac.washington.edu>")
BODY ("TEXT" "PLAIN" ("CHARSET" "US-ASCII") NIL NIL "7BIT" 302892))

a003 OK FETCH completed

Mail wurde bereits gelesen

am 17. Juli 1996 zugestellt
über 4kB groß
Mail-Header:

Datum
Betreff
Absender (From)
Absender (Sender)
Antwort-an
Empfänger (To)
Kopie-Empfänger (CC)
BCC und In-Reply-To nicht angegeben
Message-ID
a004 fetch 12 body[header] Client möchte alle Header zu Mail Nr. 12
* 12 FETCH (BODY[HEADER] {342}
Date: Wed, 17 Jul 1996 02:23:25 -0700 (PDT)
From: Terry Gray <gray@cac.washington.edu>
Subject: IMAP4rev1 WG mtg summary and minutes
To: imap@cac.washington.edu
cc: minutes@CNRI.Reston.VA.US, John Klensin <KLENSIN@MIT.EDU>
Message-Id: <B27397-0100000@cac.washington.edu>
MIME-Version: 1.0
Content-Type: TEXT/PLAIN; CHARSET=US-ASCII
)

a004 OK FETCH completed

Server sendet geforderte Mailheader
a005 store 12 +flags \deleted Mail Nr. 12 als gelöscht markieren
* 12 FETCH (FLAGS (\Seen \Deleted))

a005 OK +FLAGS completed

a006 logout Client meldet sich ab
* BYE IMAP4rev1 server terminating connection

a006 OK LOGOUT completed

Clients

IMAP wird inzwischen von fast allen gängigen E-Mail-Programmen unterstützt. Allerdings bestehen große Unterschiede im Grad der Unterstützung. Viele Clients unterstützen nur Basisfunktionen für den Nachrichtenabruf (was den meisten Nutzern ausreicht). Nur wenige Programme nutzen den vollen Funktionsumfang, den IMAP-Server bieten. Dazu gehört zum Beispiel die Rechtevergabe zum gemeinsamen Zugriff verschiedener Benutzer auf einen Ordner.

Auswahl von Clients mit erweiterter IMAP-Unterstützung:

Auswahl von Clients mit einfacher IMAP-Unterstützung:

Server

Inzwischen unterstützen viele Mailserver IMAP. Einige Provider unterdrücken jedoch die Funktionalität (oder verlangen ein erhöhtes Entgelt), da hierdurch mehr Daten auf dem Server gespeichert bleiben und auch die durchschnittliche Übertragungsmenge steigt.

UW IMAP war als Proof of Concept des Initiators von IMAP der erste Server für dieses Protokoll.[3] Er bringt auch IMAP-Erweiterungen mit.[4] Die Carnegie Mellon University übernahm solche IMAP-Erweiterungen als undokumentiert in ihren Server Cyrus.[5] Diese Vorgehensweise bei den beiden früh verfügbaren Implementierungen zweier amerikanischer Universitäten bewirkte, dass Konformität und Kompatibilität bei IMAP notorisch strittig ist.

Mit dem Courier Mail Server kam die Abkehr vom mbox-Konzept, das inzwischen als untauglich gilt. Courier speichert die E-Mails nach dem Maildir-Konzept.[6]

Im Unix-Umfeld kommen außer den genannten unter anderem folgende IMAP-Server zum Einsatz:

Auch auf anderen Plattformen und auch im kommerziellen Bereich bieten Messaging-Produkte IMAP-Schnittstellen an.

Darüber hinaus bauen Groupware-Lösungen IMAP fest in ihr Konzept ein:

Vor- und Nachteile

Vorteil Nachteil
  • Nachrichten werden separat auf dem Server gespeichert
  • Schneller erster Zugriff auf den Briefkasten
  • Der Inhalt des Briefkastens ist immer auf dem neusten Stand
  • Für jede ungelesene Nachricht muss eine Verbindung zum Server hergestellt werden
  • Nachrichten sind nicht offline verfügbar, wenn nicht vorher gespeichert wird

Authentifizierung

Der Server kann den Zugriff für nicht-autorisierte Benutzer auf eine Mailbox verweigern. In jedem Fall muss sich der Nutzer authentifizieren, bevor er Zugriff auf Mails erlangen kann. Dies geschieht, indem er sich mit Benutzername und Passwort anmeldet. Das Passwort wird dabei auf IMAP-Protokoll-Ebene im Klartext übertragen. Mailserver können deshalb Clients verbieten, das Passwort zu übertragen, falls zuvor keine verschlüsselte Sitzung aufgebaut wurde.

Alternativ ist auch eine Verwendung von anderen Netzwerkauthentifikationsprotokollen (z. B. GSSAPI, Kerberos) möglich.

Verschlüsselung

Um die Daten während der Übertragung vor Dritten zu schützen, kann die Datenverbindung mittels SSL/TLS verschlüsselt werden. Hierzu existieren zwei unterschiedliche Methoden:

STARTTLS

Nach dem Aufbau einer unverschlüsselten Datenverbindung mit dem Server (Port 143) kann mittels des Kommandos STARTTLS eine verschlüsselte Sitzung initiiert werden, sodass alle nachfolgenden versendeten Daten über diese Verbindung nur noch verschlüsselt übertragen werden. Diese Protokollerweiterung ist in der neusten Protokollspezifikation bereits fest vorgesehen.

IMAPS

IMAPS im TCP/IP‑Protokollstapel:
Anwendung IMAP
Transport SSL/TLS
TCP
Internet IP (IPv4, IPv6)
Netzzugang Ethernet Token
Bus
Token
Ring
FDDI

Bei der Verwendung von IMAPS wird die Verbindung zum Server bereits während des Verbindungsaufbaus durch SSL verschlüsselt. Damit der Server dies erkennt, muss ein anderer Port verwendet werden. Hierfür wurde der Port 993 reserviert.

Nach dem Aufbau der SSL-Verbindung wird mind. IMAPv4 verwendet. Die SSL-Schicht ist für das IMAP-Protokoll transparent, d. h. es werden keine Änderungen am IMAP-Protokoll vorgenommen.

Spezifikationen

Die historische Version 3 von IMAP war noch als experimentell eingestuft.[7] Die experimentelle Version 2 von IMAP war die erste gewesen, deren Spezifikation veröffentlicht wurde.[2]

Die Dokumentation von IMAP setzt sich aus einer Vielzahl von grundlegenden, ergänzenden oder erweiternden RFC zusammen.[8]

  • RFC 1731 – IMAP4 Authentication Mechanisms
  • RFC 1732 – IMAP4 Compatibility With IMAP2 And IMAP2BIS
  • RFC 1733 – Distributed Electronic Mail Models In IMAP4
  • RFC 2061 – IMAP4 Compatibility With IMAP2BIS
  • RFC 2062 – Internet Message Access Protocol – Obsolete Syntax
  • RFC 2087 – IMAP4 QUOTA Extension
  • RFC 2088 – IMAP4 non-synchronizing literals
  • RFC 2177 – IMAP4 IDLE command
  • RFC 2180 – IMAP4 Multi-Accessed Mailbox Practice
  • RFC 2193 – IMAP4 Mailbox Referrals
  • RFC 2195 – IMAP/POP AUTHorize Extension for Simple Challenge/Response
  • RFC 2221 – IMAP4 Login Referrals
  • RFC 2342 – IMAP4 Namespace
  • RFC 2595 – Using TLS with IMAP, POP3 and ACAP
  • RFC 2683 – IMAP4 Implementation Recommendations
  • RFC 2971 – IMAP4 ID Extension
  • RFC 3348 – IMAP4 Child Mailbox Extension
  • RFC 3501 – Internet Message Access Protocol – Version 4rev1
  • RFC 3502 – IMAP MULTIAPPEND Extension
  • RFC 3503 – Message Disposition Notification (MDN)profile for Internet Message Access Protocol (IMAP)
  • RFC 3516 – IMAP4 Binary Content Extension
  • RFC 3656 – The Mailbox Update (MUPDATE)Distributed Mailbox Database Protocol
  • RFC 3691 – IMAP UNSELECT command
  • RFC 4314 – IMAP4 Access Control List (ACL) Extension
  • RFC 4315 – Internet Message Access Protocol (IMAP) – UIDPLUS Extension
  • RFC 4466 – Collected Extensions to IMAP4 ABNF
  • RFC 4467 – Internet Message Access Protocol (IMAP) – URLAUTH Extension
  • RFC 4469 – Internet Message Access Protocol (IMAP) – CATENATE Extension
  • RFC 4549 – Synchronization Operations for Disconnected IMAP4 Clients
  • RFC 4551 – IMAP Extension for Conditional STORE Operation or Quick Flag Changes Resynchronization
  • RFC 4731 – IMAP4 Extension to SEARCH Command for Controlling What Kind of Information Is Returned
  • RFC 4959 – IMAP Extension for Simple Authentication and Security Layer (SASL) Initial Client Response
  • RFC 4978 – The IMAP COMPRESS Extension
  • RFC 5032 – WITHIN Search Extension to the IMAP Protocol
  • RFC 5092 – IMAP URL Scheme
  • RFC 5161 – The IMAP ENABLE Extension
  • RFC 5162 – IMAP4 Extensions for Quick Mailbox Resynchronization
  • RFC 5182 – IMAP Extension for Referencing the Last SEARCH Result

Literatur

Einzelnachweise

  1. http://www.iana.org/assignments/port-numbers
  2. a b RFC 1064 - Interactive Mail Access Protocol: Version 2. Internet Engineering Task Force. Abgerufen am 31. Juli 2011.
  3. P. B. Koetter: UW IMAP, Courier, Cyrus und Dovecot im direkten Vergleich. Linux New Media. Abgerufen am 8. Mai 2011.
  4. M. Crispin (8. Februar 2003): Pine won't search my IMAP mail. Google. Abgerufen am 8. Mai 2011.
  5. Changes to the Cyrus IMAP Server since 2.3.x. Carnegie Mellon University. Abgerufen am 8. Mai 2011.
  6. P. Heinlein, P. Hartleben: The book of IMAP: building a mail server with Courier and Cyrus S. 107. Google. Abgerufen am 8. Mai 2011.
  7. RFC 1203 - Interactive Mail Access Protocol: Version 3. Internet Engineering Task Force. Abgerufen am 31. Juli 2011.
  8. IMAP/POP RFCs. Internet Engineering Task Force. Abgerufen am 31. Juli 2011.

Wikimedia Foundation.

Игры ⚽ Поможем написать реферат

Schlagen Sie auch in anderen Wörterbüchern nach:

  • Internet Message Access Protocol — Fonction Consultation de courriels Sigle IMAP Port 143 (TCP) …   Wikipédia en Français

  • Internet message access protocol — Pile de protocoles 7 • Application 6 • Présentation 5 • Session 4 • …   Wikipédia en Français

  • Internet Message Access Protocol — (IMAP) Familia: Familia de protocolos de Internet Función: acceso a correo electrónico Puertos: 143/TCP 220/TCP (IMAP3) 993/TCP (IMAPS) Ubicación en la pila de protocolos …   Wikipedia Español

  • Internet Message Access Protocol — IMAP redirects here. For the antipsychotic, see Fluspirilene. Internet protocol suite Application layer BGP …   Wikipedia

  • Internet Message Access Protocol — IMAP es un acrónimo inglés de Internet Message Access Protocol. Protocolo de red de acceso a mensajes electrónicos almacenados en un servidor. Mediante IMAP se puede tener acceso al correo electrónico desde cualquier equipo que tenga una conexión …   Enciclopedia Universal

  • Internet Message Access Protocol — IMAP protokolas statusas T sritis informatika apibrėžtis ↑Elektroninio pašto serverio ↑protokolas, reglamentuojantis ↑elektroninių laiškų laikymą ir tvarkymą ↑serverio kompiuteryje, neatsiunčiant jų į gavėjo kompiuterį. Naudojant IMAP protokolą… …   Enciklopedinis kompiuterijos žodynas

  • Internet Message Access Protocol Authentication — SMTP AUTH est une extension du protocole SMTP. C est un protocole de transfert des courriels sur Internet qui inclut une étape d authentification au cours de laquelle le client se connecte explicitement au serveur (ou relais) pour l envoi de… …   Wikipédia en Français

  • Internet message access protocol authentication — SMTP AUTH est une extension du protocole SMTP. C est un protocole de transfert des courriels sur Internet qui inclut une étape d authentification au cours de laquelle le client se connecte explicitement au serveur (ou relais) pour l envoi de… …   Wikipédia en Français

  • Internet Message Access Protocol — protocol used to transfer electronic mail on the Internet, IMAP …   English contemporary dictionary

  • Internet Message Access Protocol — …   Википедия

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”