POP, IMAP & Postfix: E-Mail-Protokolle erklärt

Eingeordnet in Informatik

Geschrieben am in Deutsch mit einer Größe von 5,4 KB

POP (Post Office Protocol)

  • Protokoll zum Empfangen von E-Mails, entwickelt für Clients und Benutzer ohne permanente Online-Verbindung.
  • Ressourcenschonend für den Server-Rechner.
  • Typischer Arbeitsablauf: Verbinden, Herunterladen und Trennen.
  • Einfaches Protokoll: 13 Befehle, die mit "+OK" oder "-ERR" antworten.
  • Standardverhalten: Herunterladen von Nachrichten und anschließendes Löschen vom Server.
  • Verwendet bekannte Ports: POP3 (110/tcp) und die sichere Version POP3S (995/tcp).

IMAP (Internet Message Access Protocol)

  • Bietet Methoden für den Zugriff auf E-Mails, die auf einem entfernten Server gespeichert sind, als wären sie lokal.
  • Auf gespeicherte Nachrichten kann von mehreren Orten aus zugegriffen werden, ohne sie zu verschieben.
  • Unterstützt das Erstellen, Umbenennen und/oder Löschen von Verzeichnissen (Ordnern).
  • Bietet Unterstützung für verschiedene Zugriffsarten: online, offline, getrennt.
  • Komplexeres Protokoll: 24 Befehle, 5 Antworttypen (OK, NO, BAD, PREAUTH, BYE).
  • Verwendet bekannte Ports: IMAP (143/tcp) und IMAPS (993/tcp).

Vorteile von POP

  • Einfaches Protokoll, leichte Implementierung.
  • Breite Client-Unterstützung.
  • Geringerer Ressourcenverbrauch auf dem Server.
  • Nachrichten werden lokal gespeichert (Offline-Lesen möglich).
  • Spart Speicherplatz auf dem Server, da Nachrichten nach dem Download gelöscht werden (Standard).
  • Ideal für den Zugriff von einem festen Computer.

Vorteile von IMAP

  • Verwaltung von E-Mail-Status (Flags: z. B. gelesen, beantwortet).
  • Zugriff auf und Verwaltung von mehreren Postfächern.
  • Gleichzeitiger Zugriff und Updates (auch für freigegebene Postfächer).
  • Optimiert für Online-Betrieb (auch bei langsamer Verbindung).
  • Nachrichten bleiben auf dem Server (Zugriff von überall möglich).
  • Nützlich für Zugriff von mehreren Geräten oder per Webmail.
  • Erfordert aktive Internetverbindung zum Lesen/Bearbeiten.
  • Regelmäßige Postfachpflege (Löschen/Archivieren) ist wichtig, um Speicherlimits nicht zu überschreiten.

Postfix Mail Server

  • Mail Transfer Agent (MTA) für UNIX-ähnliche Systeme.
  • Entwickelt als sicherer, schneller Ersatz für Sendmail (kompatibel).
  • Modulare Architektur und Design.
  • Einfache Verwaltung und Konfiguration.
  • Hohe Leistung und Sicherheit (entwickelt von Wietse Venema).
  • Jeder Prozess läuft mit minimalen Rechten und isoliert.
  • Nicht benötigte Prozesse können deaktiviert werden (kein Sicherheitsrisiko).
  • Interprozesskommunikation (IPC) hauptsächlich über Sockets.
  • Vermeidet Puffer fester Größe zur Prävention von Buffer-Overflow-Angriffen.
  • Kann in einer chroot-Umgebung laufen (z. B. /var/spool/postfix).
  • Resistent gegen DoS-Attacken (Denial of Service) durch Ressourcenkontrolle.
  • Unterstützt virtuelle Domains und mehrere Postfix-Instanzen.
  • Gut dokumentierter Open-Source-Code (Public Domain).

Programmtypen

  • Kernprogramme (Daemons): Laufen ständig im Hintergrund. Keine direkte Benutzerinteraktion (außer Konfiguration). Wichtigster Prozess: master.
  • Hilfsprogramme (Utilities): Können direkt über die Kommandozeile aufgerufen werden.

Warteschlangen (Queues)

  • Maildrop: Für lokal eingelieferte Mails; Formatierungsprüfung.
  • Incoming: Empfangene Mails von extern/Maildrop; warten auf Verarbeitung.
  • Active: Mails in aktiver Zustellung (begrenzte Größe).
  • Deferred: Temporär unzustellbare Mails (werden später erneut versucht).

Wichtige Prozesse

  • pickup: Holt Mails von Maildrop und übergibt sie an cleanup.
  • smtpd: Nimmt Mails via SMTP entgegen.
  • cleanup: Bereinigt Header, prüft Adressen und legt Mails in die Incoming Queue.
  • qmgr (Queue Manager): Verwaltet Queues (Incoming, Active, Deferred) und startet Zustellprozesse.
  • local: Zuständig für die Zustellung in lokale Postfächer.
  • smtp: Zuständig für die Zustellung an andere SMTP-Server.
  • pipe: Zuständig für die Zustellung an externe Programme.

Lookup-Tabellen

  • access: Zugriffsregeln (Annehmen/Ablehnen, von smtpd genutzt).
  • aliases: Alias-Adressen für lokale Benutzer (von local genutzt).
  • canonical: Umschreibung von Absender-/Empfängeradressen (von cleanup und smtp genutzt).
  • relocated: Benachrichtigung bei umgezogenen Benutzern (von qmgr genutzt).
  • transport: Spezifisches Routing für Domains/Adressen (von qmgr genutzt).
  • virtual: Mapping virtueller Mailbox-Adressen auf reale Benutzer oder Adressen (von cleanup genutzt).

Tabellenformate können sein: Hash, MySQL, PostgreSQL, LDAP etc.

Verwandte Einträge: