qmail-smtpd(8)
NAME
qmail-smtpd - receive mail via SMTP
SYNOPSIS
qmail-smtpd [ authprogram [ authprogram-args ] ]
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-envi
ron(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.
When authprogram (usually /var/qmail/bin/checkpassword )
is given qmail-smtpd will also support SMTP LOGIN authen
tication method. The authprogram should return '0' if
authentication was successful.
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, mean ing every address at host. - badmailpatterns
- Unacceptable envelope sender addresses. qmail-smtpd
will reject every recipient address for a message if
the envelope sender address matches a set of patterns
listed in badmailpatterns. - Here is a sample badmailpatterns file:
*@earthlink.net
!fred@earthlink.net
[0-9][0-9][0-9][0-9][0-9][0-9]@[0-9][0-9][0-9][0-9].com
answerme@save* - This file stops all mail from Earthlink except from
fred@earthlink.net. It also stops all mail with
addresses like: 123456@1234.com and answerme@save
trees.com - 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 mor_ ercpthosts 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 com
monly 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.
- Exceptions: If the environment variable RELAYCLIENT
is set, qmail-smtpd will ignore rcpthosts, and will
append the value of RELAYCLIENT to each incoming
recipient address. If the environment variable
RELAYCLIENTEXTERNAL is set, qmail-smtpd will accept envelope sender address with a domain listed in
rcpthosts,andwillappendthevalueof RELAYCLIENTEXTERNAL to each incoming recipient address. If RELAYCLIENT is set, RELAYCLIENTEXTERNAL is not checked nor appended to 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 sup
plied; 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.