qmail-smtpd

Section: Maintenance Commands (8)
Index
 

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.
 

GREYLISTING

To enable greylisting the environment variable GREYIP is used. For the default values (loopback address 127.0.0.1, port 1999) use,


   GREYIP=":"

Alternatively a different IP address and/or port can be specified as in these examples,


   GREYIP="192.168.1.50"
   GREYIP=":12345"
   GREYIP="192.168.1.33:54321"

Exception: If the environment variable RELAYCLIENT is set (see details on this above), greylisting does not occur.

Greylisting may be explicitly disabled by setting GREYIP to an empty string,


   GREYIP=""

Clearly greydaemon must be available to respond to greylisting queries. If the GREYIP address/port is unavailable and the system detects this - perhaps via an ICMP 'unreachable' type response - the SMTP session aborts with a temporary error when the greylisting check occurs; the errno string is logged to help troubleshooting (typically greydaemon isn't running or is blocked by firewall rules). Otherwise if there is no response a timeout occurs, producing the same temporary error but without further logging detail.

 

SEE ALSO

tcp-env(1), tcp-environ(5), qmail-control(5), qmail-inject(8), qmail-newmrh(8), qmail-queue(8), qmail-remote(8), greydaemon(8)


 

Index

NAME
SYNOPSIS
DESCRIPTION
TRANSPARENCY
CONTROL FILES
GREYLISTING
SEE ALSO

This document was created by man2html.
Time: 17:32:04 GMT, August 27, 2009