Provided by:
qmail_1.06-4_i386 
NAME
qmail-smtpd - receive mail via SMTP
SYNOPSIS
qmail-smtpd
DESCRIPTION
qmail-smtpd receives mail messages via the Simple Mail Transfer
Protocol (SMTP) and invokes qmail-queue to deposit them into the
outgoing queue. qmail-smtpd must be supplied several environment
variables; see tcp-environ(5).
qmail-smtpd is responsible for counting hops. It rejects any message
with 100 or more Received or Delivered-To header fields.
qmail-smtpd supports ESMTP, including the 8BITMIME and PIPELINING
options.
TRANSPARENCY
qmail-smtpd converts the SMTP newline convention into the UNIX newline
convention by converting CR LF into LF. It returns a temporary error
and drops the connection on bare LFs; see
http://pobox.com/~djb/docs/smtplf.html.
qmail-smtpd accepts messages that contain long lines or non-ASCII
characters, even though such messages violate the SMTP protocol.
CONTROL FILES
badmailfrom
Unacceptable envelope sender addresses. qmail-smtpd will reject
every recipient address for a message if the envelope sender
address is listed in badmailfrom. A line in badmailfrom may be of
the form @host, meaning every address at host.
databytes
Maximum number of bytes allowed in a message, or 0 for no limit.
Default: 0. If a message exceeds this limit, qmail-smtpd returns
a permanent error code to the client; in contrast, if the disk is
full or qmail-smtpd hits a resource limit, qmail-smtpd returns a
temporary error code.
databytes counts bytes as stored on disk, not as transmitted
through the network. It does not count the qmail-smtpd Received
line, the qmail-queue Received line, or the envelope.
If the environment variable DATABYTES is set, it overrides
databytes.
localiphost
Replacement host name for local IP addresses. Default: me, if
that is supplied. qmail-smtpd is responsible for recognizing
dotted-decimal addresses for the current host. When it sees a
recipient address of the form box@[d.d.d.d], where d.d.d.d is a
local IP address, it replaces [d.d.d.d] with localiphost. This is
done before rcpthosts.
morercpthosts
Extra allowed RCPT domains. If rcpthosts and morercpthosts both
exist, morercpthosts is effectively appended to rcpthosts.
You must run qmail-newmrh whenever morercpthosts changes.
Rule of thumb for large sites: Put your 50 most commonly used
domains into rcpthosts, and the rest into morercpthosts.
rcpthosts
Allowed RCPT domains. If rcpthosts is supplied, qmail-smtpd will
reject any envelope recipient address with a domain not listed in
rcpthosts.
Exception: If the environment variable RELAYCLIENT is set, qmail-
smtpd will ignore rcpthosts, and will append the value of
RELAYCLIENT to each incoming recipient address.
rcpthosts may include wildcards:
heaven.af.mil
.heaven.af.mil
Envelope recipient addresses without @ signs are always allowed
through.
smtpgreeting
SMTP greeting message. Default: me, if that is supplied;
otherwise qmail-smtpd will refuse to run. The first word of
smtpgreeting should be the current host's name.
timeoutsmtpd
Number of seconds qmail-smtpd will wait for each new buffer of
data from the remote SMTP client. Default: 1200.
RECIPIENT VERIFICATION
Recipient verification is enabled with the VERIFY environment variable.
This can be used to specify per-recipient rejection of invalid
recipient addresses (immediate verification causing a permanent 550
error response to the RCPT command), or deferred rejection at DATA time
(554 response) of the whole session if any recipient addresses don't
exist.
To verify an address, qmail-smtpd uses a separate qmail-verify UDP
server. By default this will be on the loopback address 127.0.0.1, port
11113. Enable verification like this,
VERIFY=":"
VERIFY="DEFER"
(for immediate, deferred verification respectively). A different IP
address and/or port can be specified for qmail-verify as in these
examples,
VERIFY="192.168.1.1"
VERIFY=":10101"
VERIFY="DEFER,:10101"
VERIFY="DEFER,192.168.1.1:10101"
Recipient verification may be explicitly disabled by setting VERIFY to
an empty string,
VERIFY=""
Addresses with domains appearing in control/rcpthosts but not in
control/locals or control/virtualdomains will be considered valid,
reflecting qmail's standard behaviour.
Note that if the environment variable RELAYCLIENT is set, no checking
is carried out.
qmail-verify needs to be running to respond to recipient verification
queries. If no qmail-verify response is received a temporary 451 error
response is given to the remote system and the session terminated.
SEE ALSO
tcp-env(1), tcp-environ(5), qmail-control(5), qmail-inject(8), qmail-
newmrh(8), qmail-queue(8), qmail-remote(8), qmail-verify(8)
qmail-smtpd(8)