Local Mail Transfer Protocol
Erscheinungsbild
Das Local Mail Transfer Protocol (LMTP) ist eine Ableitung des SMTP-Protokolls. Während SMTP für die Mail-Zustellung zwischen Servern entwickelt wurde und entsprechende Anforderungen an die Software stellt, ist LMTP eine Variante, die für die endgültige Zustellung gedacht ist.
Die Unterschiede zu SMTP
- Im Gegensatz zu SMTP benötigen LTMP-Server keine eigene Queue, falls die Zustellung nicht direkt erfolgen kann, weist der Server die Mail temporär ab.
- Um zu vermeiden, dass ein SMTP-Client mit einem LMTP-Server kommuniziert wird statt dem SMTP-typischen HELO bzw. EHLO Handshake LHLO benutzt.
- Wenn es in der aktuellen Session kein erfolgreiches RCPT-Kommando gab, muss der Server als Antwort auf DATA den Fehlercode 503 zurückliefern.
- Nach dem abschliessenden "." des DATA Kommandos muss der Server eine Statusmeldung pro angenommenem RCPT-Kommando senden. Dabei muss die Reihenfolge des Clients eingehalten werden.
Beispiel aus Sicht des Clients
< 220 server.tld LMTP server ready > LHLO client.tld < 250-server.tld < 250-PIPELINING < 250 SIZE > MAIL FROM:<user@example.tld> < 250 OK > RCPT TO:<wiki@wikipedia.org> < 250 OK > RCPT TO:<sales@wikipedia.org> < 550 No such user here > RCPT TO:<admin@wikipedia.org> < 250 OK > DATA < 354 Start mail input; end with <CRLF>.<CRLF> > Client sends message > . < 250 OK < 452 <admin@wikipedia.org> is temporarily over quota > QUIT < 221 server.tld closing connection
Software
LMTP wird in mehreren Softwarepaketen unterstützt, darunter