1.4 Basic Parts of sendmail
The sendmail program is actually composed of
several parts, including programs, files, directories, and the
services it provides. Its foundation is a configuration
file that defines the location and behavior of these other
parts and contains rules for rewriting addresses. A queue
directory holds mail until it can be delivered. An
aliases file allows alternative names for users
and the creation of mailing lists. Database files can handle tasks
ranging from spam rejection to virtual hosting.
1.4.1 The Configuration File
The configuration file
contains all the information sendmail needs to
do its job. Within it you provide information, such as file
locations, permissions, and modes of operation.
Rewriting rules and rule sets also appear in the configuration file.
They transform a mail address into another form that might be
required for delivery. They are perhaps the single most confusing
aspect of the configuration file. Because the configuration file is
designed to be fast for sendmail to read and
parse, rules can look cryptic to humans:
R $+ @ $+ $: $1 < @ $2 > focus on domain
R $+ < $+ @ $+ > $1 $2 < @ $3 > move gaze right
But what appears to be complex is really just succinct. The
R at the beginning of each line, for example,
labels a rewrite rule. And the
$+ expressions mean to match one or more parts of
an address. With experience, such expressions (and indeed the
configuration file as a whole) soon become meaningful.
Fortunately you don't need to learn the details of
rule sets to configure and install sendmail. The
mc form of configuration insulates you from such
details, and allows you to perform very complex tasks easily.
1.4.2 The Queue
Not
all mail messages can be delivered immediately. When delivery is
delayed, sendmail must be able to save a message
for later transmission. The sendmail queue
comprises one or more directories that hold mail until it can be
delivered. A mail message can be queued:
When the destination machine is unreachable or down. The mail message
will be delivered when the destination machine returns to service.
When a mail message has many recipients. Some mail messages might be
successfully delivered but others might not. Those that have
transient failures are queued for later delivery.
When a mail message is expensive. Expensive mail (such as mail sent
over a long-distance phone line) can be queued for delivery when
rates are lower.
When (beginning with V8.11) authentication or stream encryption
suffers a temporary failure to start, the message is queued for a
later try.
Always because safety is a primary concern. The
sendmail program is configured to queue all mail
messages by default, thus minimizing the risk of loss should the
machine crash.
1.4.3 Aliases and Mailing Lists
Aliases
allow mail that is sent to one address to be redirected to another
address. They also allow mail to be appended to files or piped
through programs, and form the basis of mailing lists. The heart of
aliasing is the aliases(5) file (often stored in
database format for swifter lookups). Aliasing is also available to
the individual user via a file called .forward
in the user's home directory.
|