Postfix Configuration Files and descriptions

Postfix Configuration Files
The Ubuntu Postfix mail server uses three configuration files, all of which are installed in the
directory /etc/postfix:
dynamicmaps.cf:
Identifies additional capabilities to be loaded at run time based on
the type of operation that is being performed.
main.cf:
Contains configuration information for Postfix that is used during message
processing.
master.cf:
Contains parameters used when the Postfix master program runs other
programs from /usr/lib/postfix.
Postfix can also use standard mailer configuration files such as /etc/aliases (which allows
e‐mail addressed to one user to be automatically delivered to another), but this is not a Postfix-
specific configuration file.
The main.cf configuration file is the only Postfix configuration file that most users will ever
have to modify. As installed on an Ubuntu system, the main.cf configuration file for a system
following the Internet site model looks like the following (I’ve removed some irrelevant com‐
ments and white space):

 

In order, these configuration variables do the following:
myorigin:
An option for Debian and derivative distributions (such as Ubuntu) that
enables you to use the first line of the text file /etc/mailname as the name of the
mailer. This is actually set later in the default file.
smtpd_banner:
Sets the value of the banner that is displayed when an SMTP connec‐
tion is established. In this case, the banner is constructed by using the value of other
variables set in the configuration file.
biff:
Determines whether the local e‐mail notification service (biff) should be used
for each user with new mail each time Postfix processes the incoming mail queue. In
this case, it is disabled because biff notifications can cause a performance drain, and
are relevant only on the machine that houses the mail files. Users who use local mail
files can enable this for themselves.
append_dot_mydomain:
Determines whether Postfix should append a domain name
to mail sent to user@host. Nowadays, this is usually handled by the MUA, so this is
disabled.
delay_warning_time:
Uncommenting this parameter would specify the period of
time after which users would be notified if mail that they had sent had not yet been
delivered. After all, the remote site could be using Microsoft Exchange, and might be
down.
smtpd_tls_cert_file:
Identifies the full pathname of the file on this system that
holds the certificate used by this machine when sending messages using TLS (Transport
Layer Security).
smtpd_tls_key_file:
Identifies the full pathname of the file on this system that
holds the RSA private key for the Postfix SMTP client when sending messages using TLS
(Transport Layer Security).
smtpd_use_tls:
Determines whether this Postfix server should use TLS when a
remote SMTP server announces STARTTLS support. If the remote server does not
announce STARTTLS support, the message is sent in the clear.
1045
Part III: Ubuntu for System Administrators
smtpd_tls_session_cache_database:
Identifies the organization and location of
the SMTP server TLS session cache used by the tlsmgr daemon.
smtp_tls_session_cache_database:
Identifies the organization and location of the
SMTP client TLS session cache used by the tlsmgr daemon.
myhostname:
Identifies the actual Internet hostname of this system. By default, this
value is the value returned by gethostname().
alias_maps:
Identifies the organization and full pathname of the aliases file used for
local mail delivery.
alias_database:
Identifies the organization and full pathname of the aliases file used
for local mail delivery, and which is updated using the traditional newaliases com‐
mand. This is often the same file as that identified by the alias_maps parameter, but
need not be.
myorigin:
Identifies the name of the host or domain that local mail is assumed to come
from and is sent to. On Ubuntu systems, it is the name of a file containing whatever you
specified as the mail name when installing Postfix. This is suitable for single-domain
installations, but insufficient for Postfix mail servers that support multiple domains.
mydestination:
A list of domains for which mail is delivered via local mail delivery. I
specified ubuntu.vonhagen.org as the name of my host when I installed Postfix╃—╃in
most cases, mail.domain-name (i.e., mail.vonhagen.org, in my case) would be the
standard name to use for a mail server to help keep your sysadmins sane and make it
easy to locate/identify your domain’s mail server.
relayhost:
If outgoing mail must be sent to another mail server for delivery, this
parameter identifies that mail server; otherwise, it is empty.
mynetworks:
Identifies the networks or specific hosts from which this mail server will
send mail. This information is specified in both IPv4 and IPv6 formats. In this case, the
mail server will only send mail from the loopback network, which is a problem. This is
discussed in the following section, “Identifying Trusted Hosts and Domains.”
mailbox_size_limit:
Identifies the maximum size of any mailbox on the system. In
this case, 0 means that there is no limit.
recipient_delimiter:
Identifies the separator used internally by the Postfix server
between usernames and addresses.
inet_interfaces:
Identifies the network interfaces on which the machine can receive
mail. In this case, the Postfix server will listen on all network interfaces.
html_directory:
Identifies the location of HTML files that describe how to install and
configure a Postfix server and various Postfix features.
A complete list of Postfix configuration parameters and possible values is available in the files sec‐
tion of the online reference information for the postconf command (man 5 postconf) or online
at locations such as www.postfix.org/postconf.5.html.