LMTP(8) System Manager's Manual LMTP(8)
lmtp - Postfix local delivery via LMTP
lmtp [generic Postfix daemon options]
The LMTP client processes message delivery requests from the queue man-
ager. Each request specifies a queue file, a sender address, a domain
or host to deliver to, and recipient information. This program expects
to be run from the master(8) process manager.
The LMTP client updates the queue file and marks recipients as fin-
ished, or it informs the queue manager that delivery should be tried
again at a later time. Delivery problem reports are sent to the
bounce(8) or defer(8) daemon as appropriate.
The LMTP client connects to the destination specified in the message
delivery request. The destination, usually specified in the Postfix
transport(5) table, has the form:
Connect to the local UNIX-domain server that is bound to the
specified pathname. If the process runs chrooted, an absolute
pathname is interpreted relative to the changed root directory.
inet:host, inet:host:port (symbolic host)
inet:[addr], inet:[addr]:port (numeric host)
Connect to the specified IPv4 TCP port on the specified local or
remote host. If no port is specified, connect to the port
defined as lmtp in services(5). If no such service is found,
the lmtp_tcp_port configuration parameter (default value of 24)
will be used.
The LMTP client does not perform MX (mail exchanger) lookups
since those are defined only for mail delivery via SMTP.
If neither unix: nor inet: are specified, inet: is assumed.
The LMTP client is moderately security-sensitive. It talks to LMTP
servers and to DNS servers on the network. The LMTP client can be run
chrooted at fixed low privilege.
RFC 821 (SMTP protocol)
RFC 1651 (SMTP service extensions)
RFC 1652 (8bit-MIME transport)
RFC 1870 (Message Size Declaration)
RFC 2033 (LMTP protocol)
RFC 2554 (AUTH command)
RFC 2821 (SMTP protocol)
RFC 2920 (SMTP Pipelining)
Problems and transactions are logged to syslogd(8). Corrupted message
files are marked so that the queue manager can move them to the corrupt
queue for further inspection.
Depending on the setting of the notify_classes parameter, the postmas-
ter is notified of bounces, protocol problems, and of other trouble.
The following main.cf parameters are especially relevant to this pro-
gram. See the Postfix main.cf file for syntax details and for default
values. Use the postfix reload command after a configuration change.
Verbose logging level increment for hosts that match a pattern
in the debug_peer_list parameter.
List of domain or network patterns. When a remote host matches a
pattern, increase the verbose logging level by the amount speci-
fied in the debug_peer_level parameter.
Recipient of protocol/policy/resource/software error notices.
When this parameter includes the protocol class, send mail to
the postmaster with transcripts of LMTP sessions with protocol
Do not wait for the server response after sending QUIT.
The TCP port to be used when connecting to a LMTP server. Used
as backup if the lmtp service is not found in services(5).
Enable per-session authentication as per RFC 2554 (SASL). By
default, Postfix is built without SASL support.
Lookup tables with per-host or domain name:password entries. No
entry for a host means no attempt to authenticate.
Zero or more of the following.
Disallow authentication methods that use plaintext pass-
Disallow authentication methods that are vulnerable to
non-dictionary active attacks.
Disallow authentication methods that are vulnerable to
passive dictionary attack.
Disallow anonymous logins.
Should we cache the connection to the LMTP server? The effec-
tiveness of cached connections will be determined by the number
of LMTP servers in use, and the concurrency limit specified for
the LMTP client. Cached connections are closed under any of the
o The LMTP client idle time limit is reached. This limit is
specified with the Postfix max_idle configuration parame-
o A delivery request specifies a different destination than
the one currently cached.
o The per-process limit on the number of delivery requests
is reached. This limit is specified with the Postfix
max_use configuration parameter.
o Upon the onset of another delivery request, the LMTP
server associated with the current session does not
respond to the RSET command.
Limit the number of parallel deliveries to the same destination
via this mail delivery transport. transport is the name of the
service as specified in the master.cf file. The default limit
is taken from the default_destination_concurrency_limit parame-
Limit the number of recipients per message delivery via this
mail delivery transport. transport is the name of the service as
specified in the master.cf file. The default limit is taken
from the default_destination_recipient_limit parameter.
This parameter becomes significant if the LMTP client is used
for local delivery. Some LMTP servers can optimize delivery of
the same message to multiple recipients. The default limit for
local mail delivery is 1.
Setting this parameter to 0 will lead to an unbounded number of
recipients per delivery. However, this could be risky since it
may make the machine vulnerable to running out of resources if
messages are encountered with an inordinate number of recipi-
ents. Exercise care when setting this parameter.
The default time unit is seconds; an explicit time unit can be speci-
fied by appending a one-letter suffix to the value: s (seconds), m
(minutes), h (hours), d (days) or w (weeks).
Timeout for opening a connection to the LMTP server. If no con-
nection can be made within the deadline, the message is
Timeout for sending the LHLO command, and for receiving the
Timeout for sending the MAIL FROM command, and for receiving the
Timeout for sending the RCPT TO command, and for receiving the
Timeout for sending the DATA command, and for receiving the
Timeout for sending the message content.
Timeout for sending the "." command, and for receiving the
server response. When no response is received, a warning is
logged that the mail may be delivered multiple times.
Timeout for sending the RSET command, and for receiving the
Timeout for sending the QUIT command, and for receiving the
bounce(8) non-delivery status reports
local(8) local mail delivery
master(8) process manager
qmgr(8) queue manager
services(5) Internet services and aliases
spawn(8) auxiliary command spawner
syslogd(8) system logging
The Secure Mailer license must be distributed with this software.
IBM T.J. Watson Research
P.O. Box 704
Yorktown Heights, NY 10598, USA
Alterations for LMTP by:
Philip A. Prindeville
Additional work on LMTP by:
University of Texas at Dallas
P.O. Box 830688, MC34
Richardson, TX 75083, USA